mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 06:54:49 +00:00
qtdemux: with raw audio, set a default channel-mask for multichannel audio.
This doesn't actually parse 'chan' because it's absurdly complex.
This commit is contained in:
parent
9fc62a58e3
commit
150bd97e96
1 changed files with 8 additions and 1 deletions
|
@ -5203,10 +5203,17 @@ gst_qtdemux_add_stream (GstQTDemux * qtdemux,
|
||||||
gst_pad_new_from_static_template (&gst_qtdemux_audiosrc_template, name);
|
gst_pad_new_from_static_template (&gst_qtdemux_audiosrc_template, name);
|
||||||
g_free (name);
|
g_free (name);
|
||||||
if (stream->caps) {
|
if (stream->caps) {
|
||||||
/* FIXME: Need to set channel-mask here and maybe reorder */
|
|
||||||
gst_caps_set_simple (stream->caps,
|
gst_caps_set_simple (stream->caps,
|
||||||
"rate", G_TYPE_INT, (int) stream->rate,
|
"rate", G_TYPE_INT, (int) stream->rate,
|
||||||
"channels", G_TYPE_INT, stream->n_channels, NULL);
|
"channels", G_TYPE_INT, stream->n_channels, NULL);
|
||||||
|
|
||||||
|
if (stream->n_channels > 2) {
|
||||||
|
/* FIXME: Need to parse the 'chan' atom to get channel layouts
|
||||||
|
* correctly; this is just the minimum we can do - assume
|
||||||
|
* we don't actually have any channel positions. */
|
||||||
|
gst_caps_set_simple (stream->caps,
|
||||||
|
"channel-mask", GST_TYPE_BITMASK, 0, NULL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
qtdemux->n_audio_streams++;
|
qtdemux->n_audio_streams++;
|
||||||
} else if (stream->subtype == FOURCC_strm) {
|
} else if (stream->subtype == FOURCC_strm) {
|
||||||
|
|
Loading…
Reference in a new issue