2022-01-04 14:20:41 +00:00
|
|
|
/* GStreamer Wayland Library
|
2014-02-13 09:02:54 +00:00
|
|
|
*
|
|
|
|
* Copyright (C) 2011 Intel Corporation
|
|
|
|
* Copyright (C) 2011 Sreerenj Balachandran <sreerenj.balachandran@intel.com>
|
|
|
|
* Copyright (C) 2012 Wim Taymans <wim.taymans@gmail.com>
|
|
|
|
* Copyright (C) 2014 Collabora Ltd.
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Library General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Library General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Library General Public
|
|
|
|
* License along with this library; if not, write to the Free
|
|
|
|
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
|
|
* Boston, MA 02110-1301 USA.
|
|
|
|
*/
|
|
|
|
|
2022-01-04 14:20:41 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <gst/wayland/wayland.h>
|
2014-02-13 09:02:54 +00:00
|
|
|
|
|
|
|
#include <gst/video/video.h>
|
|
|
|
|
2014-05-22 07:10:51 +00:00
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
2023-09-06 13:26:48 +00:00
|
|
|
/**
|
|
|
|
* GST_WL_VIDEO_FORMATS:
|
|
|
|
*
|
|
|
|
* A list of supported video formats for use in cap templates.
|
|
|
|
*
|
|
|
|
* Since: 1.24
|
|
|
|
*/
|
2023-09-08 19:03:51 +00:00
|
|
|
#if G_BYTE_ORDER == G_BIG_ENDIAN
|
2024-09-24 17:55:39 +00:00
|
|
|
#define GST_WL_VIDEO_FORMATS "{ AYUV, RGBA, ARGB, BGRA, ABGR, P010_10LE, " \
|
|
|
|
"NV12_10LE40, v308, RGBx, xRGB, BGRx, xBGR, RGB, BGR, Y42B, NV16, NV61, " \
|
|
|
|
"YUY2, YVYU, UYVY, I420, YV12, NV12, NV21, Y41B, YUV9, YVU9, BGR16, RGB16 }"
|
2023-09-08 19:03:51 +00:00
|
|
|
#elif G_BYTE_ORDER == G_LITTLE_ENDIAN
|
2024-09-24 17:55:39 +00:00
|
|
|
#define GST_WL_VIDEO_FORMATS "{ AYUV, RGBA, ARGB, BGRA, ABGR, P010_10LE, " \
|
|
|
|
"NV12_10LE40, v308, RGBx, xRGB, BGRx, xBGR, RGB, BGR, Y42B, NV16, NV61, " \
|
|
|
|
"YUY2, YVYU, UYVY, I420, YV12, NV12, NV21, Y41B, YUV9, YVU9, BGR16, RGB16 }"
|
2023-09-08 19:03:51 +00:00
|
|
|
#endif
|
2023-09-06 13:26:48 +00:00
|
|
|
|
2022-01-04 14:20:41 +00:00
|
|
|
GST_WL_API
|
|
|
|
void gst_wl_videoformat_init_once (void);
|
|
|
|
|
|
|
|
GST_WL_API
|
2014-06-20 13:24:36 +00:00
|
|
|
enum wl_shm_format gst_video_format_to_wl_shm_format (GstVideoFormat format);
|
2022-01-04 14:20:41 +00:00
|
|
|
|
|
|
|
GST_WL_API
|
2023-02-17 14:42:42 +00:00
|
|
|
guint32 gst_video_format_to_wl_dmabuf_format (GstVideoFormat format);
|
2022-01-04 14:20:41 +00:00
|
|
|
|
|
|
|
GST_WL_API
|
2014-06-20 13:24:36 +00:00
|
|
|
GstVideoFormat gst_wl_shm_format_to_video_format (enum wl_shm_format wl_format);
|
2022-01-04 14:20:41 +00:00
|
|
|
|
|
|
|
GST_WL_API
|
2016-09-22 09:10:47 +00:00
|
|
|
GstVideoFormat gst_wl_dmabuf_format_to_video_format (guint wl_format);
|
2022-01-04 14:20:41 +00:00
|
|
|
|
|
|
|
GST_WL_API
|
2014-06-20 13:24:36 +00:00
|
|
|
const gchar *gst_wl_shm_format_to_string (enum wl_shm_format wl_format);
|
2022-01-04 14:20:41 +00:00
|
|
|
|
|
|
|
GST_WL_API
|
2023-07-25 03:37:02 +00:00
|
|
|
gchar * gst_wl_dmabuf_format_to_string (guint wl_format, guint64 modifier);
|
2014-02-13 09:02:54 +00:00
|
|
|
|
2014-05-22 07:10:51 +00:00
|
|
|
G_END_DECLS
|