- In most cases you no longer need to use the "-fps" option to set the video frame rate. Instead, the MPlayer code will try to figure out the frame rate automatically, by comparing the RTP presentation times of successive packets.
Eh? If packets have presentation times, you should just use those
I do.
MPlayer can handle variable-framerate streams where it just has a timestamp for each packet rather than a fixed framerate.
I wish MPlayer worked that way, but unfortunately it doesn't. For MPEG-4 (or H.261, H.263, or motion-JPEG) video streams, MPlayer would complain, and not play video at all, if the user did not use the "-fps" option. My code now overcomes this by looking at (and buffering) incoming packets until it is able to figure out the frame rate; then it sets "sh_video->fps", and from then on the rest of MPlayer is happy. For MPEG-1 and MPEG-2 video streams, on the other hand, MPlayer never used to require the user to use "-fps". Ross.