v4l2codecs: Don't needlessly expose decoder types
We have explicit register functions and have no use for these types in other components. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5555>
This commit is contained in:
parent
76b36f1493
commit
d13a414ddc
@ -23,6 +23,9 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstav1decoder.h>
|
||||
|
||||
#include "gstv4l2codecallocator.h"
|
||||
#include "gstv4l2codecav1dec.h"
|
||||
#include "gstv4l2codecpool.h"
|
||||
@ -38,6 +41,11 @@
|
||||
GST_DEBUG_CATEGORY_STATIC (v4l2_av1dec_debug);
|
||||
#define GST_CAT_DEFAULT v4l2_av1dec_debug
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_AV1_DEC \
|
||||
(gst_v4l2_codec_av1_dec_get_type())
|
||||
#define GST_V4L2_CODEC_AV1_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_AV1_DEC,GstV4l2CodecAV1Dec))
|
||||
|
||||
/* Used to mark picture that have been outputted */
|
||||
#define FLAG_PICTURE_HOLDS_BUFFER GST_MINI_OBJECT_FLAG_LAST
|
||||
|
||||
@ -62,6 +70,15 @@ GST_STATIC_PAD_TEMPLATE (GST_VIDEO_DECODER_SINK_NAME,
|
||||
static GstStaticCaps static_src_caps = GST_STATIC_CAPS (SRC_CAPS);
|
||||
static GstStaticCaps static_src_caps_no_drm = GST_STATIC_CAPS (SRC_CAPS_NO_DRM);
|
||||
|
||||
typedef struct _GstV4l2CodecAV1Dec GstV4l2CodecAV1Dec;
|
||||
typedef struct _GstV4l2CodecAV1DecClass GstV4l2CodecAV1DecClass;
|
||||
|
||||
struct _GstV4l2CodecAV1DecClass
|
||||
{
|
||||
GstAV1DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
struct _GstV4l2CodecAV1Dec
|
||||
{
|
||||
GstAV1Decoder parent;
|
||||
@ -100,6 +117,8 @@ struct _GstV4l2CodecAV1Dec
|
||||
GstMapInfo bitstream_map;
|
||||
};
|
||||
|
||||
static GType gst_v4l2_codec_av1_dec_get_type (void);
|
||||
|
||||
G_DEFINE_ABSTRACT_TYPE (GstV4l2CodecAV1Dec, gst_v4l2_codec_av1_dec,
|
||||
GST_TYPE_AV1_DECODER);
|
||||
|
||||
|
@ -19,30 +19,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstav1decoder.h>
|
||||
|
||||
#include "gstv4l2decoder.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_AV1_DEC (gst_v4l2_codec_av1_dec_get_type())
|
||||
#define GST_V4L2_CODEC_AV1_DEC(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_AV1_DEC,GstV4l2CodecAV1Dec))
|
||||
#define GST_V4L2_CODEC_AV1_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_V4L2_CODEC_AV1_DEC,GstV4l2CodecAV1DecClass))
|
||||
#define GST_V4L2_CODEC_AV1_DEC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_V4L2_CODEC_AV1_DEC, GstV4l2CodecAV1DecClass))
|
||||
#define GST_IS_V4L2_CODEC_AV1_DEC(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_V4L2_CODEC_AV1_DEC))
|
||||
#define GST_IS_V4L2_CODEC_AV1_DEC_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_V4L2_CODEC_AV1_DEC))
|
||||
|
||||
typedef struct _GstV4l2CodecAV1Dec GstV4l2CodecAV1Dec;
|
||||
typedef struct _GstV4l2CodecAV1DecClass GstV4l2CodecAV1DecClass;
|
||||
|
||||
struct _GstV4l2CodecAV1DecClass
|
||||
{
|
||||
GstAV1DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
GType gst_v4l2_codec_av1_dec_get_type (void);
|
||||
void gst_v4l2_codec_av1_dec_register (GstPlugin * plugin,
|
||||
GstV4l2Decoder * decoder,
|
||||
GstV4l2CodecDevice * device,
|
||||
|
@ -21,6 +21,9 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gsth264decoder.h>
|
||||
|
||||
#include "gstv4l2codecallocator.h"
|
||||
#include "gstv4l2codech264dec.h"
|
||||
#include "gstv4l2codecpool.h"
|
||||
@ -36,6 +39,11 @@
|
||||
GST_DEBUG_CATEGORY_STATIC (v4l2_h264dec_debug);
|
||||
#define GST_CAT_DEFAULT v4l2_h264dec_debug
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_H264_DEC \
|
||||
(gst_v4l2_codec_h264_dec_get_type())
|
||||
#define GST_V4L2_CODEC_H264_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_H264_DEC,GstV4l2CodecH264Dec))
|
||||
|
||||
enum
|
||||
{
|
||||
PROP_0,
|
||||
@ -60,6 +68,15 @@ GST_STATIC_PAD_TEMPLATE (GST_VIDEO_DECODER_SINK_NAME,
|
||||
static GstStaticCaps static_src_caps = GST_STATIC_CAPS (SRC_CAPS);
|
||||
static GstStaticCaps static_src_caps_no_drm = GST_STATIC_CAPS (SRC_CAPS_NO_DRM);
|
||||
|
||||
typedef struct _GstV4l2CodecH264Dec GstV4l2CodecH264Dec;
|
||||
typedef struct _GstV4l2CodecH264DecClass GstV4l2CodecH264DecClass;
|
||||
|
||||
struct _GstV4l2CodecH264DecClass
|
||||
{
|
||||
GstH264DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
struct _GstV4l2CodecH264Dec
|
||||
{
|
||||
GstH264Decoder parent;
|
||||
@ -100,6 +117,8 @@ struct _GstV4l2CodecH264Dec
|
||||
GstMapInfo bitstream_map;
|
||||
};
|
||||
|
||||
static GType gst_v4l2_codec_h264_dec_get_type (void);
|
||||
|
||||
G_DEFINE_ABSTRACT_TYPE (GstV4l2CodecH264Dec, gst_v4l2_codec_h264_dec,
|
||||
GST_TYPE_H264_DECODER);
|
||||
|
||||
|
@ -19,30 +19,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gsth264decoder.h>
|
||||
|
||||
#include "gstv4l2decoder.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_H264_DEC (gst_v4l2_codec_h264_dec_get_type())
|
||||
#define GST_V4L2_CODEC_H264_DEC(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_H264_DEC,GstV4l2CodecH264Dec))
|
||||
#define GST_V4L2_CODEC_H264_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_V4L2_CODEC_H264_DEC,GstV4l2CodecH264DecClass))
|
||||
#define GST_V4L2_CODEC_H264_DEC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_V4L2_CODEC_H264_DEC, GstV4l2CodecH264DecClass))
|
||||
#define GST_IS_V4L2_CODEC_H264_DEC(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_V4L2_CODEC_H264_DEC))
|
||||
#define GST_IS_V4L2_CODEC_H264_DEC_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_V4L2_CODEC_H264_DEC))
|
||||
|
||||
typedef struct _GstV4l2CodecH264Dec GstV4l2CodecH264Dec;
|
||||
typedef struct _GstV4l2CodecH264DecClass GstV4l2CodecH264DecClass;
|
||||
|
||||
struct _GstV4l2CodecH264DecClass
|
||||
{
|
||||
GstH264DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
GType gst_v4l2_codec_h264_dec_get_type (void);
|
||||
void gst_v4l2_codec_h264_dec_register (GstPlugin * plugin,
|
||||
GstV4l2Decoder * decoder,
|
||||
GstV4l2CodecDevice * device,
|
||||
|
@ -22,6 +22,9 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gsth265decoder.h>
|
||||
|
||||
#include "gstv4l2codecallocator.h"
|
||||
#include "gstv4l2codech265dec.h"
|
||||
#include "gstv4l2codecpool.h"
|
||||
@ -37,6 +40,11 @@
|
||||
GST_DEBUG_CATEGORY_STATIC (v4l2_h265dec_debug);
|
||||
#define GST_CAT_DEFAULT v4l2_h265dec_debug
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_H265_DEC \
|
||||
(gst_v4l2_codec_h265_dec_get_type())
|
||||
#define GST_V4L2_CODEC_H265_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_H265_DEC,GstV4l2CodecH265Dec))
|
||||
|
||||
enum
|
||||
{
|
||||
PROP_0,
|
||||
@ -61,6 +69,15 @@ GST_STATIC_PAD_TEMPLATE (GST_VIDEO_DECODER_SINK_NAME,
|
||||
static GstStaticCaps static_src_caps = GST_STATIC_CAPS (SRC_CAPS);
|
||||
static GstStaticCaps static_src_caps_no_drm = GST_STATIC_CAPS (SRC_CAPS_NO_DRM);
|
||||
|
||||
typedef struct _GstV4l2CodecH265Dec GstV4l2CodecH265Dec;
|
||||
typedef struct _GstV4l2CodecH265DecClass GstV4l2CodecH265DecClass;
|
||||
|
||||
struct _GstV4l2CodecH265DecClass
|
||||
{
|
||||
GstH265DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
struct _GstV4l2CodecH265Dec
|
||||
{
|
||||
GstH265Decoder parent;
|
||||
@ -108,6 +125,8 @@ struct _GstV4l2CodecH265Dec
|
||||
gint crop_rect_x, crop_rect_y;
|
||||
};
|
||||
|
||||
static GType gst_v4l2_codec_h265_dec_get_type (void);
|
||||
|
||||
G_DEFINE_ABSTRACT_TYPE (GstV4l2CodecH265Dec, gst_v4l2_codec_h265_dec,
|
||||
GST_TYPE_H265_DECODER);
|
||||
|
||||
|
@ -20,30 +20,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gsth265decoder.h>
|
||||
|
||||
#include "gstv4l2decoder.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_H265_DEC (gst_v4l2_codec_h265_dec_get_type())
|
||||
#define GST_V4L2_CODEC_H265_DEC(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_H265_DEC,GstV4l2CodecH265Dec))
|
||||
#define GST_V4L2_CODEC_H265_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_V4L2_CODEC_H265_DEC,GstV4l2CodecH265DecClass))
|
||||
#define GST_V4L2_CODEC_H265_DEC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_V4L2_CODEC_H265_DEC, GstV4l2CodecH265DecClass))
|
||||
#define GST_IS_V4L2_CODEC_H265_DEC(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_V4L2_CODEC_H265_DEC))
|
||||
#define GST_IS_V4L2_CODEC_H265_DEC_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_V4L2_CODEC_H265_DEC))
|
||||
|
||||
typedef struct _GstV4l2CodecH265Dec GstV4l2CodecH265Dec;
|
||||
typedef struct _GstV4l2CodecH265DecClass GstV4l2CodecH265DecClass;
|
||||
|
||||
struct _GstV4l2CodecH265DecClass
|
||||
{
|
||||
GstH265DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
GType gst_v4l2_codec_h265_dec_get_type (void);
|
||||
void gst_v4l2_codec_h265_dec_register (GstPlugin * plugin,
|
||||
GstV4l2Decoder * decoder,
|
||||
GstV4l2CodecDevice * device,
|
||||
|
@ -22,6 +22,9 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstmpeg2decoder.h>
|
||||
|
||||
#include "gstv4l2codecallocator.h"
|
||||
#include "gstv4l2codecmpeg2dec.h"
|
||||
#include "gstv4l2codecpool.h"
|
||||
@ -40,6 +43,11 @@
|
||||
GST_DEBUG_CATEGORY_STATIC (v4l2_mpeg2dec_debug);
|
||||
#define GST_CAT_DEFAULT v4l2_mpeg2dec_debug
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_MPEG2_DEC \
|
||||
(gst_v4l2_codec_mpeg2_dec_get_type())
|
||||
#define GST_V4L2_CODEC_MPEG2_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_MPEG2_DEC,GstV4l2CodecMpeg2Dec))
|
||||
|
||||
enum
|
||||
{
|
||||
PROP_0,
|
||||
@ -63,6 +71,16 @@ GST_STATIC_PAD_TEMPLATE (GST_VIDEO_DECODER_SINK_NAME,
|
||||
static GstStaticCaps static_src_caps = GST_STATIC_CAPS (SRC_CAPS);
|
||||
static GstStaticCaps static_src_caps_no_drm = GST_STATIC_CAPS (SRC_CAPS_NO_DRM);
|
||||
|
||||
typedef struct _GstV4l2CodecMpeg2Dec GstV4l2CodecMpeg2Dec;
|
||||
typedef struct _GstV4l2CodecMpeg2DecClass GstV4l2CodecMpeg2DecClass;
|
||||
|
||||
struct _GstV4l2CodecMpeg2DecClass
|
||||
{
|
||||
GstMpeg2DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
|
||||
struct _GstV4l2CodecMpeg2Dec
|
||||
{
|
||||
GstMpeg2Decoder parent;
|
||||
@ -98,6 +116,8 @@ struct _GstV4l2CodecMpeg2Dec
|
||||
gboolean copy_frames;
|
||||
};
|
||||
|
||||
static GType gst_v4l2_codec_mpeg2_dec_get_type (void);
|
||||
|
||||
G_DEFINE_ABSTRACT_TYPE (GstV4l2CodecMpeg2Dec, gst_v4l2_codec_mpeg2_dec,
|
||||
GST_TYPE_MPEG2_DECODER);
|
||||
|
||||
|
@ -19,30 +19,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstmpeg2decoder.h>
|
||||
|
||||
#include "gstv4l2decoder.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_MPEG2_DEC (gst_v4l2_codec_mpeg2_dec_get_type())
|
||||
#define GST_V4L2_CODEC_MPEG2_DEC(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_MPEG2_DEC,GstV4l2CodecMpeg2Dec))
|
||||
#define GST_V4L2_CODEC_MPEG2_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_V4L2_CODEC_MPEG2_DEC,GstV4l2CodecMpeg2DecClass))
|
||||
#define GST_V4L2_CODEC_MPEG2_DEC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_V4L2_CODEC_MPEG2_DEC, GstV4l2CodecMpeg2DecClass))
|
||||
#define GST_IS_V4L2_CODEC_MPEG2_DEC(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_V4L2_CODEC_MPEG2_DEC))
|
||||
#define GST_IS_V4L2_CODEC_MPEG2_DEC_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_V4L2_CODEC_MPEG2_DEC))
|
||||
|
||||
typedef struct _GstV4l2CodecMpeg2Dec GstV4l2CodecMpeg2Dec;
|
||||
typedef struct _GstV4l2CodecMpeg2DecClass GstV4l2CodecMpeg2DecClass;
|
||||
|
||||
struct _GstV4l2CodecMpeg2DecClass
|
||||
{
|
||||
GstMpeg2DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
GType gst_v4l2_codec_mpeg2_dec_get_type (void);
|
||||
void gst_v4l2_codec_mpeg2_dec_register (GstPlugin * plugin,
|
||||
GstV4l2Decoder * decoder,
|
||||
GstV4l2CodecDevice * device,
|
||||
|
@ -21,6 +21,9 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstvp8decoder.h>
|
||||
|
||||
#include "gstv4l2codecallocator.h"
|
||||
#include "gstv4l2codecalphadecodebin.h"
|
||||
#include "gstv4l2codecpool.h"
|
||||
@ -36,6 +39,11 @@
|
||||
GST_DEBUG_CATEGORY_STATIC (v4l2_vp8dec_debug);
|
||||
#define GST_CAT_DEFAULT v4l2_vp8dec_debug
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_VP8_DEC \
|
||||
(gst_v4l2_codec_vp8_dec_get_type())
|
||||
#define GST_V4L2_CODEC_VP8_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_VP8_DEC,GstV4l2CodecVp8Dec))
|
||||
|
||||
enum
|
||||
{
|
||||
PROP_0,
|
||||
@ -64,6 +72,15 @@ GST_STATIC_PAD_TEMPLATE (GST_VIDEO_DECODER_SINK_NAME,
|
||||
static GstStaticCaps static_src_caps = GST_STATIC_CAPS (SRC_CAPS);
|
||||
static GstStaticCaps static_src_caps_no_drm = GST_STATIC_CAPS (SRC_CAPS_NO_DRM);
|
||||
|
||||
typedef struct _GstV4l2CodecVp8Dec GstV4l2CodecVp8Dec;
|
||||
typedef struct _GstV4l2CodecVp8DecClass GstV4l2CodecVp8DecClass;
|
||||
|
||||
struct _GstV4l2CodecVp8DecClass
|
||||
{
|
||||
GstVp8DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
struct _GstV4l2CodecVp8Dec
|
||||
{
|
||||
GstVp8Decoder parent;
|
||||
@ -87,6 +104,8 @@ struct _GstV4l2CodecVp8Dec
|
||||
GstMapInfo bitstream_map;
|
||||
};
|
||||
|
||||
static GType gst_v4l2_codec_vp8_dec_get_type (void);
|
||||
|
||||
G_DEFINE_ABSTRACT_TYPE (GstV4l2CodecVp8Dec, gst_v4l2_codec_vp8_dec,
|
||||
GST_TYPE_VP8_DECODER);
|
||||
|
||||
|
@ -19,30 +19,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstvp8decoder.h>
|
||||
|
||||
#include "gstv4l2decoder.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_VP8_DEC (gst_v4l2_codec_vp8_dec_get_type())
|
||||
#define GST_V4L2_CODEC_VP8_DEC(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_VP8_DEC,GstV4l2CodecVp8Dec))
|
||||
#define GST_V4L2_CODEC_VP8_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_V4L2_CODEC_VP8_DEC,GstV4l2CodecVp8DecClass))
|
||||
#define GST_V4L2_CODEC_VP8_DEC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_V4L2_CODEC_VP8_DEC, GstV4l2CodecVp8DecClass))
|
||||
#define GST_IS_V4L2_CODEC_VP8_DEC(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_V4L2_CODEC_VP8_DEC))
|
||||
#define GST_IS_V4L2_CODEC_VP8_DEC_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_V4L2_CODEC_VP8_DEC))
|
||||
|
||||
typedef struct _GstV4l2CodecVp8Dec GstV4l2CodecVp8Dec;
|
||||
typedef struct _GstV4l2CodecVp8DecClass GstV4l2CodecVp8DecClass;
|
||||
|
||||
struct _GstV4l2CodecVp8DecClass
|
||||
{
|
||||
GstVp8DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
GType gst_v4l2_codec_vp8_dec_get_type (void);
|
||||
void gst_v4l2_codec_vp8_dec_register (GstPlugin * plugin,
|
||||
GstV4l2Decoder * decoder,
|
||||
GstV4l2CodecDevice * device,
|
||||
|
@ -22,6 +22,9 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstvp9decoder.h>
|
||||
|
||||
#include "gstv4l2codecallocator.h"
|
||||
#include "gstv4l2codecalphadecodebin.h"
|
||||
#include "gstv4l2codecpool.h"
|
||||
@ -33,6 +36,11 @@
|
||||
GST_DEBUG_CATEGORY_STATIC (v4l2_vp9dec_debug);
|
||||
#define GST_CAT_DEFAULT v4l2_vp9dec_debug
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_VP9_DEC \
|
||||
(gst_v4l2_codec_vp9_dec_get_type())
|
||||
#define GST_V4L2_CODEC_VP9_DEC(obj) \
|
||||
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_VP9_DEC,GstV4l2CodecVp9Dec))
|
||||
|
||||
/* Used to mark picture that have been outputed */
|
||||
#define FLAG_PICTURE_HOLDS_BUFFER GST_MINI_OBJECT_FLAG_LAST
|
||||
|
||||
@ -65,6 +73,15 @@ GST_STATIC_PAD_TEMPLATE (GST_VIDEO_DECODER_SINK_NAME,
|
||||
static GstStaticCaps static_src_caps = GST_STATIC_CAPS (SRC_CAPS);
|
||||
static GstStaticCaps static_src_caps_no_drm = GST_STATIC_CAPS (SRC_CAPS_NO_DRM);
|
||||
|
||||
typedef struct _GstV4l2CodecVp9Dec GstV4l2CodecVp9Dec;
|
||||
typedef struct _GstV4l2CodecVp9DecClass GstV4l2CodecVp9DecClass;
|
||||
|
||||
struct _GstV4l2CodecVp9DecClass
|
||||
{
|
||||
GstVp9DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
struct _GstV4l2CodecVp9Dec
|
||||
{
|
||||
GstVp9Decoder parent;
|
||||
@ -98,6 +115,8 @@ struct _GstV4l2CodecVp9Dec
|
||||
guint subsampling_y;
|
||||
};
|
||||
|
||||
static GType gst_v4l2_codec_vp9_dec_get_type (void);
|
||||
|
||||
G_DEFINE_ABSTRACT_TYPE (GstV4l2CodecVp9Dec, gst_v4l2_codec_vp9_dec,
|
||||
GST_TYPE_VP9_DECODER);
|
||||
|
||||
|
@ -20,30 +20,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#define GST_USE_UNSTABLE_API
|
||||
#include <gst/codecs/gstvp9decoder.h>
|
||||
|
||||
#include "gstv4l2decoder.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define GST_TYPE_V4L2_CODEC_VP9_DEC (gst_v4l2_codec_vp9_dec_get_type())
|
||||
#define GST_V4L2_CODEC_VP9_DEC(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_V4L2_CODEC_VP9_DEC,GstV4l2CodecVp9Dec))
|
||||
#define GST_V4L2_CODEC_VP9_DEC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_V4L2_CODEC_VP9_DEC,GstV4l2CodecVp9DecClass))
|
||||
#define GST_V4L2_CODEC_VP9_DEC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_V4L2_CODEC_VP9_DEC, GstV4l2CodecVp9DecClass))
|
||||
#define GST_IS_V4L2_CODEC_VP9_DEC(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_V4L2_CODEC_VP9_DEC))
|
||||
#define GST_IS_V4L2_CODEC_VP9_DEC_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_V4L2_CODEC_VP9_DEC))
|
||||
|
||||
typedef struct _GstV4l2CodecVp9Dec GstV4l2CodecVp9Dec;
|
||||
typedef struct _GstV4l2CodecVp9DecClass GstV4l2CodecVp9DecClass;
|
||||
|
||||
struct _GstV4l2CodecVp9DecClass
|
||||
{
|
||||
GstVp9DecoderClass parent_class;
|
||||
GstV4l2CodecDevice *device;
|
||||
};
|
||||
|
||||
GType gst_v4l2_codec_vp9_dec_get_type (void);
|
||||
void gst_v4l2_codec_vp9_dec_register (GstPlugin * plugin,
|
||||
GstV4l2Decoder * decoder,
|
||||
GstV4l2CodecDevice * device,
|
||||
|
Loading…
x
Reference in New Issue
Block a user