mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-20 07:16:55 +00:00
aom: allow per feature registration
Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2038>
This commit is contained in:
parent
e006366206
commit
d9d30ff464
5 changed files with 12 additions and 10 deletions
|
@ -29,18 +29,12 @@
|
||||||
static gboolean
|
static gboolean
|
||||||
plugin_init (GstPlugin * plugin)
|
plugin_init (GstPlugin * plugin)
|
||||||
{
|
{
|
||||||
|
gboolean ret = FALSE;
|
||||||
|
|
||||||
if (!gst_element_register (plugin, "av1enc", GST_RANK_PRIMARY,
|
ret |= GST_ELEMENT_REGISTER (av1enc, plugin);
|
||||||
GST_TYPE_AV1_ENC)) {
|
ret |= GST_ELEMENT_REGISTER (av1dec, plugin);
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!gst_element_register (plugin, "av1dec", GST_RANK_PRIMARY,
|
return ret;
|
||||||
GST_TYPE_AV1_DEC)) {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
|
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
|
||||||
|
|
|
@ -94,6 +94,8 @@ static gboolean gst_av1_dec_get_valid_format (GstAV1Dec * dec,
|
||||||
|
|
||||||
#define gst_av1_dec_parent_class parent_class
|
#define gst_av1_dec_parent_class parent_class
|
||||||
G_DEFINE_TYPE (GstAV1Dec, gst_av1_dec, GST_TYPE_VIDEO_DECODER);
|
G_DEFINE_TYPE (GstAV1Dec, gst_av1_dec, GST_TYPE_VIDEO_DECODER);
|
||||||
|
GST_ELEMENT_REGISTER_DEFINE (av1dec, "av1dec", GST_RANK_PRIMARY,
|
||||||
|
GST_TYPE_AV1_DEC);
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gst_av1_dec_class_init (GstAV1DecClass * klass)
|
gst_av1_dec_class_init (GstAV1DecClass * klass)
|
||||||
|
|
|
@ -68,5 +68,7 @@ struct _GstAV1DecClass
|
||||||
|
|
||||||
GType gst_av1_dec_get_type (void);
|
GType gst_av1_dec_get_type (void);
|
||||||
|
|
||||||
|
GST_ELEMENT_REGISTER_DECLARE (av1dec);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
#endif /* __GST_AV1_DEC_H__ */
|
#endif /* __GST_AV1_DEC_H__ */
|
||||||
|
|
|
@ -198,6 +198,8 @@ static void gst_av1_enc_destroy_encoder (GstAV1Enc * av1enc);
|
||||||
|
|
||||||
#define gst_av1_enc_parent_class parent_class
|
#define gst_av1_enc_parent_class parent_class
|
||||||
G_DEFINE_TYPE (GstAV1Enc, gst_av1_enc, GST_TYPE_VIDEO_ENCODER);
|
G_DEFINE_TYPE (GstAV1Enc, gst_av1_enc, GST_TYPE_VIDEO_ENCODER);
|
||||||
|
GST_ELEMENT_REGISTER_DEFINE (av1enc, "av1enc", GST_RANK_PRIMARY,
|
||||||
|
GST_TYPE_AV1_ENC);
|
||||||
|
|
||||||
/* *INDENT-OFF* */
|
/* *INDENT-OFF* */
|
||||||
static GstStaticPadTemplate gst_av1_enc_sink_pad_template =
|
static GstStaticPadTemplate gst_av1_enc_sink_pad_template =
|
||||||
|
|
|
@ -135,5 +135,7 @@ struct _GstAV1EncClass
|
||||||
|
|
||||||
GType gst_av1_enc_get_type (void);
|
GType gst_av1_enc_get_type (void);
|
||||||
|
|
||||||
|
GST_ELEMENT_REGISTER_DECLARE (av1enc);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
#endif /* __GST_AV1_ENC_H__ */
|
#endif /* __GST_AV1_ENC_H__ */
|
||||||
|
|
Loading…
Reference in a new issue