4.1. Xv

Under XFree86 4.0.2 or newer, you can use your card's hardware YUV routines using the XVideo extension. This is what the option -vo xv uses. Also, this driver supports adjusting brightness/contrast/hue/etc. (unless you use the old, slow DirectShow DivX codec, which supports it everywhere), see the man page.

In order to make this work, be sure to check the following:

  1. You have to use XFree86 4.0.2 or newer (former versions don't have XVideo)

  2. Your card actually supports hardware acceleration (modern cards do)

  3. X loads the XVideo extension, it's something like this:

    (II) Loading extension XVideo
  4. Your card has Xv support under Linux. To check, try xvinfo, it is the part of the XFree86 distribution. It should display a long text, similar to this:

    X-Video Extension version 2.2
    screen #0
      Adaptor #0: "Savage Streams Engine"
        number of ports: 1
        port base: 43
        operations supported: PutImage
        supported visuals:
          depth 16, visualID 0x22
          depth 16, visualID 0x23
        number of attributes: 5
    (...)
        Number of image formats: 7
          id: 0x32595559 (YUY2)
            guid: 59555932-0000-0010-8000-00aa00389b71
            bits per pixel: 16
            number of planes: 1
            type: YUV (packed)
          id: 0x32315659 (YV12)
            guid: 59563132-0000-0010-8000-00aa00389b71
            bits per pixel: 12
            number of planes: 3
            type: YUV (planar)
    (...etc...)
  5. And finally, check if MPlayer was compiled with 'xv' support. Do a mplayer -vo help | grep xv . If 'xv' support was built a line similar to this should appear:

      xv      X11/Xv