TV Out

If you are having trouble getting TV-Out functionality on a Radeon graphics card below Radeon 9500, the following instructions may help you. This method patches the open Xorg open source drivers with a tv-out patch from the GATOS project. These instructions have only been tested with Ubuntu Edgy.

Try these instructions if installing the proprietary drivers gives you a "high gamma" or "washed out" looking screen whenever the TV jack on card is in use at boot-time, or if your card is a Radeon with TV-Out that is not supported at all by the proprietary ATI drivers (fglrx).

Download Prerequisites
First, install driver and other needed packages. Copy/enter the following into the terminal.

sudo apt-get install build-essential libdrm-dev mesa-common-dev \ render-dev x11proto-core-dev x11proto-fonts-dev x11proto-gl-dev \ x11proto-randr-dev x11proto-video-dev x11proto-xext-dev \ x11proto-xf86dri-dev x11proto-xf86misc-dev x11proto-xinerama-dev \ xserver-xorg-dev pkg-config

Patching
Second, use wget in terminal to download the driver and patch

mkdir ~/ati; cd ~/ati wget http://megahurts.dk/rune/stuff/xorg7.1-6.6.3-tv_output.patch.gz      wget http://xorg.freedesktop.org/releases/individual/driver/xf86-video-ati-6.6.3.tar.bz2
 * Note the above command is very wide, make sure you copy it all.

Next, patch the driver

tar xjvf xf86-video-ati-6.6.3.tar.bz2 gunzip -c xorg7.1-6.6.3-tv_output.patch.gz | patch -p1 -d xf86-video-ati-6.6.3

Building
Next, configure, build and install the driver

cd xf86-video-ati-6.6.3 export XORG_PREFIX="/usr" export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var" ./configure $XORG_CONFIG --with-xorg-module-dir=$XORG_PREFIX/lib/xorg/modules make sudo make install


 * Note, using "sudo" will cause the terminal to ask for your password.

Configuration
Lastly, tweak xorg.conf by entering

sudo gedit /etc/X11/xorg.conf

and editing it with the following changes, note the specified lines:

Section "Device" Identifier "" Driver "ati"               #<-Important line here BusID "PCI:1:0:0" Option "TVOutput" "NTSC"   #<-Important line here EndSection

Section "Monitor" Identifier "SyncMaster" HorizSync 30 - 50          #<-Important line here VertRefresh 60 - 60        #<-Important line here Option "DPMS" EndSection

Section "Screen" Identifier "Default Screen" Device "" Monitor "SyncMaster" DefaultDepth 24            #<-Important line here SubSection "Display"       #<-Important line here Depth 24              #<-Important line here Modes "800x600"       #<-Important line here EndSubSection              #<-Important line here EndSection

After this point, check for any typos, and save the file.

Then press CTRL+ALT+Backspace to restart X. If all went well, you should come back up to the login screen and your TV-out should be working fine. If its not up at this point, but you do come back up to a login screen, try rebooting with the tv cable plugged in.

Utilities
There is a utility called tvo_set which allows you to tweak the tv out options. It requires more headers:

sudo apt-get install libxv-dev

Now head back into the source directory:

cd ~/ati/xf86-video-ati-6.6.3/src/tvo_set/

xmkmf make sudo make install

The readme for tvo_set can be found in:

~/ati/xf86-video-ati-6.6.3/src/README.tvout