[FFmpeg-devel] [PATCH] flv duration

Michael Niedermayer michaelni
Wed Apr 7 03:29:03 CEST 2010


On Tue, Apr 06, 2010 at 05:34:16PM -0700, Howard Chu wrote:
> Michael Niedermayer wrote:
>> On Sun, Apr 04, 2010 at 04:24:54AM -0700, Howard Chu wrote:
>>> elupus wrote:
>>>> On Sat, 03 Apr 2010 18:41:24 -0700, Howard Chu wrote:
>>>>> Spoke too soon. Not setting s->duration breaks XBMC.
>>>>
>>>> In what way? lavf should have populated that from the stream duration
>>>> anyway.
>>>
>>> I don't know why, but it didn't, it was zero. And since by default XBMC
>>> uses percentage-based seeks, all of my seek requests were turned into 
>>> seeks
>>> to zero. Restoring the line to set s->duration made it all work fine.
>>>
>>> I have to admit I wasn't really interested in digging to see why it 
>>> wasn't
>>> set by something else in lavf. I'm content knowing that this code was in
>>> there originally, and things were working. My first patch preserved the
>>> existing behavior, so I'm going to stick with it. This code base is just
>>> too rife with unintended consequences, and there was no good reason to
>>> remove that line in the first place.
>>
>> The good reason was the API, but its unpopular to read the docs
>>     /** Decoding: duration of the stream, in AV_TIME_BASE fractional
>>         seconds. NEVER set this value directly: it is deduced from the
>>         AVStream values.  */
>>      int64_t duration;
>>
>> maybe the (internal after all) API should be changed and demuxers should
>> set the AVFormatContext duration if thats the only thing they know. That
>> does seem to make sense but it requires that api text to be changed,
>> ill do that.
>
> OK, on further digging I found the problem was that XBMC wasn't probing the 
> stream info before trying to open its codecs. Fixing that in XBMC also 
> fixed this problem. So sorry for the noise. This patch is fine.
>
> https://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2010-April/086354.html

that one is now no longer correct as i changed the api to allow
AVFormatContext.duration to be set

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Thouse who are best at talking, realize last or never when they are wrong.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20100407/277abc90/attachment.pgp>



More information about the ffmpeg-devel mailing list