Skip to topic | Skip to bottom
Home
Main
Main.LinuxHardwareInfoNvidia9800GTX+r1.4 - 27 Apr 2009 - 18:28 - PeterKnaggstopic end

Start of topic | Skip to actions

nVidia GeForce 9800 GTX+

The nVidia 9800 GTX+ is available with a PCI Express interface.

To playback 720p or 1080i high definition video, nVidia have contributed a new API called VDPAU (Video Decode and Presentation API for Unix), and it's available in Ubuntu "Jaunty" 9.04 distribution (which has revision 180.44 of the nVidia restricted drivers -- you need at least revision 180.35 for the restricted drivers to support VDPAU). The list of GPUs which support VDPAU can be found on the mythtv wiki, and you can use vdpinfo to check too.

The CPU utilization when using VDPAU to playback 1080i high definition video is very low (in the range of 1 to 2 percent) compared to VxMC.

The SVN version of mplayer has the code to use the new VDPAU API, and you can build it as explained here by Adrian Veidt, as follows.

sudo apt-get install build-essential subversion
sudo apt-get build-dep mplayer
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
cd $HOME/mplayer
./configure
make 

Remember to disable the Composite extension to prevent "tearing" during panning of the video during playback by adding the following to your /etc/X11/xorg.conf file, and restart your desktop session using sudo invoke-rc.d gdm restart. Doing this will of course also disable the "Desktop Effects", unfortunately.

#
# Add the following to your /etc/X11/xorg.conf file,
# to prevent "tearing" during video playback.
#
Section "Extensions"
    Option         "Composite" "Disable"
EndSection

Then, to playback a captured 1080i high definition video (e.g. ATSC.ts) using mplayer with the nVidia 9800 GTX+ card, you can enable motion adaptive temporal deinterlacing with edge-guided spatial interpolation using the following flags.

$HOME/mplayer/mplayer -framedrop -fs -monitoraspect 16:9 -ao alsa -ac hwac3 -vo vdpau:deint=4 -vc ffmpeg12vdpau ATSC.ts

To playback 720p transport streams, you don't need the deinterlace flag:

$HOME/mplayer/mplayer -framedrop -fs -monitoraspect 16:9 -ao alsa -ac hwac3 -vo vdpau -vc ffmpeg12vdpau ATSC.ts

I've found that unless the -framedrop flag is included, the audio gets out of sync with the video, so some frames are still being dropped. Not sure why, as CPU utilization is so low.

TwinView

To "clone" the same display on both your TV and monitor, you can use nVidia's TwinView feature. See here for a sample /etc/X11/xorg.conf for how a Dell 2405 FPW (left-hand DVI port) and Samsung LN40A630 TV (right-hand DVI port, via a DVI-to-HDMI connector) can be configured to display the same desktop. See the nVidia manual chapter 13 for where TwinView and MetaModes are explained,

With the above configuration, since the desktop size on the TV is still 1920x1200, but the TV can only display 1920x1080, the top and bottom gnome "panels" cannot be seen when you log in. One way to work around this is to use a method traditionally used to work around overscan (which is described here) to reposition the gnome panels as follows.

  1. Change the offset values using gconf-editor: press Alt F2 to open a command line and enter gconf-editor.
  2. In the editor: apps -> panel -> toplevels -> top_panel_screen_0, and in the window on the right, uncheck expand and change the setting for y_bottom to 1113. This is the new distance of the top panel from the bottom of the screen.
  3. In the editor: apps -> panel -> toplevels -> bottom_panel_screen_0, and in the window on the right, uncheck expand and change the setting for y_bottom to 60. This is the new distance of the bottom panel from the bottom of the screen.
  4. Also, for both the top and bottom panels, check the enable_buttons checkbox, to allow the panel to be hidden manualy (by pressing either of the little arrow buttons it then displays at each end), since auto-hide doesn't work properly when y_bottom is modified.

If you use Compiz, it is also possible to create window rules to define how your windows should maximize and offset accordingly. There is a forum thread on the topic here.

Enabling TwinView causes an unexpected bug (see launchpad bug 235768) in the Enhanced Zoom feature of Compiz-fusion, but the workaround is as follows.

  1. Install CompizConfig Settings Manager using sudo apt-get install compizconfig-settings-manager.
  2. Go to System -> Preferences -> CompizConfig Settings Manager.
  3. go to General Options and select the Display Settings tab.
  4. Untick the Detect outputs checkbox.
  5. Delete the output shown in Outputs list just below, by selecting it and clicking the Delete button.

  • xorg.conf: Sample /etc/X11/xorg.conf for an nVidia GeForce 9800 GTX+ driving a Samsung LN40A630. Note that you should avoid using HDMI port number 2 (the "PC" port) for video playback on the Samsung LN40A630, as the colors are unnaturally gray and lifeless compared to those available when you use HDMI ports 1 and 3 instead.

  • TwinView_xorg.conf: TwinView Clone configuration with Dell 2405 FPW and Samsung LN40A630 TV

to top

I Attachment sort Action Size Date Who Comment
xorg.conf manage 1.8 K 24 Apr 2009 - 03:59 PeterKnaggs /etc/X11/xorg.conf for an nVidia GeForce 9800 GTX+ driving a Samsung LN40A630
TwinView_xorg.conf manage 2.0 K 26 Apr 2009 - 19:02 PeterKnaggs TwinView? Clone configuration with Dell 2405 FPW and Samsung LN40A630 TV

You are here: Main > TWikiUsers > PeterKnaggs > LinuxHints > LinuxHardwareInfo > LinuxHardwareInfoNvidia9800GTX+

to top

Copyright © 1999-2010 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback