[MPlayer-users] composite input a/v sync issue
Reimar.Doeffinger at gmx.de
Sat Nov 7 13:36:07 CET 2009
On Sat, Nov 07, 2009 at 12:19:49PM +0100, Miroslav Rovis wrote:
> >> No, you misunderstand: -fps 25 tells MPlayer to assume the input to be
> >> _exactly_ 25 fps no matter what, ignoring completely when the data arrives
> >> from the capture card.
> >> If you have a broken part in the video, it will not be able to capture _any_
> >> frames, so during that time it is actually 0 fps, and with -fps 25 you explicitly
> >> _forbid_ MPlayer to correct this.
> >> There is also a fps option for -tv which is something else and which is supposed
> >> to work in a saner way.
> >> Still, to handle it properly you'd need support for variable frame-rate in-/output
> >> which MPlayer does not have.
> > I see now. Thanks for bearing up with me so nicely...
> > ...thanks to your patient explanation. Trials follow... Aaarrghhh!
> Ermmmhh... No variable frame-rate support...
> What I can say is. this command gives such quality which I don't get
> anywhere near with on Windoze:
> mybox # mencoder -ofps 25 -noskip -mc 0 -vf softskip,harddup tv:// -tv
> -ovc lavc -of mpeg -mpegopts muxrate=36000:tsaf -lavcopts
> vcodec=mpeg4:autoaspect:vbitrate=8000:turbo -oac mp3lame -lameopts
> cbr:preset=standard -endpos 14880 -o hvk307_`date +%H%M%S`.mpg
That is a bit too much text, I am a bit confused as to where the issues
So you now leave out the -fps, does that change anything with respect
to the A-V sync issues? Without it in principle MPlayer should be able
to handle it, even if not perfectly. I guess you'll have to remove
-noskip -mc 0 though, possibly even use -mc 100.
You could also try FFmpeg, it has variable-framerate support and also
supports capturing from v4l2.
Also if you do not care much about size and have a slow PC, you should
remove bitrate from lavcopts and instead add vqscale=2:mbd=0
> BTW, for newbies who might need to understand. The latter command is a
> fine improvement to the former. It allows some seeking through the
> stream being captured. The former doesn't. With the former it is
> necessary to issue something like:
> mencoder -forceidx stream.avi -ovc copy -oac copy -o stream_SEEKABLE.avi
> And that is a nuissance when you have a 5GB or 10GB file which you don't
> know at which point of the tape it is...
You can just use mplayer -forceidx to play the file, or anything that
uses libavformat (e.g. mplayer -demuxer lavf) and seeking should be
possible and more reliable than with MPEG.
More information about the MPlayer-users