[MPlayer-users] Slow seeking in incomplete files

Reimar Döffinger Reimar.Doeffinger at stud.uni-karlsruhe.de
Fri Feb 6 00:57:41 CET 2009


On Fri, Feb 06, 2009 at 12:35:10AM +0100, RVM wrote:
> I think this problem happens with avi files. At least I've just tested with a 
> mpg and a wmv and seeking with mplayer SVN-r28450 and mplayer 1.0rc1 seems to 
> work the same (it's pretty fast).
> 
> The problem of newer versions when seeking in avi files, is that when trying 
> to seek to a part which hasn't been downloaded yet, the image freezes while 
> mplayer outputs a lot of error messages, like these:
> 
> [mpeg4 @ 0x879cd60]header damaged  0.484 4841/4841  0%  0%  1.0% 0 0
> Error while decoding frame!
> [mpeg4 @ 0x879cd60]header damaged  0.488 4842/4842  0%  0%  1.0% 0 0
> Error while decoding frame!
> [mpeg4 @ 0x879cd60]header damaged  0.492 4843/4843  0%  0%  1.0% 0 0
> Error while decoding frame!
> 
> With mplayer 1.0rc1, that doesn't happen. It just displays something like this
> 
> [mpeg4 @ 0x8660db8]warning: first frame is no keyframe
> 
> but it immediately finds something to play.

Ah, ok. I can see what you mean.
This is actually a side effect of better handling of partial AVI files,
in the past a single missing/wrong bits could cause MPlayer to skip huge
chunks, possibly to the end even if there was a lot of valid data.
E.g. when playing some partially downloaded file with -demuxer lavf it
would show maybe 10 minutes of content whereas the normal demuxer would
play only 1 minute and skip the rest.
Of course this trying harder to find these valid pieces of the file
takes more time.
I think using -forceidx might improve it, at the cost of higher startup
time.
I don't think there is a general solution (except seeing if the
error-recovery code can be optimized to be faster), its just not possible
to know if someone cares more about fast seeking or seeing as much of the
content as possible.

Greetings,
Reimar Döffinger



More information about the MPlayer-users mailing list