[FFmpeg-cvslog] r15043 - trunk/libavformat/utils.c

Ronald S. Bultje rsbultje
Sat Aug 30 00:35:53 CEST 2008


Hi,

On Fri, Aug 29, 2008 at 6:31 PM, Baptiste Coudurier
<baptiste.coudurier at smartjog.com> wrote:
> Ronald S. Bultje wrote:
>> On Fri, Aug 29, 2008 at 6:13 PM, bcoudurier <subversion at mplayerhq.hu> wrote:
>>> make has_codec_parameters not returning true when sample_fmt is not set
>> [..]
>>> @@ -1842,7 +1842,7 @@ static int has_codec_parameters(AVCodecC
>>>     int val;
>>>     switch(enc->codec_type) {
>>>     case CODEC_TYPE_AUDIO:
>>> -        val = enc->sample_rate && enc->channels;
>>> +        val = enc->sample_rate && enc->channels && enc->sample_fmt != SAMPLE_FMT_NONE;
>>>         if(!enc->frame_size &&
>>>            (enc->codec_id == CODEC_ID_VORBIS ||
>>>             enc->codec_id == CODEC_ID_AAC))
>>
>> Doesn't this mean, since s_fmt is codec-dependent (and can thus only
>> be set by the codec) that we always have to open the codec and that
>> demuxer header parsing is never sufficient to pass find_stream_info()?
>> If so, I would guess that this is bad.
>>
>
> Video already does that ... see pix_fmt.

Once I test video, I would probably have complained about that... :-).

More in a broader context, is this wanted (that we always need to open
a codec to know this kind of stuff) and what would be an acceptable
way to work around it in case of network-streams such as MMS/RTSP?

Thanks,
Ronald




More information about the ffmpeg-cvslog mailing list