[Libav-user] Reducing latency of file opening (when playing from http)

Bjoern Drabeck bjoern.drabeck at gmail.com
Wed May 15 04:36:58 CEST 2013


>
> This is also what I noticed, when playing with probesize and analyzeduration trying to get the player to start more quickly (using mpegts (h264/aac) streams served through a memory buffer).
>
> This leads to the question why does a known stream need to get probed / analyzed at all? If all values are known, they could be set before, and decoding / playing should start right away, skipping the step of av_find_stream_info. Unfortunately so far I did not manage to get this to work, av_find_stream_info seems to set something which is required for decoding to work.
>
> I looked though the av_find_stream_info source code and did not find anything special happening there, or I did not recognize it.
>
> So, to reduce latency, what has to be set for a codec / context to allow to skip the time-consuming step of av_find_stream_info?


Just one thing I wanted to mention:

When I am opening a file I call avformat_open_input, then after that I
call avformat_find_stream_info, and I am timing those calls:

'avformat_open_input':          9.7970 seconds
'avformat_find_stream_info':  0.1080 seconds

So for me the problem seems to be avformat_open_input. My testfiles
are all around that range, maybe +-2 sec

As I mentioned before, changine probesize/analyzeduration from 5000000
to 5000 doesn't seem show any visible effect (just ranging within the
usual fluctuations of the above timings)

Is that what you experienced too?

-Bjoern


More information about the Libav-user mailing list