mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-28 11:55:39 +00:00
basesrc: add default fixate function
Add a default fixate function which does gst_caps_fixate() because gst_pad_fixate() does not do that anymore.
This commit is contained in:
parent
e4db8d0f55
commit
6b876ebf82
1 changed files with 10 additions and 0 deletions
|
@ -279,6 +279,7 @@ gst_base_src_get_type (void)
|
|||
}
|
||||
|
||||
static GstCaps *gst_base_src_getcaps (GstPad * pad, GstCaps * filter);
|
||||
static void gst_base_src_default_fixate (GstBaseSrc * src, GstCaps * caps);
|
||||
static void gst_base_src_fixate (GstPad * pad, GstCaps * caps);
|
||||
|
||||
static gboolean gst_base_src_is_random_access (GstBaseSrc * src);
|
||||
|
@ -375,6 +376,7 @@ gst_base_src_class_init (GstBaseSrcClass * klass)
|
|||
klass->query = GST_DEBUG_FUNCPTR (gst_base_src_default_query);
|
||||
klass->prepare_seek_segment =
|
||||
GST_DEBUG_FUNCPTR (gst_base_src_default_prepare_seek_segment);
|
||||
klass->fixate = GST_DEBUG_FUNCPTR (gst_base_src_default_fixate);
|
||||
klass->create = GST_DEBUG_FUNCPTR (gst_base_src_default_create);
|
||||
klass->alloc = GST_DEBUG_FUNCPTR (gst_base_src_default_alloc);
|
||||
|
||||
|
@ -841,6 +843,13 @@ gst_base_src_getcaps (GstPad * pad, GstCaps * filter)
|
|||
return caps;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_base_src_default_fixate (GstBaseSrc * src, GstCaps * caps)
|
||||
{
|
||||
GST_DEBUG_OBJECT (src, "using default caps fixate function");
|
||||
gst_caps_fixate (caps);
|
||||
}
|
||||
|
||||
static void
|
||||
gst_base_src_fixate (GstPad * pad, GstCaps * caps)
|
||||
{
|
||||
|
@ -2784,6 +2793,7 @@ gst_base_src_default_negotiate (GstBaseSrc * basesrc)
|
|||
/* now fixate */
|
||||
GST_DEBUG_OBJECT (basesrc, "have caps: %" GST_PTR_FORMAT, caps);
|
||||
if (gst_caps_is_any (caps)) {
|
||||
GST_DEBUG_OBJECT (basesrc, "any caps, we stop");
|
||||
/* hmm, still anything, so element can do anything and
|
||||
* nego is not needed */
|
||||
result = TRUE;
|
||||
|
|
Loading…
Reference in a new issue