encodebin: Allow streamheader update when profile.allow_dynamic_output == FALSE
Some encoders can update the stream header through time (for example vp8 might do that) but it does not strictly changes the output format.
This commit is contained in:
parent
43db5e5ebd
commit
135c612550
@ -1100,12 +1100,18 @@ _outfilter_caps_set_cb (GstPad * outfilter_sinkpad,
|
|||||||
GParamSpec * arg G_GNUC_UNUSED, StreamGroup * group)
|
GParamSpec * arg G_GNUC_UNUSED, StreamGroup * group)
|
||||||
{
|
{
|
||||||
GstCaps *caps;
|
GstCaps *caps;
|
||||||
|
GstStructure *structure;
|
||||||
|
|
||||||
g_object_get (outfilter_sinkpad, "caps", &caps, NULL);
|
g_object_get (outfilter_sinkpad, "caps", &caps, NULL);
|
||||||
|
caps = gst_caps_copy (caps);
|
||||||
|
|
||||||
|
structure = gst_caps_get_structure (caps, 0);
|
||||||
|
gst_structure_remove_field (structure, "streamheader");
|
||||||
GST_INFO_OBJECT (group->ebin, "Forcing caps to %" GST_PTR_FORMAT, caps);
|
GST_INFO_OBJECT (group->ebin, "Forcing caps to %" GST_PTR_FORMAT, caps);
|
||||||
g_object_set (group->outfilter, "caps", caps, NULL);
|
g_object_set (group->outfilter, "caps", caps, NULL);
|
||||||
g_signal_handler_disconnect (outfilter_sinkpad, group->outputfilter_caps_sid);
|
g_signal_handler_disconnect (outfilter_sinkpad, group->outputfilter_caps_sid);
|
||||||
group->outputfilter_caps_sid = 0;
|
group->outputfilter_caps_sid = 0;
|
||||||
|
gst_caps_unref (caps);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
x
Reference in New Issue
Block a user