On Tue, Jun 12, 2012 at 8:12 PM, Michael Niedermayer <[email protected]> wrote: > On Tue, Jun 12, 2012 at 11:44:03AM -0600, Michael Bradshaw wrote: >> avformat_find_stream_info() attempts to find the file's and streams' >> durations, but it will guess them based on the bitrate if it can't >> determine the actual duration. This guess can be useful, but I need to >> be able to know if the AVFormatContext's or AVStream's duration was a >> guess based on the bitrate or not, so I know how much I should trust >> this duration. >> >> Is there a way to know this? > > One could parse the av_log() output other then that, i dont think > theres a way thats not quite fragile currently. > > One thing that could be done is extending the API with a flag that > specifies the expected accuracy of the duration field
I think the flag would be nice. Would it be added to both AVFormatContext and AVStream, or just one of them? I think AVFormatContext may be sufficient, and would be the simplest (as AVStream has no flags member). Perhaps 3 flags can be added: AVFMT_FLAG_DURATION_FROM_PTS AVFMT_FLAG_DURATION_FROM_STREAM AVFMT_FLAG_DURATION_FROM_BITRATE and estimate_timings() can set the proper flag according to what method it uses. Your thoughts? I can submit a patch today (if you don't beat me to it). Thanks, Michael _______________________________________________ Libav-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/libav-user
