ringbuffer: Add support for E-AC3

Adds support for pushing E-AC3 buffers and doing bytes-to-ms conversion
correctly. The assumption (as with other formats) is that something like
IEC 61937 payloading will be used. Correspondingly the ringbuffer spec
is populated so that the data rate is 4x normal AC3.

https://bugzilla.gnome.org/show_bug.cgi?id=642730
This commit is contained in:
Arun Raghavan 2011-04-09 09:49:10 +05:30
parent 193fbf93a9
commit 9615081f9c

View file

@ -436,6 +436,16 @@ gst_ring_buffer_parse_caps (GstRingBufferSpec * spec, GstCaps * caps)
spec->width = 16; spec->width = 16;
spec->depth = 16; spec->depth = 16;
spec->channels = 2; spec->channels = 2;
} else if (!strncmp (mimetype, "audio/x-eac3", 12)) {
/* extract the needed information from the cap */
if (!(gst_structure_get_int (structure, "rate", &spec->rate)))
goto parse_error;
spec->type = GST_BUFTYPE_EAC3;
spec->format = GST_EAC3;
spec->width = 64;
spec->depth = 64;
spec->channels = 2;
} else if (!strncmp (mimetype, "audio/x-dts", 11)) { } else if (!strncmp (mimetype, "audio/x-dts", 11)) {
/* extract the needed information from the cap */ /* extract the needed information from the cap */
if (!(gst_structure_get_int (structure, "rate", &spec->rate))) if (!(gst_structure_get_int (structure, "rate", &spec->rate)))