[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?


More information about the Libav-user mailing list