summaryrefslogtreecommitdiff
path: root/gst/videocrop
diff options
context:
space:
mode:
authorMarkus Ebner <info@ebner-markus.de>2021-04-07 17:52:34 +0200
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>2021-04-10 11:26:59 +0000
commit3ba8abb0560277ec0a78cc180162e1ce8553a0c1 (patch)
treeb2cc48b4e7e22dae65753866c6558362bd22fd33 /gst/videocrop
parentc8827acb9326b879eca8c081da366337193f1235 (diff)
downloadgstreamer-plugins-good-3ba8abb0560277ec0a78cc180162e1ce8553a0c1.tar.gz
videocrop: Move supported format list into private header
- Moved declaration of supported pixel formats to private header, which can be shared between videocrop and aspectvideocrop Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/515>
Diffstat (limited to 'gst/videocrop')
-rw-r--r--gst/videocrop/gstaspectratiocrop.c10
-rw-r--r--gst/videocrop/gstvideocrop-private.h20
-rw-r--r--gst/videocrop/gstvideocrop.c13
3 files changed, 26 insertions, 17 deletions
diff --git a/gst/videocrop/gstaspectratiocrop.c b/gst/videocrop/gstaspectratiocrop.c
index 999dcd287..9df2e5e24 100644
--- a/gst/videocrop/gstaspectratiocrop.c
+++ b/gst/videocrop/gstaspectratiocrop.c
@@ -44,6 +44,8 @@
#include "gstvideocrop.h"
#include "gstvideocropelements.h"
#include "gstaspectratiocrop.h"
+/* include private header which contains the supported formats */
+#include "gstvideocrop-private.h"
#include "gst/glib-compat-private.h"
@@ -56,12 +58,8 @@ enum
PROP_ASPECT_RATIO_CROP,
};
-/* we support the same caps as videocrop (sync changes) */
-#define ASPECT_RATIO_CROP_CAPS \
- GST_VIDEO_CAPS_MAKE ("{ RGBx, xRGB, BGRx, xBGR, " \
- "RGBA, ARGB, BGRA, ABGR, RGB, BGR, AYUV, YUY2, " \
- "YVYU, UYVY, I420, YV12, RGB16, RGB15, GRAY8, " \
- "NV12, NV21, GRAY16_LE, GRAY16_BE }")
+/* we support the same caps as videocrop */
+#define ASPECT_RATIO_CROP_CAPS VIDEO_CROP_CAPS
static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,
diff --git a/gst/videocrop/gstvideocrop-private.h b/gst/videocrop/gstvideocrop-private.h
new file mode 100644
index 000000000..7cae3b1ec
--- /dev/null
+++ b/gst/videocrop/gstvideocrop-private.h
@@ -0,0 +1,20 @@
+#ifndef __GST_VIDEO_CROP_PRIVATE_H__
+#define __GST_VIDEO_CROP_PRIVATE_H__
+
+/* aspectvideocrop and videocrop support the same pixel formats, since
+ * aspectvideocrop uses videocrop internally.
+ * The definitions of supported pixe formats can thus be shared
+ * between both, avoiding the need of manual synchronization
+ */
+
+#define VIDEO_CROP_CAPS \
+ GST_VIDEO_CAPS_MAKE ("{ RGBx, xRGB, BGRx, xBGR, " \
+ "RGBA, ARGB, BGRA, ABGR, RGB, BGR, AYUV, YUY2, Y444, " \
+ "Y42B, Y41B, YVYU, UYVY, I420, YV12, RGB16, RGB15, " \
+ "GRAY8, NV12, NV21, GRAY16_LE, GRAY16_BE }") "; " \
+ "video/x-raw(ANY), " \
+ "width = " GST_VIDEO_SIZE_RANGE ", " \
+ "height = " GST_VIDEO_SIZE_RANGE ", " \
+ "framerate = " GST_VIDEO_FPS_RANGE
+
+#endif /* __GST_VIDEO_CROP_PRIVATE_H__ */
diff --git a/gst/videocrop/gstvideocrop.c b/gst/videocrop/gstvideocrop.c
index 4f3797042..c9223e83b 100644
--- a/gst/videocrop/gstvideocrop.c
+++ b/gst/videocrop/gstvideocrop.c
@@ -63,6 +63,8 @@
#include "gstvideocrop.h"
#include "gstvideocropelements.h"
#include "gstaspectratiocrop.h"
+/* include private header which contains the supported formats */
+#include "gstvideocrop-private.h"
#include <string.h>
@@ -76,17 +78,6 @@ enum
PROP_BOTTOM
};
-/* we support the same caps as aspectratiocrop (sync changes) */
-#define VIDEO_CROP_CAPS \
- GST_VIDEO_CAPS_MAKE ("{ RGBx, xRGB, BGRx, xBGR, " \
- "RGBA, ARGB, BGRA, ABGR, RGB, BGR, AYUV, YUY2, Y444, " \
- "Y42B, Y41B, YVYU, UYVY, I420, YV12, RGB16, RGB15, " \
- "GRAY8, NV12, NV21, GRAY16_LE, GRAY16_BE }") "; " \
- "video/x-raw(ANY), " \
- "width = " GST_VIDEO_SIZE_RANGE ", " \
- "height = " GST_VIDEO_SIZE_RANGE ", " \
- "framerate = " GST_VIDEO_FPS_RANGE
-
static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,
GST_PAD_ALWAYS,