[MPlayer-users] Seek in FullHD Movies
Phil Rhodes
phil_rhodes at rocketmail.com
Mon Mar 14 12:33:58 CET 2011
> i am using mplayer in slave mode. While playing a SD movie when i use
> the "seek <seconds> 2", it works perfect and seeks to the exact
> position. But, while playing a FullHD Movie (H.264) when use the same
> seek command, it seeks to a position lot before the desired one.
This may just be down to how the file was encoded - I've seen this myself.
My guess was, and it is just a guess, that it's seeking to the nearest
keyframe that occurs before the requested seek point. If your file is
encoded with very infrequent keyframes, it's unlikely that there will be
one exactly at the point you asked to seek to. The only alternative,
technically speaking, would be for mplayer to seek exactly to the point
you requested and give you a rather corrupted image, or to attempt to
decode the video stream from the previous keyframe up until the point you
requested, which could make seeking take a very long time.
The file may be encoded with infrequent keyframes because either this was
directly specified by the person who encoded it, or because there is very
little change in the image and an automated encoder chose not to use many
keyframes. This issue is the reason video editing usually uses compression
techniques which don't use the similarity between frames to compress data.
You could, of course, decompress the entire video and store it in an
uncompressed format, which would eat a lot of hard disk space but would
solve the problem without compromising IQ, or you could reencode it to a
format with more keyframes, or an I-frame format comprising entirely
keyframes, at which point you'd be able to prove that this was the
problem, and seek quickly to any frame in the file. Reencoding it will of
course cost you quality.
P
More information about the MPlayer-users
mailing list