[FFmpeg-devel] [PATCH]concatdec: measure duration when it is not available
Bodecs Bela
bodecsb at vivanet.hu
Wed Feb 17 14:13:48 CET 2016
2016.02.16. 10:42 keltezéssel, Nicolas George írta:
> L'octidi 28 pluviôse, an CCXXIV, Bodecs Bela a écrit :
>> Do you have any suggestion for me what to do now?
>> Please give me a hint where to find this bug or should I open a trac ticket
>> for it?
> I already told you: find out exactly WHY the result is different. I suggest
> you use this kind of test case:
>
> ffprobe -show_packets -show_streams input.ts
> cat input.ts | ffprobe -show_packets -show_streams -
>
> When we know why, we can discuss how.
>
> Regards,
I have checked the code where and when duration filled and made some
reasoning about it.
Duration value for input files has been populated some time after
opening. (estimate_timings function in utils.c) And never again
corrected or called this function..
So, if early in processing there is no duration info, it remains empty.
When input is not a seekable file but a not-seekable stream, the only
chance to get a duration info when the stream itself contains info
about this value. (eg. flv metadata, mp4-moov)
But mpegts format does not contain this info. So the only moment when
duration calculatable is when we finish the reading. I think
contoniously updating the duration value after each packet would not be
a good idea.
(cur_dts is updated is AVStream->info struct)
So reading a file via pipe or reading hls stream via http it is normal
that duration value remains empty.
thus, I think to handle the cases when duration value is not populated,
this is not a bug fix but a reasonable solution for these cases.
I agree with you that we should not "measure" our-own the pts values but
I could not find any existing/available data member to have this info.
best regars,
>
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
More information about the ffmpeg-devel
mailing list