L16depay: use encoding-params for the channels

When parsing the number of channels, use the encoding-params property from the
RTP caps because that is where we can find the channels according to the spec.
Fall back to the channels property in the caps when needed.

Fixes #623209
This commit is contained in:
Wim Taymans 2010-07-05 10:23:37 +02:00
parent e39d7f7359
commit ed80c1834c

View file

@ -168,9 +168,14 @@ gst_rtp_L16_depay_setcaps (GstBaseRTPDepayload * depayload, GstCaps * caps)
if (clock_rate == 0)
goto no_clockrate;
channels = gst_rtp_L16_depay_parse_int (structure, "channels", channels);
if (channels == 0)
goto no_channels;
channels =
gst_rtp_L16_depay_parse_int (structure, "encoding-params", channels);
if (channels == 0) {
channels = gst_rtp_L16_depay_parse_int (structure, "channels", channels);
if (channels == 0) {
goto no_channels;
}
}
depayload->clock_rate = clock_rate;
rtpL16depay->rate = clock_rate;