Configuring NVidia TV Out on XBMCbuntu

Old CRTs Need TV Out

While its importance is waning, many people still run their home theater screens through the TV Out connection of their computer. It is therefor a little strange that many PVR/HTPC distributions don’t offer good support for configuring your TV output. This article shows how to setup your NVidia graphics card on XBMCbuntu for TV Out. Most of the same principals will apply to other distributions. Even if you don’t have an NVidia card, you might pick up a thing or two to get you started.

First, this tutorial is not for the faint of hearted. If you’ve never used a shell prompt or used any Linux desktop, there are bound to be some steps that are not very clear. Feel free to ask clarification in the forums.

XBMCbuntu comes with NVidia’s proper commercial drivers installed. In theory, this should make it easy to set configure everything. There are, however, a few hoops that you will have to jump through.

Getting into the Desktop

During the setup, you’ll need to go through the Openbox desktop environment a few times. By default, XBMCbuntu automatically launches into XBMC. To get into the desktop, do the following:

  • Exit XBMC (don’t shutdown, or reboot, just close it)
  • You should end up at a login prompt, showing your username
  • At the bottom of the login box is a dropdown, currently “XBMC” will be selected.
  • Open the dropdown and select XBMCbuntu
  • Log in using your password
  • You should now be in a desktop environment, similar to Windows (XBMC background and a menu bar at the bottom)

The XBMCbuntu desktop

 

The login manager will remember your choice, so if you want to change it back to XBMC, do the following:

  • Click on the start button (the XBMC icon in the bottom left corner)
  • Click logout and choose logout from the menu.
  • You’ll find yourself in the same login menu as above.
  • Pick XBMC, login and you’re set.

Enabling Dynamic Twin View

Dynamic Twin View (DTV) is an NVidia technology that makes it possible to have separate configuration for the different monitors attached to your computer. It’s by far the easiest way to configure your TV out and still have your normal monitor functioning for troubleshooting.

It’s also disabled by default on XBMCbuntu. I’m not sure why, but I’m guessing it’s for compatibility purposes.

To verify whether or not DTV is enabled open the NVidia X Server Settings program:

  • Start > System Tools > NVIDIA X Server Settings
  • In the left column click on “X Server Display Configuration”

If DTV is disabled you’ll get the message

Unable to load X Server Display Configuration Page: nvidia-settings currently
does not support scanout screens (0) that have dynamic twinview disabled.

Enabling it requires you to go through the shell:

  • Start > System Tools > XTerm
  • You’ll now see the shell prompt and need to edit the “/etc/X11/xorg.conf” as root.
  • You can use any editor you prefer, for instance:
> "sudo vi /etc/X11/xorg.conf"
  • Find the line that reads:
Option "DynamicTwinView" "False"
  • Remove the line or comment it out by placing a “#” at the start of the line.
  • Save the file

Now log out of the desktop and log back on. If you check the NVidia settings program again, you now should be able to access the “X Server Display Configuration” screen.

The NVidia Display Configuration Screen with One Monitor Disabled

Configuring the TV screen

The settings you’ll enter here will vary greatly depending on your TV. I suggest you start with a low resolution and work from there:

  • You should see two screens. Click on the TV screen (it probably says “disabled” right now)
  • In the configuration dropdown, select “Seperate X screen”
  • As resolution, “auto” works for me, but if you want to be save, start with a low resolution (800×600 for instance). You can always change this later.

Now click on “Save X Configuration File” and click on “Save” one more time.

If you receive a permission error, it’s probably because you don’t have python-gtk2 installed (don’t ask, I don’t see the connection either)

Install it from the shell with the following command:

> sudo apt-get install python-gtk2

That should enable saving of the file (you’ll still need to enter your password)

Now log out and log back in.

Setting the TV Out Format and Standard

I still had one problem: the TV was displaying a black and white picture because the graphics card was using an incorrect TV output format. I don’t think most people will encounter this. But if you do, here’s how you solve it:

Movies!

If you intend to disconnect your normal screen, it’s best to add these configurations to all screen sections. Your TV screen is probably Screen 1 right now, but when you disconnect the other screen, it will become Screen 0.

Movie Time

Well, that’s all there is to it. Not exactly easy or user friendly and there really is no reason why it couldn’t be made a little easier (for instance, without needing to manually edit xorg.conf or install packages). But you’ll only have to do this once, so you are set now.

Comments and questions are welcomed in the forum!