Tweaking smplayer for quality over performance

Hi I don't know a lot about video players or codecs and that sort of thing, and I am trying to squeeze the best possible quality picture out of Mplayer (I am using the SMplayer front end).

My questions are should I enable post prossesing (I dont know what this is but it looks like it might improve quality) and direct rendering ? (also sounds like it could increase quality) can any one explain what these do ?.

As for output driver I use vdpau is this best for nvidia cards ?

Any other suggestions welcome.

Thanks.


Solution 1:

Using vdpau with Nvidia cards should get you great performance with smplayer, and will ensure that you use very little cpu when playing dvds and x264 encoded video. As has been discussed in detail on the Ubuntu forums, it is very important to note that

Vdpau is two things. One, a display device, like xv. The other, a codec that can use the PureVideo chip to decode certain files

such as mpeg1/2 and x264. If your card supports it (see here for a list of supported gpus) it is a better option than the old xv, and particularly xll, which will use considerably more cpu.

In smplayer there are some options that can be accessed via the configure button next to the vdpau option (see screenshot), but you usually don't have to fiddle with these unless you have any problems with the video performance.

NOTE: It is particularly important to note that when vdpau codecs such as ffh264vdpau are being utilised, none of the following smplayer gui options such as post-processing, deinterlace, etc, will have any effect. In the screenshot you can also see that 'disable software video filters' is checked when you click the vdpau properties.

However, as noted in the Mplayer manual special options such as deint can be passed on the command-line when using vdpau, although these are not usually needed; these special options are not supported in the smplayer gui.

vdpau (with -vc ffmpeg12vdpau, ffwmv3vdpau, ffvc1vdpau, ffh264vdpau  or
       ffodivxvdpau)
       Video output that uses VDPAU to decode video via hardware.  Also
              supports displaying of software-decoded video.
       sharpen=<-1-1>
                      For positive values, apply a sharpening algorithm to the
                      video, for negative values  a  blurring  algorithm  (de-
                      fault: 0).
       denoise=<0-1>
                      Apply a noise reduction algorithm to the video (default:
                      0, no noise reduction).
       deint=<0-4>
                      Select the deinterlacer (default: 0).  All modes > 0 re-
                      spect -field-dominance.

As has been shown at this forum discussion,

deint is a option for the video out (vdpau) not for the codec

and so to specify one of these special options (where vo is video output and vc is video codec), you could use the following command (taken from the forum above):

mplayer -vo vdpau:deint=1 -vc ffh264vdpau 00007.MTS

So, when using vdpau you don't really need to worry about these special options or any other settings in the smplayer gui such as post-processing or direct rendering that you can't normally apply anyway when using vdpau.

enter image description here

Solution 2:

Just to contribute to Mik's answer, you can use vdpau in smplayer and turn on deinterlacing by adding the command line arguments in the SMPlayer preferences menu.

Preferences > Advanced > Options for MPlayer

In the Options box, add the command line arguments you want. e.g.

-vo vdpau:deint=1