On Wednesday 12 March 2003 10:38, Vladimir Mosgalin wrote:
Btw, do developers know that seeking is somewhat broken? It works different for different type of files, sometimes incorrect, and seeking intervals smaller that 10 behave strangely... "seek +2" seems to be smallest seek in most files, and "seek -3" seeks the same amount backwards, for example... I can report more complete examples, if someone is interested.
Most of those effects can be explained with the need for a keyframe AFAIK. That means that as long as the player does not search for the last keyframe _before_ the point you want to seek to and calculates all the frames in between (and mplayer does not do so), it can not give you (a non-distorted version of) the exact frame you requested. OTOH, I heard that mplayer at least had a bug at some point which evaluated the keypress as well as the keyrelease (when pressing [->] for example). However, there must be different keyboard drivers (depending on the environment - X / linux console / ...) and I don't know if the bug was/is in all those. I did not discover that problem yet. To solve the problem that seeking forward/backward results in different steps, maybe mplayer should not seek to the first keyframe after the seekpoint (which i _guess_ it does) but to the _nearest_ keyframe (while making sure that it still seeks into the right direction*). Ciao, Hans * Imagine the current frame is 2secs after a keyframe, the next keyframe is 28 seconds in the future and you want to seek +10: The nearest keyframe to the seekpoint would be that 2seconds in the past, naively seen.