[MPlayer-users] SEEK Bug report

Alexander Roalter alex at roalter.it
Tue May 19 12:25:54 CEST 2009


Zuzu Corneliu wrote:
> Hi...I need urgent response to this bug....
> THE SEEK FUNCTION DOESN'T WORK PROPERLY
> This happens for ANY movie - the player is the problem - for instance - when I run command in cmd:
> "D:\MPLAYER\MPlayer for Windows\MPlayer.exe" "E:\Movies\Stone of Destiny\Stardust.DVDRip.XviD-DiAMOND\dmd-stardust-cd2.avi" -ss 3
> , the player doesn't seek to 3 seconds, instead it seeks to 7 => 4 seconds delay....I need the player to SEEK EXACTLY, and it's urgent
> This happens to ANY movie - test it yourself, more - the seek mistakes not just for the 3 seconds positioning, but in lots of cases - for instance if I want to seek to 45 seconds, in goes to 49...I really need an EXACT seek function
> If you could help me, please reply!
> Thanks a lot in advance!

It is not possible seeking to an exact position if at this position
isn't a keyframe. Seeking can only be performed to a keyframe, a
different approach would be -- and this would have to be implemented and
is not done by inserting one line or two -- to seek to the nearest
previous keyframe and decode all frames until the desired position is found.

If you use DVDs, there are much more frequent keyframes (IIRC one every
2 or 3 seconds, but I might be mistaken on that), while on divx and
other codecs keyframes can occur every 10 seconds or even less, which
means you only can seek with a very low precision.

If you need exact positioning on a per second basis, you'd have to
reencode the video with keyframes every second. This of course requires
more bandwidth, as keyframes take up much more frames than the frames in
between.

-- 
cheers,
Alex


More information about the MPlayer-users mailing list