ac3parse: improve src caps settings
This commit is contained in:
parent
eccffea369
commit
8e91b3b3c5
@ -411,12 +411,17 @@ gst_ac3_parse_parse_frame (GstBaseParse * parse, GstBuffer * buf)
|
|||||||
goto broken_header;
|
goto broken_header;
|
||||||
|
|
||||||
GST_LOG_OBJECT (parse, "size: %u, rate: %u, chans: %u", fsize, rate, chans);
|
GST_LOG_OBJECT (parse, "size: %u, rate: %u, chans: %u", fsize, rate, chans);
|
||||||
{
|
|
||||||
GstCaps *caps = gst_caps_new_simple ("audio/x-ac3", "rate", G_TYPE_INT,
|
if (G_UNLIKELY (ac3parse->sample_rate != rate || ac3parse->channels != chans)) {
|
||||||
rate, "channels", G_TYPE_INT, chans, NULL);
|
GstCaps *caps = gst_caps_new_simple ("audio/x-ac3",
|
||||||
|
"framed", G_TYPE_BOOLEAN, TRUE, "rate", G_TYPE_INT, rate,
|
||||||
|
"channels", G_TYPE_INT, chans, NULL);
|
||||||
gst_buffer_set_caps (buf, caps);
|
gst_buffer_set_caps (buf, caps);
|
||||||
gst_pad_set_caps (GST_BASE_PARSE_SRC_PAD (parse), caps);
|
gst_pad_set_caps (GST_BASE_PARSE_SRC_PAD (parse), caps);
|
||||||
gst_caps_unref (caps);
|
gst_caps_unref (caps);
|
||||||
|
|
||||||
|
ac3parse->sample_rate = rate;
|
||||||
|
ac3parse->channels = chans;
|
||||||
}
|
}
|
||||||
|
|
||||||
return GST_FLOW_OK;
|
return GST_FLOW_OK;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user