[FFmpeg-devel] [PATCH] Stream parsing
Benjamin Larsson
banan
Sun Oct 3 21:18:19 CEST 2010
On 10/03/2010 08:40 PM, Justin Ruggles wrote:
> Benjamin Larsson wrote:
>
>> $topic, previously discussed in [RFC] Stream parsing
>>
>> MvH
>> Benjamin Larsson
>>
>
>> +/**
>> + * Codec should fill in channel configuration and samplerate instead of container
>> + */
>> +#define CODEC_CAP_CHANNEL_CONF 0x0400
> [...]
>> @@ -2191,9 +2192,17 @@
>> }
>> }
>> assert(!st->codec->codec);
>> + codec = avcodec_find_decoder(st->codec->codec_id);
>> +
>> + /* Force decoding of at least one frame of codec data
>> + * this makes sure the codec initializes the channel configuration
>> + * and does not trust the values from the container.
>> + */
>> + if (codec && codec->capabilities & CODEC_CAP_CHANNEL_CONF)
>> + st->codec->channels = 0;
>
> Your documentation says channel configuration and samplerate. Why is
> sample_rate not also set to 0 here?
>
> -Justin
As long as
if (!has_codec_parameters(st->codec) ||
!has_decode_delay_been_guessed(st))
try_decode_frame(st, pkt);
will happen the codec will override whatever is set in the codec
context. Just setting channels to 0 will make sure that happens.
MvH
Benjamin Larsson
More information about the ffmpeg-devel
mailing list