Most subclasses just use the simple function, so just let the base class
do it. It makes less code in subclasses.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/906>
#include <stdlib.h>
#include <string.h>
#include <stdlib.h>
#include <string.h>
+static gboolean
+gst_rtp_header_extension_set_caps_from_attributes_default (GstRTPHeaderExtension
+ * ext, GstCaps * caps);
+
GST_DEBUG_CATEGORY_STATIC (rtphderext_debug);
#define GST_CAT_DEFAULT (rtphderext_debug)
GST_DEBUG_CATEGORY_STATIC (rtphderext_debug);
#define GST_CAT_DEFAULT (rtphderext_debug)
static void
gst_rtp_header_extension_class_init (GstRTPHeaderExtensionClass * klass)
{
static void
gst_rtp_header_extension_class_init (GstRTPHeaderExtensionClass * klass)
{
+ klass->set_caps_from_attributes =
+ gst_rtp_header_extension_set_caps_from_attributes_default;
return g_strdup_printf ("extmap-%u", priv->ext_id);
}
return g_strdup_printf ("extmap-%u", priv->ext_id);
}
-/**
- * gst_rtp_header_extension_set_caps_from_attributes_simple_sdp:
+/*
+ * gst_rtp_header_extension_set_caps_from_attributes_default
* @ext: the #GstRTPHeaderExtension
* @caps: #GstCaps to write fields into
*
* @ext: the #GstRTPHeaderExtension
* @caps: #GstCaps to write fields into
*
* advertised in @caps.
*
* Returns: whether the @ext attributes could be set on @caps.
* advertised in @caps.
*
* Returns: whether the @ext attributes could be set on @caps.
-gboolean
- gst_rtp_header_extension_set_caps_from_attributes_simple_sdp
- (GstRTPHeaderExtension * ext, GstCaps * caps) {
+static gboolean
+gst_rtp_header_extension_set_caps_from_attributes_default (GstRTPHeaderExtension
+ * ext, GstCaps * caps)
+{
gchar *field_name = gst_rtp_header_extension_get_sdp_caps_field_name (ext);
GstStructure *s = gst_caps_get_structure (caps, 0);
gchar *field_name = gst_rtp_header_extension_get_sdp_caps_field_name (ext);
GstStructure *s = gst_caps_get_structure (caps, 0);
GST_RTP_API
gchar * gst_rtp_header_extension_get_sdp_caps_field_name (GstRTPHeaderExtension * ext);
GST_RTP_API
gchar * gst_rtp_header_extension_get_sdp_caps_field_name (GstRTPHeaderExtension * ext);
-GST_RTP_API
-gboolean gst_rtp_header_extension_set_caps_from_attributes_simple_sdp (GstRTPHeaderExtension * ext, GstCaps *caps);
gst_rtp_header_extension_colorspace_set_non_rtp_sink_caps;
rtp_hdr_class->update_non_rtp_src_caps =
gst_rtp_header_extension_colorspace_update_non_rtp_src_caps;
gst_rtp_header_extension_colorspace_set_non_rtp_sink_caps;
rtp_hdr_class->update_non_rtp_src_caps =
gst_rtp_header_extension_colorspace_update_non_rtp_src_caps;
- rtp_hdr_class->set_caps_from_attributes =
- gst_rtp_header_extension_set_caps_from_attributes_simple_sdp;
gst_element_class_set_static_metadata (gstelement_class,
"Color Space", GST_RTP_HDREXT_ELEMENT_CLASS,
gst_element_class_set_static_metadata (gstelement_class,
"Color Space", GST_RTP_HDREXT_ELEMENT_CLASS,
rtp_hdr_class->get_max_size = gst_rtp_header_extension_twcc_get_max_size;
rtp_hdr_class->write = gst_rtp_header_extension_twcc_write;
rtp_hdr_class->read = gst_rtp_header_extension_twcc_read;
rtp_hdr_class->get_max_size = gst_rtp_header_extension_twcc_get_max_size;
rtp_hdr_class->write = gst_rtp_header_extension_twcc_write;
rtp_hdr_class->read = gst_rtp_header_extension_twcc_read;
- rtp_hdr_class->set_caps_from_attributes =
- gst_rtp_header_extension_set_caps_from_attributes_simple_sdp;
gst_element_class_set_static_metadata (gstelement_class,
"Transport Wide Congestion Control", GST_RTP_HDREXT_ELEMENT_CLASS,
gst_element_class_set_static_metadata (gstelement_class,
"Transport Wide Congestion Control", GST_RTP_HDREXT_ELEMENT_CLASS,