Difference between revisions of "XvMC"

From MythTV Official Wiki
Jump to: navigation, search
 
(Greyscale OSD)
Line 30: Line 30:
  
 
====Greyscale OSD====
 
====Greyscale OSD====
MythTV version 0.19 ships with a hack to enable full color OSD with XvMC enabled. However, the hack is disabled by default. To enable it, read [http://svn.mythtv.org/trac/changeset/7569 this].
+
MythTV version 0.19 ships with a hack to enable full color OSD with XvMC enabled. However, the hack is disabled by default. To enable it, [http://svn.mythtv.org/trac/changeset/7569 read this].
 +
 
 +
The above link mentions:
 +
*Making a change to your xorg.conf file
 +
*And also making a change to your "settings table". The table referred to here is a MySQL table. Usually the database is named "mythconverg" and  the table is named "settings". You can usually access your MySQL mythconverg database from the command line like this:
 +
<code>mysql -u root -p mythconverg</code>
 +
You will be prompted for a password. If you don't remember setting one up, try just pressing the '''ENTER''' key.
 +
 
 +
Here is the SQL you should use to make the change:
 +
<code>INSERT INTO settings SET value='UseChromaKeyOSD',data='1',hostname='yourhost';</code>
 +
 
 +
But change 'yourhost' to the hostname that your frontend is running on.
 +
 
 +
*Now restart X11 (for the xorg.conf change to take effect) and your frontend (for the SQL change to take effect) and see if it works!
  
 
===External Links===
 
===External Links===
 
*[http://en.wikipedia.org/wiki/XvMC Wikipedia's XvMC Page]
 
*[http://en.wikipedia.org/wiki/XvMC Wikipedia's XvMC Page]
 
*[http://unichrome.sourceforge.net/ Unichrome Project @ sf.net]
 
*[http://unichrome.sourceforge.net/ Unichrome Project @ sf.net]

Revision as of 07:21, 16 February 2006

X-Video Motion Compensation, or XvMC, allows video programs to only send a graphics card differences from the last frame instead of sending a whole frame. XvMC can be used to reduce CPU utilization when playing back MPEG-2 video. In theory it should also reduce bus bandwidth requirements. Savings will be most dramatic with slow CPUs or when playing HD content. MythTV can be compiled to use XvMC for native playback. External players such as Xine and Mplayer can also be compiled to support XvMC. (Xine's plugin is oddly named xxmc.)


Software

Drivers

Unless otherwise noted, any mention of Nvidia hardware implies the use of the recommended Nvidia driver version for MythTV at the time of this writing: 1.0.7676

Supported Video Formats

Currently, only MPEG-2 is supported. This is usually a hardware limitation. As an exception, one of the Unichrome chips is capable of XvMC accelerated MPEG-4 playback, but the Unichrome driver doesn't support that functionality at the time of this writing.

Hardware

XvMC is currently supported in XOrg and thus MythTV on certain Nvidia and Unichrome video card hardware. Sadly, XvMC is not currently supported by the ATI drivers, even though the hardware is capable.

Example CPU Savings

  • A 2.93Ghz Celeron D w/1Gb DDR 3200 SDRAM with an Nvidia FX 5200 playing SD content uses between 8-12% CPU with XvMC enabled. Between 10-14% without.
  • (Add your example Hardware/Software/Content/CPU stats here)

Tips and Tricks

Prebuffering Pause or stutter with Nvidia

If you are using MythTV version 0.19 with an Nvidia card and experience these symptoms:

  • mild to moderate playback stutter
  • NVP: Prebuffering pause in your frontend log

Try disabling OpenGL VSync.

OSD Flicker

If you are using MythTV version 0.18 and you experience severe OSD stutter or flicker when XvMC is enabled, try upgrading to 0.19. The OSD flicker is fixed for the author in 0.19 with an Nvidia FX 5200.

Greyscale OSD

MythTV version 0.19 ships with a hack to enable full color OSD with XvMC enabled. However, the hack is disabled by default. To enable it, read this.

The above link mentions:

  • Making a change to your xorg.conf file
  • And also making a change to your "settings table". The table referred to here is a MySQL table. Usually the database is named "mythconverg" and the table is named "settings". You can usually access your MySQL mythconverg database from the command line like this:
mysql -u root -p mythconverg

You will be prompted for a password. If you don't remember setting one up, try just pressing the ENTER key.

Here is the SQL you should use to make the change:

INSERT INTO settings SET value='UseChromaKeyOSD',data='1',hostname='yourhost';

But change 'yourhost' to the hostname that your frontend is running on.

  • Now restart X11 (for the xorg.conf change to take effect) and your frontend (for the SQL change to take effect) and see if it works!

External Links