Difference between revisions of "DViCO FusionHDTV DVB-T Dual Digital Installation"
(→TV Out Setup) |
m (I for an i. ... I've an outstanding query with the OED over the validity of the word 'framey') |
||
(35 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{Cleanup|msg=This page should be cleared off in preparation for deletion. Tuner specific information should be migrated to the [http://linuxtv.org/wiki/index.php/Main_Page LinuxTV Wiki], and any additional information moved to more generic pages. Discuss the issue on the [[Talk:{{PAGENAME}}|talk page]]}} | ||
+ | |||
+ | = Ubuntu 10.04 Installation = | ||
+ | |||
+ | The DViCO Dual Digital 2 works out of the box in Ubuntu 10.04, except you'll need to "enable proprietary drivers" for the DVB firmware. | ||
+ | |||
= Ubuntu 6.10 Installation = | = Ubuntu 6.10 Installation = | ||
+ | |||
+ | {{Note box| Ubuntu 9.10 version at: [[DViCO_FusionHDTV_DVB-T_Dual_Digital_4_Installation]]}} | ||
This documentation is my working notes for installing the DViCO FusionHDTV DVB-T Dual Digital onto an Ubuntu 6.10 (Edgy Eft) Distribution. Having had experience and frustrations with the Mythdora and Knoppmyth distros I had to start from scratch on Ubuntu and in my mind has been the easiest way. | This documentation is my working notes for installing the DViCO FusionHDTV DVB-T Dual Digital onto an Ubuntu 6.10 (Edgy Eft) Distribution. Having had experience and frustrations with the Mythdora and Knoppmyth distros I had to start from scratch on Ubuntu and in my mind has been the easiest way. | ||
Line 47: | Line 55: | ||
The card requires firmware to operate. To get the firmware to the following: | The card requires firmware to operate. To get the firmware to the following: | ||
− | cd /lib/firmware/2.6.17-11-generic/ | + | cd /lib/firmware/2.6.17-11-generic/ |
− | wget http://www.linuxtv.org/downloads/firmware/dvb-usb-bluebird-01.fw | + | wget http://www.linuxtv.org/downloads/firmware/dvb-usb-bluebird-01.fw |
===USB Problem=== | ===USB Problem=== | ||
− | I have had a problem with the usb which may be fixed in the next release of | + | I have had a problem with the usb which may be fixed in the next release of Ubuntu. Let me step you through it if you get this problem. |
1. unplug and replug your usb | 1. unplug and replug your usb | ||
Line 121: | Line 129: | ||
gedit /etc/rc.local | gedit /etc/rc.local | ||
− | + | {{Code box|/etc/rc.local| | |
+ | <pre> | ||
rmmod "ehci_hcd"; | rmmod "ehci_hcd"; | ||
sleep 3; | sleep 3; | ||
modprobe "ehci_hcd"; | modprobe "ehci_hcd"; | ||
exit 0 | exit 0 | ||
− | + | </pre> | |
− | Also notice in the last dmesg that the IR | + | }} |
+ | Also notice in the last dmesg that the IR receiver was registered on /class/input/input3. To test the remote do: | ||
#cat /dev/input/event3 | #cat /dev/input/event3 | ||
Line 174: | Line 184: | ||
==Getting Your Australian Channel Listings== | ==Getting Your Australian Channel Listings== | ||
− | My personal preference is to head over to http:// | + | My personal preference is to head over to http://www.oztivo.net/twiki/bin/view/Guidedata/WebHome and [http://www.oztivo.net/twiki/bin/view/TWiki/TWikiRegistration Sign Up]. |
− | After that is done click on the [http:// | + | After that is done click on the [http://www.oztivo.net/tivo-bin/tvguide.pl TV Guide web interface] and choose your channel listings that you wish to download. For me that was: 7TWO, ABC-Qld, ABC2, GO, Nine-Qld, One-Qld, SBS-Qld, SBSTWO-Qld, Seven-Qld, Ten-Qld |
Now we need to make a script to download our listings each day and put it in our database: | Now we need to make a script to download our listings each day and put it in our database: | ||
Line 183: | Line 193: | ||
Paste the following into tvlistings_tvg and replace username:password with your tvguide username and password. | Paste the following into tvlistings_tvg and replace username:password with your tvguide username and password. | ||
− | + | <pre> | |
#!/bin/bash | #!/bin/bash | ||
# Get the guide for the channels we receive | # Get the guide for the channels we receive | ||
− | wget --header="accept-encoding: gzip" --output-document=/home/mythtv/tvlistings_tvg.xml.gz http:// | + | wget --header="accept-encoding: gzip" --output-document=/home/mythtv/tvlistings_tvg.xml.gz http://Username:Password@minnie.tuhs.org/tivo-bin/xmlguide.pl |
# unzip the downloaded file | # unzip the downloaded file | ||
gunzip -f /home/mythtv/tvlistings_tvg.xml.gz | gunzip -f /home/mythtv/tvlistings_tvg.xml.gz | ||
# run mythfilldatabase to load it into the guide | # run mythfilldatabase to load it into the guide | ||
mythfilldatabase --file 1 7 /home/mythtv/tvlistings_tvg.xml | mythfilldatabase --file 1 7 /home/mythtv/tvlistings_tvg.xml | ||
+ | </pre> | ||
Save and close and make the script runable, and check to see that it works: | Save and close and make the script runable, and check to see that it works: | ||
Line 201: | Line 212: | ||
==MythWeb Setup== | ==MythWeb Setup== | ||
− | After you ran tvlisting_tvg the mythfilldatabase section should of complained that it | + | After you ran tvlisting_tvg the mythfilldatabase section should of complained that it couldn't find certain channels. This is because we haven't mapped the XMLID of the tvlisting channels to the scanned channels. The easiest way to do this is through mythweb. |
To get mythweb going you will need to do a few things firstly change the permissions on the directories: | To get mythweb going you will need to do a few things firstly change the permissions on the directories: | ||
Line 271: | Line 282: | ||
Now enter the names for the buttons. | Now enter the names for the buttons. | ||
− | You must get dots when holding down a key and nothing else. If you | + | You must get dots when holding down a key and nothing else. If you don't get dots or other symbols are showing up then you either have a driver problem or are using the wrong input. Otherwise bob.txt will hold all your keys. Also I found that it wants to set the toggle bit to 1 in bob.txt. This is wrong as you will most likely get multiple keypresses sent. Set toggle_bit=0. |
+ | |||
+ | Sometimes irrecord sets an incorrect toggle_bit_mask as well. Mine was set to 0x80000000 and I suffered from duplicate events on every keypress. Changing it to toggle_bit_mask 0x16000000 fixed this problem for me. | ||
If you have come this far then your remote is working like a charm. Time to map the keys and make lircd run automatically. This is done with 3 files: | If you have come this far then your remote is working like a charm. Time to map the keys and make lircd run automatically. This is done with 3 files: | ||
Line 278: | Line 291: | ||
Make sure you modify your DRIVER and DEVICE to be the same as you used for irrecord. I also changed START_LIRCMD=false for some reason. | Make sure you modify your DRIVER and DEVICE to be the same as you used for irrecord. I also changed START_LIRCMD=false for some reason. | ||
− | + | {{Code box|/etc/lirc/hardware.conf| | |
+ | <pre> | ||
# /etc/lirc/hardware.conf | # /etc/lirc/hardware.conf | ||
# | # | ||
Line 299: | Line 313: | ||
LIRCD_CONF="/etc/lircd/lircd.conf" | LIRCD_CONF="/etc/lircd/lircd.conf" | ||
LIRCMD_CONF="" | LIRCMD_CONF="" | ||
− | + | </pre> | |
+ | }} | ||
gedit /etc/lirc/lircd.conf | gedit /etc/lirc/lircd.conf | ||
− | + | {{Code box|/etc/lirc/lircd.conf| | |
+ | <pre> | ||
# Please make this file available to others | # Please make this file available to others | ||
# by sending it to <lirc@bartelmus.de> | # by sending it to <lirc@bartelmus.de> | ||
Line 384: | Line 400: | ||
end codes | end codes | ||
end remote | end remote | ||
− | + | </pre> | |
+ | }} | ||
Ok since we have set up these two files lets check our work. | Ok since we have set up these two files lets check our work. | ||
Line 403: | Line 420: | ||
Great Now we have to map these keys so that mythtv can use them. which brings us to our final file lircrc. You should save this file in your user directory as it is for personal mappings of the remote. | Great Now we have to map these keys so that mythtv can use them. which brings us to our final file lircrc. You should save this file in your user directory as it is for personal mappings of the remote. | ||
− | + | {{Code box|lircrc| | |
+ | <pre> | ||
# lircrc.example.DVICO-nativelirc | # lircrc.example.DVICO-nativelirc | ||
# 2004-07-04, Chris Pascoe | # 2004-07-04, Chris Pascoe | ||
Line 834: | Line 852: | ||
config = Volume- | config = Volume- | ||
end | end | ||
− | + | </pre> | |
+ | }} | ||
=== Remote Not Working after reboot === | === Remote Not Working after reboot === | ||
Line 852: | Line 871: | ||
gedit /etc/lirc/hardware.conf | gedit /etc/lirc/hardware.conf | ||
− | + | {{Code box|/etc/lirc/hardware.conf| | |
+ | <pre> | ||
# If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be | # If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be | ||
# automatically used instead | # automatically used instead | ||
− | + | DEVICE="/dev/input/irremote" | |
MODULES="" | MODULES="" | ||
+ | </pre> | ||
+ | }} | ||
+ | /etc/init.d/lirc restart | ||
+ | |||
+ | === Make your power button start MythTV === | ||
− | /etc/init.d/ | + | Taken from the [http://wilsonet.com/mythtv/tips.php FedoraMyth Tips and Tricks Section]. |
+ | To start and stop your mythfrontend using your remote first you must enable irexec to run in the background. This is simply done using the command: | ||
+ | |||
+ | irexec -d | ||
+ | |||
+ | We will add this to our /etc/rc.local file to have this start on boot: | ||
+ | |||
+ | {{Code box|/etc/rc.local| | ||
+ | <pre> | ||
+ | irexec -d | ||
+ | </pre> | ||
+ | }} | ||
+ | |||
+ | Now we need to create a mythpowerbutton.sh script in your /usr/local/bin to start and kill the mythfrontend process: | ||
+ | |||
+ | {{Code box|/usr/local/bin/mythpowerbutton.sh| | ||
+ | <pre> | ||
+ | #!/bin/bash | ||
+ | PROG=mythfrontend | ||
+ | STATUS=`ps -e | grep $PROG | grep -v grep | wc -l | awk '{print $1}'` | ||
+ | |||
+ | if [ `echo $DISPLAY | grep -c ":0"` -ge 1 ] | ||
+ | then | ||
+ | if [ $STATUS -eq 0 ] | ||
+ | then | ||
+ | ( $PROG & ) | ||
+ | else | ||
+ | killall $PROG | ||
+ | fi | ||
+ | fi | ||
+ | exit 0 | ||
+ | </pre> | ||
+ | }} | ||
+ | |||
+ | And dont forget to make it executable: | ||
+ | |||
+ | chmod 777 /usr/local/bin/mythpowerbutton.sh | ||
+ | |||
+ | Next edit your ~/.lircrc file to bind your power button. Add the following lines: | ||
+ | |||
+ | {{Code box|~/.lircrc| | ||
+ | <pre> | ||
+ | # Power Button | ||
+ | begin | ||
+ | prog = irexec | ||
+ | button = power | ||
+ | config = /usr/local/bin/mythpowerbutton.sh | ||
+ | end | ||
+ | </pre> | ||
+ | }} | ||
+ | |||
+ | Now restart lircd to reread your file and restart the irexec daemon (beacuse lircd will shut it down): | ||
+ | |||
+ | sudo /etc/init.d/lircd restart | ||
+ | irexec -d | ||
+ | |||
+ | Now Press your power button (wait a few moments for it to load) and MythTV frontend should spring into view. Press it again and it sould kill the process. Perfect wife/girlfriend proof restart procedure. | ||
== VLC DVD and Media Player== | == VLC DVD and Media Player== | ||
Line 869: | Line 950: | ||
gedit ~/.lircrc | gedit ~/.lircrc | ||
+ | {{Code box|~/.lircrc| | ||
+ | <pre> | ||
# lircrc for VLC | # lircrc for VLC | ||
# | # | ||
Line 1,148: | Line 1,231: | ||
config = key-quit | config = key-quit | ||
end | end | ||
− | + | </pre> | |
+ | }} | ||
*Finally run mythfrontend > Utilities/Setup > Setup > Media Settings > Video Settings > Player Settings | *Finally run mythfrontend > Utilities/Setup > Setup > Media Settings > Video Settings > Player Settings | ||
*Set VLC to run fullscreen with remote: vlc --control=lirc -f %s | *Set VLC to run fullscreen with remote: vlc --control=lirc -f %s | ||
Line 1,160: | Line 1,244: | ||
My TV Out setup was pretty simple I changed my /etc/X11/xorg.conf file so that my screen would be extended to the right. | My TV Out setup was pretty simple I changed my /etc/X11/xorg.conf file so that my screen would be extended to the right. | ||
− | '''Important Point:''' Remember after changing your xconf file that you reboot with your '''TV ON''' and '''PLUGGED IN''' to your computer! | + | [[Image:Important.png]] '''Important Point:''' Remember after changing your xconf file that you reboot with your '''TV ON''' and '''PLUGGED IN''' to your computer! |
+ | |||
When your computer boots typically you will see the boot splash on both screens. When the login page appears you may see a NVIDIA logo on the tv and then it will go black. When you log in the TV will light back up. | When your computer boots typically you will see the boot splash on both screens. When the login page appears you may see a NVIDIA logo on the tv and then it will go black. When you log in the TV will light back up. | ||
Line 1,167: | Line 1,252: | ||
The interesting parts of my /etc/X11/xorg.conf: | The interesting parts of my /etc/X11/xorg.conf: | ||
− | + | {{Code box|/etc/X11/xorg.conf| | |
+ | <pre> | ||
#My 2 NVIDIA Device's (Same card with two outputs VGA and TV Out) | #My 2 NVIDIA Device's (Same card with two outputs VGA and TV Out) | ||
Section "Device" | Section "Device" | ||
Line 1,234: | Line 1,320: | ||
InputDevice "eraser" "SendCoreEvents" | InputDevice "eraser" "SendCoreEvents" | ||
EndSection | EndSection | ||
− | + | </pre> | |
+ | }} | ||
===ATI Radeon=== | ===ATI Radeon=== | ||
+ | {{Warning box|Overall I do not recommend this option at all. It is time consuming and very frustrating to get this to work and even then I was still getting segfaults and unexpected mythbackend crashes. Myth should be as reliable as possible so I recommend that you get yourself a nice cheap NVidia card (The extra $20 will save you days of work). In the end I gave up and will be going back to a Nvidia card. You have been warned!}} | ||
+ | {{Note box|AMD has released 900+ Pages Of ATI GPU Specs (12th September 2007) - so decent linux support for ATI is finally coming}} | ||
− | I recently switched out my card from my expensive NVidia to an cheap ($50) Ati X300 with TV out. It turned out to be a major pain in the ass. All over the place | + | I recently switched out my card from my expensive NVidia to an cheap ($50) Ati X300 with TV out. It turned out to be a major pain in the ass. All over the place I was getting slow framerates with mythfrontend messages saying my system cannot cope with the current 800x600 output?!. Anyway after about 10hours of mucking around with the thing I finally got a '''Semi''' working config. Dual screens and running 1280x1024 on my LCD and 800x600 on my TV. A few things I learned along the way: |
− | * I tried the free "radeon" driver. My monitor worked - TV was displaying | + | * I tried the free "radeon" driver. My monitor worked - TV was displaying color but I couldn't get it synced properly |
* the proprietary "fglrx" driver works but has these problems: | * the proprietary "fglrx" driver works but has these problems: | ||
− | ** X is a little unstable. When restarting the X Server (Ctrl-Alt-Backspace) sometimes it | + | ** X is a little unstable. When restarting the X Server (Ctrl-Alt-Backspace) sometimes it won't restart properly.. requiring a reboot >:( |
− | ** The Xv video overlay (Which Myth Uses) Stretches the TV Vertically so you only see half. | + | ** The Xv video overlay (Which Myth Uses) Stretches the TV Vertically so you only see half. Ati need to fix this in their driver. |
** The OpenGL Overlay consumes too much resources and the TV gets framey | ** The OpenGL Overlay consumes too much resources and the TV gets framey | ||
− | ** I had to use the textured video to get it working | + | ** I had to use the textured video to get it working... although I was seeing blue people! |
− | * Make sure you restart x properly. A Logout | + | * Make sure you restart x properly. A Logout doesn't work. Use Ctrl-Alt-Backspace or /etc/init.d/gdm restart |
+ | |||
+ | A good guide for installing ATI drivers can be found here: [http://wiki.cchtml.com/index.php/Ubuntu_Edgy_Installation_Guide Ubuntu_Edgy_Installation_Guide] | ||
+ | |||
+ | ====Installation==== | ||
− | + | * Go to ATI's website and download their driver. chmod 755 and run it as sudo. | |
+ | * Set up your /etc/X11/xorg.conf | ||
aticonfig --initial=dual-head | aticonfig --initial=dual-head | ||
+ | |||
+ | * Restart your x-server | ||
+ | |||
+ | sudo /etc/init.d/gdm restart | ||
+ | |||
+ | That should have your tv out working at least. Reboot if necessary and have your svideo plugged into your tv and make sure your tv is on so that it can autodetect. You should see the bootsplash on both your monitor and tv. (Funnily enough the TV seems to be updated faster than my monitor!). The following is tweaks made to your xorg.conf file to get myth running smoothly on your tv out: | ||
Here are the interesting parts of my xorg.conf with the extras I added in bold: | Here are the interesting parts of my xorg.conf with the extras I added in bold: | ||
+ | {{Code box|/etc/X11/xorg.conf| | ||
Section "Monitor" | Section "Monitor" | ||
Line 1,269: | Line 1,370: | ||
Section "Device" | Section "Device" | ||
Identifier "aticonfig-Device[0]" | Identifier "aticonfig-Device[0]" | ||
− | + | Driver "fglrx" | |
− | + | '''Option "UseFBDev" "false"''' | |
− | + | '''Option "VideoOverlay" "on"''' | |
− | + | '''Option "OpenGLOverlay" "off"''' | |
− | + | '''Option "TVFormat" "PAL-B"''' | |
− | + | '''# Option "TVOverscan" "on"''' | |
+ | '''Option "ForceMonitors" "crt1,tv"''' | ||
+ | '''Option "DesktopSetup" "mirror"''' | ||
+ | '''Option "OverlayOnCRTC2" "1"''' | ||
+ | '''Option "TexturedVideo" "on"''' | ||
+ | '''Option "EnableMonitor" "crt1,tv"''' | ||
BusID "PCI:5:0:0" | BusID "PCI:5:0:0" | ||
EndSection | EndSection | ||
Line 1,318: | Line 1,424: | ||
InputDevice "eraser" "SendCoreEvents" | InputDevice "eraser" "SendCoreEvents" | ||
EndSection | EndSection | ||
+ | |||
+ | '''Section "Extensions"''' | ||
+ | '''Option "Composite" "0"''' | ||
+ | '''EndSection''' | ||
+ | |||
+ | '''Section "DRI"''' | ||
+ | '''Mode 0666''' | ||
+ | '''EndSection''' | ||
+ | |||
+ | }} | ||
+ | |||
+ | ====Blue People Fix==== | ||
+ | |||
+ | I sourced this from the following thread: [http://ubuntuforums.org/showpost.php?p=2087858&postcount=39 Overlay on TV-Out stretched] | ||
+ | |||
+ | When you use the texturedvideo overlay you will probably see blue people. To get around this problem there is a flag in the myth source to use ATI's drivers: USE_ATI_PROPRIETARY_DRIVER_XVIDEO_HACK. Luckily some nice folks have already compiled it for us. You can get it here:[http://librarian.launchpad.net/5597854/libmyth-0.20_0.20-0.2ubuntu2_i386.deb LibMyth0.20]. | ||
+ | |||
+ | *Download it to your desktop and run it. | ||
+ | *Stop the backend server, run myth setup then quit, restart the back end server and then try it out: | ||
+ | /etc/init.d/mythbackend stop | ||
+ | mythtv-setup | ||
+ | /etc/init.d/mythbackend start | ||
+ | mythtv | ||
+ | |||
+ | If all goes well you should see no more smurfs | ||
== DVD Ripping == | == DVD Ripping == | ||
Line 1,328: | Line 1,459: | ||
gedit /etc/rc.local | gedit /etc/rc.local | ||
+ | {{Code box|/etc/rc.local| | ||
+ | <pre> | ||
+ | mtd -d | ||
+ | </pre> | ||
+ | }} | ||
− | + | == Connecting to Your MythBox Remotely == | |
− | + | If your like me and you dont have a monitor attached to your mythbox you can easily connect to your Desktop using VNC. | |
+ | On your desktop go to: | ||
− | + | #System > Preferences > Remote Desktop | |
− | + | #Make sure all of these are checked | |
− | + | ##[checked] Allow Others to View your desktop | |
+ | ##[checked] Allow Others to Control your desktop | ||
+ | ##[checked] Reqire the user to enter this password [******] | ||
− | |||
− | + | Thats it for the MythBox. Now you can connect from your remote computer (Windows / Linux / Java) using this free small footprint tool: [http://www.tightvnc.com/ Tight VNC] | |
− | |||
− | |||
== Recommended Reading == | == Recommended Reading == | ||
Line 1,358: | Line 1,494: | ||
[http://gentoo-wiki.com/HOWTO_VLC#LIRC HOWTO VLC] | [http://gentoo-wiki.com/HOWTO_VLC#LIRC HOWTO VLC] | ||
+ | |||
+ | [http://www.cse.unsw.edu.au/~willu/xmltv/index.html Australian TV Grabbers] | ||
[[Category:HOWTO]] | [[Category:HOWTO]] |
Revision as of 19:01, 10 October 2010
Cleanup: This page should be cleared off in preparation for deletion. Tuner specific information should be migrated to the LinuxTV Wiki, and any additional information moved to more generic pages. Discuss the issue on the talk page
Contents
- 1 Ubuntu 10.04 Installation
- 2 Ubuntu 6.10 Installation
- 2.1 Before you Start
- 2.2 Card Source
- 2.3 Hardware
- 2.4 Kernel / Packages
- 2.5 Installing MythTV
- 2.6 Set up Myth TV
- 2.7 Getting Your Australian Channel Listings
- 2.8 MythWeb Setup
- 2.9 Map the XMLTVID
- 2.10 Remote Control (Lircd)
- 2.11 VLC DVD and Media Player
- 2.12 TV Out Setup
- 2.13 DVD Ripping
- 2.14 Connecting to Your MythBox Remotely
- 2.15 Recommended Reading
Ubuntu 10.04 Installation
The DViCO Dual Digital 2 works out of the box in Ubuntu 10.04, except you'll need to "enable proprietary drivers" for the DVB firmware.
Ubuntu 6.10 Installation
Note: Ubuntu 9.10 version at: DViCO_FusionHDTV_DVB-T_Dual_Digital_4_Installation
This documentation is my working notes for installing the DViCO FusionHDTV DVB-T Dual Digital onto an Ubuntu 6.10 (Edgy Eft) Distribution. Having had experience and frustrations with the Mythdora and Knoppmyth distros I had to start from scratch on Ubuntu and in my mind has been the easiest way.
Before you Start
Its a good idea sure your graphics card is installed and you can run glxgears: http://ubuntuguide.org/wiki/Ubuntu_Edgy#How_to_install_Beta_Graphics_Driver_.28NVIDIA.29
Card Source
Living on the Gold Coast in Queensland Australia, I picked up the card from http://www.gamedude.com.au. An alternate source is http://www.umart.com.au.
Hardware
Sound
When installing your card, ensure that you plug the dvico audio-out port into the CD-in port (or AUX, if you have one), on your sound card or directly into your motherboard if it has onboard sound. This is an on-card port in both cases - not one of the ones at the rear that you can access from outside your computer. A suitable cable is supplied with the Dual Digital.
2nd USB Tuner and Remote
The "DViCO FusionHDTV DVB-T Dual Tuner" card has two tuners. One is PCI, the other is USB. You will either need to connect an external USB cable to your card, or use the supplied internal USB cable which connects to your motherboard. This will enable the second tuner and is needed for the remote to function.
Kernel / Packages
After installing Ubuntu Edgy do a full update. Edgy will prompt you to install updates as soon as its loaded. I ended up with the kernel 2.6.17-11-generic after a reboot. As soon as you have rebooted open a terminal and type dmesg to see that the PCI portion at least has been detected.
#dmesg
*snip* CORE cx88[0]: subsystem: 18ac:db50, board: DViCO FusionHDTV DVB-T Dual Digital [card=44,autodetected] TV tuner 4 at 0x1fe, Radio tuner -1 at 0x1fe ACPI: PCI Interrupt Link [APC1] enabled at IRQ 16 ACPI: PCI Interrupt 0000:05:08.2[A] -> Link [APC1] -> GSI 16 (level, low) -> IRQ 66 cx88[0]/2: found at 0000:05:08.2, rev: 5, irq: 66, latency: 32, mmio: 0xfa000000 cx88[0]/2: cx2388x based dvb card DVB: registering new adapter (cx88[0]). DVB: registering frontend 0 (Zarlink MT352 DVB-T)... *snip*
You should also see the directory /dev/dvb/adapter0
Firmware
The card requires firmware to operate. To get the firmware to the following:
cd /lib/firmware/2.6.17-11-generic/ wget http://www.linuxtv.org/downloads/firmware/dvb-usb-bluebird-01.fw
USB Problem
I have had a problem with the usb which may be fixed in the next release of Ubuntu. Let me step you through it if you get this problem.
1. unplug and replug your usb
#dmesg
usb 5-3: USB disconnect, address 2 usb 5-3: new high speed USB device using ehci_hcd and address 3 usb 5-3: config 1 has an invalid descriptor of length 1, skipping remainder of the config usb 5-3: config 1 has 0 interfaces, different from the descriptor's value: 1 usb 5-3: configuration #1 chosen from 1 choice
Looking at the error I noticed ehci_hcd so for the hell of it - I removed it!
#rmmod ehci_hcd #dmesg
ehci_hcd 0000:00:10.4: remove, state 1 usb usb5: USB disconnect, address 1 usb 5-3: USB disconnect, address 3 ehci_hcd 0000:00:10.4: USB bus 5 deregistered ACPI: PCI interrupt for device 0000:00:10.4 disabled usb 2-1: new full speed USB device using uhci_hcd and address 2 usb 2-1: config 1 has an invalid descriptor of length 1, skipping remainder of the config usb 2-1: configuration #1 chosen from 1 choice dvb-usb: found a 'DViCO FusionHDTV DVB-T Dual USB' in cold state, will try to load a firmware dvb-usb: downloading firmware from file 'dvb-usb-bluebird-01.fw' usbcore: registered new driver dvb_usb_cxusb usb 2-1: USB disconnect, address 2 dvb-usb: generic DVB-USB module successfully deinitialized and disconnected. usb 2-1: new full speed USB device using uhci_hcd and address 3 usb 2-1: configuration #1 chosen from 1 choice dvb-usb: found a 'DViCO FusionHDTV DVB-T Dual USB' in warm state. dvb-usb: This USB2.0 device cannot be run on a USB1.1 port. (it lacks a hardware PID filter) dvb-usb: DViCO FusionHDTV DVB-T Dual USB error while loading driver (-19) dvb_usb_cxusb: probe of 2-1:1.0 failed with error -22[/code]
In this dmesg you can see that it found our firmware that we downloaded and changed our USB from a cold state to a warm state. However it told us that it needs the usb2.0 drivers to work properly. So we will reload the module that we removed before.
#modprobe ehci_hcd #dmesg
ACPI: PCI Interrupt 0000:00:10.4[C] -> GSI 21 (level, low) -> IRQ 177 ehci_hcd 0000:00:10.4: EHCI Host Controller ehci_hcd 0000:00:10.4: new USB bus registered, assigned bus number 5 ehci_hcd 0000:00:10.4: irq 177, io mem 0xbb000000 ehci_hcd 0000:00:10.4: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 usb usb5: configuration #1 chosen from 1 choice hub 5-0:1.0: USB hub found hub 5-0:1.0: 8 ports detected usb 2-1: USB disconnect, address 3 usb 5-3: new high speed USB device using ehci_hcd and address 2 usb 5-3: configuration #1 chosen from 1 choice dvb-usb: found a 'DViCO FusionHDTV DVB-T Dual USB' in warm state. dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer. DVB: registering new adapter (DViCO FusionHDTV DVB-T Dual USB). DVB: registering frontend 1 (Zarlink MT352 DVB-T)... input: IR-receiver inside an USB DVB receiver as /class/input/input3 dvb-usb: schedule remote query interval to 150 msecs. dvb-usb: DViCO FusionHDTV DVB-T Dual USB successfully initialized and connected.
So there you have it, USB second tuner fully loaded and the remote is now working too. You should now have:
/dev/dvb/adapter0 - The PCI tuner /dev/dvb/adapter1 - The USB Tuner
To do this automatically on startup add this to your rc.local file
gedit /etc/rc.local
Also notice in the last dmesg that the IR receiver was registered on /class/input/input3. To test the remote do:
#cat /dev/input/event3
Now when you press a button on the remote you should see gibberish appear. This proves the remote is working.
Installing MythTV
- Go to: System > Administration > Synaptic, then select repositories, tick universe & multiverse then close. Click on reload, to reload the sources. Do all updates.
- Open synaptic again (typing synaptic at the terminal or Administration>Synaptic), search for "mysql-server" (should be mysql-server 5), right click on it and "mark to install", click apply and yes to all dependencies. Wait for it to finish.
- Stay in Synaptic and search "mythtv", then mark for installation, mythtvplugins, mythtv, mythtv-themes. Yes to all.
- After installation mythtv asks for a mysql password, just hit enter for both pop-ups. If you screw this up (like i did) go back to synaptic and search again for myuthtv and press Ctrl-A to select all, Right Click and Mark for complete removal. Then reinstall them.
Set up Myth TV
This is my quick and dirty setup. Leave the defaults for everything else (ie Next.. Next.. etc Finish).
- Run mythtv-setup
- Go into General > On the third page:
TV Format=PAL Chanel Frequency Table=Australia XML Time Offset=Auto
- Go into Capture Card > New Capture Card
Card Type=DVB DVT Capture Card (3.x) Card#=0 (If your usb is working you will also have card 1)
- Go into Video Sources > New Video Source
Video Source Name=vs1 XMLTV Listings Grabber=No Grabber (we will use our own later!) Channel Frequency Table=Default
- Go Into Input connections > DVB:0
Video Source=vs1 Press Scan For Channels
You should see all your channels being found. Wait for it to finish and we will proceed to the next step. If you want to come back here and your myth backend is running you can always stop and start the backend by using these commands:
/etc/init.d/mythbackend stop /etc/init.d/mythbackend start
Getting Your Australian Channel Listings
My personal preference is to head over to http://www.oztivo.net/twiki/bin/view/Guidedata/WebHome and Sign Up. After that is done click on the TV Guide web interface and choose your channel listings that you wish to download. For me that was: 7TWO, ABC-Qld, ABC2, GO, Nine-Qld, One-Qld, SBS-Qld, SBSTWO-Qld, Seven-Qld, Ten-Qld
Now we need to make a script to download our listings each day and put it in our database:
cd /etc/cron.daily gedit tvlistings_tvg
Paste the following into tvlistings_tvg and replace username:password with your tvguide username and password.
#!/bin/bash # Get the guide for the channels we receive wget --header="accept-encoding: gzip" --output-document=/home/mythtv/tvlistings_tvg.xml.gz http://Username:Password@minnie.tuhs.org/tivo-bin/xmlguide.pl # unzip the downloaded file gunzip -f /home/mythtv/tvlistings_tvg.xml.gz # run mythfilldatabase to load it into the guide mythfilldatabase --file 1 7 /home/mythtv/tvlistings_tvg.xml
Save and close and make the script runable, and check to see that it works:
chmod 755 tvlistings_tvg ./tvlistings_tvg
For additional reading about this check out TvGuides HOWTO for MythTV
MythWeb Setup
After you ran tvlisting_tvg the mythfilldatabase section should of complained that it couldn't find certain channels. This is because we haven't mapped the XMLID of the tvlisting channels to the scanned channels. The easiest way to do this is through mythweb.
To get mythweb going you will need to do a few things firstly change the permissions on the directories:
chown -R www-data:www-data /usr/share/mythtv/mythweb/data chmod 775 /usr/share/mythtv/mythweb/data chmod +t /usr/share/mythtv/mythweb/data chmod 777 /var/lib/mythtv
Next you will have to change the password in the mythweb-htaccess.conf file. So open up both files.
cd /etc/mythtv/ gedit mysql.txt mythweb-htaccess.conf
Cut and paste the password from mysql.txt into mythweb-htaccess.conf Line 53.
setenv db_server "localhost" setenv db_name "mythconverg" setenv db_login "mythtv" setenv db_password "ilqcjfws" <---------- used to be "mythtv"
Then open up a browser and go to http://localhost/mythweb/ to check your work.
Map the XMLTVID
You can map this in mythtv-setup but it is far easier to do it in mythweb.
- Open Myththweb > Settings (icon with the key and spanner) > MythTV channel info
- I mapped the following XMLTVID's:
Ten-Qld = 1 ABC-Qld = 2 SBS-Qld = 3 Seven-Qld = 7 Nine-Qld = 9 ABC2 = 22
You can change the visibility of the other scanned channels too if you want. In a terminal see if your daily cron job works now:
/etc/cron.daily/tvlistings_tvg
If that worked then you can go back to mythweb and check out your program listings :)
Remote Control (Lircd)
This I found to be the most painful as I was using the wrong driver for a long time. But after i switched it became a breeze. Now on my system i have 2 /dev/input/events that work when you press a button. When i do a cat /dev/input/event3 and press the 0 key on the remote this happens:
cat /dev/input/event3 0000 [Control-C to quit]
So it seems that this should be the one to use.... Unfortunately Not! Something else is parsing the input from your remote and is producing that. What you really want is something that produces binary gibberish when you press a button:
cat /dev/input/event4 ����E� �����E� [Control-C to quit]
If your screen is mangled from catting out that then you can type "reset" to reset your terminal. So now that we have determined what device we should use it is time to see if we can record our key presses. We will be using the driver dev/input and not the driver dvico like i did for way to many days. Another thing that may stop the following from working is if lircd is running. You can stop it by "/etc/init.d/lirc stop".
irrecord --driver=dev/input --device=/dev/input/event4 bob.txt
*snip* Press RETURN to continue. Hold down an arbitrary button. ................................................................................ Found gap length: 251753 Now enter the names for the buttons.
You must get dots when holding down a key and nothing else. If you don't get dots or other symbols are showing up then you either have a driver problem or are using the wrong input. Otherwise bob.txt will hold all your keys. Also I found that it wants to set the toggle bit to 1 in bob.txt. This is wrong as you will most likely get multiple keypresses sent. Set toggle_bit=0.
Sometimes irrecord sets an incorrect toggle_bit_mask as well. Mine was set to 0x80000000 and I suffered from duplicate events on every keypress. Changing it to toggle_bit_mask 0x16000000 fixed this problem for me.
If you have come this far then your remote is working like a charm. Time to map the keys and make lircd run automatically. This is done with 3 files:
gedit /etc/lirc/hardware.conf
Make sure you modify your DRIVER and DEVICE to be the same as you used for irrecord. I also changed START_LIRCMD=false for some reason.
# /etc/lirc/hardware.conf # # Arguments which will be used when launching lircd LIRCD_ARGS="" #Don't start lircmd even if there seems to be a good config file START_LIRCMD=false #Try to load appropriate kernel modules LOAD_MODULES=true # Run "lircd --driver=help" for a list of supported drivers. DRIVER="dev/input" # If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be # automatically used instead DEVICE="/dev/input/event4" MODULES=""<br> # Default configuration files for your hardware if any LIRCD_CONF="/etc/lircd/lircd.conf" LIRCMD_CONF=""
gedit /etc/lirc/lircd.conf
# Please make this file available to others # by sending it to <lirc@bartelmus.de> # # this config file was automatically generated # using lirc-0.8.0(userspace) on Mon Mar 5 16:00:35 2007 # # contributed by: Soth # # brand: DViCO FusionHDTV DVB-T Dual Digital # model no. of remote control: Fusion MCE # devices being controlled by this remote: # begin remote name DViCO_Dual_Digital bits 16 eps 30 aeps 100 one 0 0 zero 0 0 pre_data_bits 16 pre_data 0x1 gap 251756 toggle_bit 0 begin codes #starting at the top dtv 0x0179 mp3 0x0187 dvd 0x0185 cpf 0x016C #outer circle clockwise from top tvpower 0x0164 guide 0x016D info 0x0166 alttab 0x000F skip 0x00A3 start 0x001C replay 0x00A5 dvdmenu 0x008B back 0x009E setup 0x008D #inner circle up 0x0067 down 0x006C left 0x0069 right 0x006A ok 0x0160 #volume and channel voldn 0x0072 volup 0x0073 chup 0x0192 chdn 0x0193 #keypad camera 0x00D4 live 0x0182 folder 0x0086 1 0x0002 2 0x0003 3 0x0004 4 0x0005 5 0x0006 6 0x0007 7 0x0008 8 0x0009 9 0x000A aspect 0x0173 0 0x000B zoom 0x0174 #play buttons rew 0x00A8 playpause 0x00A4 ff 0x00D0 mute 0x0071 stop 0x0080 rec 0x00A7 power 0x0074 end codes end remote
Ok since we have set up these two files lets check our work.
/etc/init.d/lirc restart ps aux | grep lircd
root 12671 0.0 0.0 2740 572 ? Ss 16:27 0:00 /usr/sbin/lircd --driver=dev/input --device=/dev/input/event4 root 12675 0.0 0.0 2796 748 pts/1 R+ 16:27 0:00 grep lircd
lircd is running with the correct driver and device. Ok let run irw and press some keys (Up, Ok and Start) on our remote
irw
0000000000010067 00 up DViCO_Dual_Digital 0000000000010160 00 ok DViCO_Dual_Digital 000000000001001c 00 start DViCO_Dual_Digital
Great Now we have to map these keys so that mythtv can use them. which brings us to our final file lircrc. You should save this file in your user directory as it is for personal mappings of the remote.
# lircrc.example.DVICO-nativelirc # 2004-07-04, Chris Pascoe # mailto:linuxdvb@itee.uq.edu.au # Save this file in ~/.mythtv/lircrc # # Note the "repeat =" strings in the volume and channel. # This means that if you hold down the key, every nth instance will be # passed. This depends on your system, so you may want to increase or # decrease this and see what happens. repeat = 1 is probably too # fast. ### Top 4 buttons ### # DTV - Change focus for PiP (to change channel in the other window) begin prog = mythtv button = dtv config = B end begin prog = mythtv button = mp3 config = Ctrl+M end begin prog = mythtv button = dvd config = Ctrl+D end begin prog = mythtv button = cpf config = end ### Outer Circle (clockwise from the top) ### begin prog = mythtv button = tvpower config = Esc end begin prog = mythtv button = guide config = S end begin prog = mythtv button = info config = I end #swap the pip windows begin prog = mythtv button = alttab config = N end #commercial skip forwards begin prog = mythtv button = skip config = Z end begin prog = mythtv button = start config = Return end #commercial skip backwards begin prog = mythtv button = replay config = Q end begin prog = mythtv button = dvdmenu # config = undefined end begin prog = mythtv button = back config = Esc end begin prog = mythtv button = setup # config = undefined end ### Inner Circle ### begin prog = mythtv button = up config = Up end begin prog = mythtv button = down config = Down end begin prog = mythtv button = left config = Left end begin prog = mythtv button = right config = Right end begin prog = mythtv button = ok config = Return end ### Volume and Channel ### begin prog = mythtv button = voldn repeat = 1 config = F10 end begin prog = mythtv button = volup repeat = 1 config = F11 end begin prog = mythtv button = chup config = Up end begin prog = mythtv button = chdn config = Down end ### Keypad ### begin prog = mythtv button = camera config = P end begin prog = mythtv button = live # config = undefined end begin prog = mythtv button = folder config = C end begin prog = mythtv button = 1 config = 1 config = return end begin prog = mythtv button = 2 config = 2 config = return end begin prog = mythtv button = 3 config = 3 config = return end begin prog = mythtv button = 4 config = 4 config = return end begin prog = mythtv button = 5 config = 5 config = return end begin prog = mythtv button = 6 config = 6 config = return end begin prog = mythtv button = 7 config = 7 config = return end begin prog = mythtv button = 8 config = 8 config = return end begin prog = mythtv button = 9 config = 9 config = return end begin prog = mythtv button = aspect config = W end begin prog = mythtv button = 0 config = 0 config = return end # Toggle PiP on/off begin prog = mythtv button = zoom config = V end ### Play buttons ### begin prog = mythtv button = rew config = Left # config = seek -180 end begin prog = mythtv button = playpause config = ctrl+p end begin prog = mythtv button = ff config = Right # config = seek +180 end begin prog = mythtv button = mute config = | end begin prog = mythtv button = stop config = P end begin prog = mythtv button = rec config = R end begin prog = mythtv button = power config = Esc end # Xine begin prog = xine button = playpause repeat = 3 config = Play end begin prog = xine button = stop repeat = 3 config = Pause end begin prog = xine button = back config = Quit end begin prog = xine button = tv_onoff config = Quit end begin prog = xine button = right repeat = 3 config = SeekRelative+10 end begin prog = xine button = left repeat = 3 config = SeekRelative-10 end begin prog = xine button = ff repeat = 3 config = SeekRelative+30 end begin prog = xine button = rew repeat = 3 config = SeekRelative-30 end begin prog = xine button = skip repeat = 3 config = SeekRelative+300 end begin prog = xine button = replay repeat = 3 config = SeekRelative-300 end begin prog = xine button = up repeat = 1 config = EventUp end begin prog = xine button = down repeat = 1 config = EventDown end begin prog = xine button = ok repeat = 0 config = EventSelect end begin prog = xine button = guide repeat = 0 config = Menu end begin prog = xine button = setup repeat = 0 config = Menu end begin prog = xine button = volup repeat = 1 config = Volume+ end begin prog = xine button = voldn repeat = 1 config = Volume- end
Remote Not Working after reboot
Now you may run into this as I did. I rebooted my computer without my USB mouse plugged in and my remotes device /dev/input/event3 had changed to /dev/input/event2. So we now need a way to make sure that the IR is always the same device. A very simple solution is to look at its name in dmesg:
dmesg | grep IR
input: IR-receiver inside an USB DVB receiver as /class/input/input4
Its name is IR-receiver inside an USB DVB receiver so we take that name and edit the udev rules to create a symlink each time it is plugged in. Add the following to the bottom of the file:
gedit /etc/udev/rules.d/60-symlinks.rules
KERNEL=="event*",SYSFS{name}=="IR-receiver inside an USB DVB receiver",SYMLINK="input/irremote"
No reboot is nesessary just unplug and replug the USB. You should now have /dev/input/irremote. So now change your hardware.conf to this new device and restart lirc:
gedit /etc/lirc/hardware.conf
# If DEVICE is set to /dev/lirc and devfs is in use /dev/lirc/0 will be # automatically used instead DEVICE="/dev/input/irremote" MODULES=""
/etc/init.d/lirc restart
Make your power button start MythTV
Taken from the FedoraMyth Tips and Tricks Section. To start and stop your mythfrontend using your remote first you must enable irexec to run in the background. This is simply done using the command:
irexec -d
We will add this to our /etc/rc.local file to have this start on boot:
Now we need to create a mythpowerbutton.sh script in your /usr/local/bin to start and kill the mythfrontend process:
/usr/local/bin/mythpowerbutton.sh
#!/bin/bash PROG=mythfrontend STATUS=`ps -e | grep $PROG | grep -v grep | wc -l | awk '{print $1}'` if [ `echo $DISPLAY | grep -c ":0"` -ge 1 ] then if [ $STATUS -eq 0 ] then ( $PROG & ) else killall $PROG fi fi exit 0
And dont forget to make it executable:
chmod 777 /usr/local/bin/mythpowerbutton.sh
Next edit your ~/.lircrc file to bind your power button. Add the following lines:
# Power Button begin prog = irexec button = power config = /usr/local/bin/mythpowerbutton.sh end
Now restart lircd to reread your file and restart the irexec daemon (beacuse lircd will shut it down):
sudo /etc/init.d/lircd restart irexec -d
Now Press your power button (wait a few moments for it to load) and MythTV frontend should spring into view. Press it again and it sould kill the process. Perfect wife/girlfriend proof restart procedure.
VLC DVD and Media Player
I Like VLC as it has never failed to play something i have in Linux or Windows. I did try xine but it failed to play a Divx 5 film that i had. So I went for gold old VLC. It was surprisingly easy to configure too:
- Synaptic > Search for VLC > Download and Install.
- To Set up your remote paste the following into your local .lircrc file (NOT .mythtv/lircrc):
gedit ~/.lircrc
# lircrc for VLC # # Card: Dvico FusionHDTV DVB-T Dual Digital # Included Remote: Chunky Fusion MCE Remote # # copy to ~/.lircrc # Available Keys from: src/libvlc.h or vlc --help --advanced # # ### Top 4 Keys ### begin prog = vlc button = dtv end begin prog = vlc button = mp3 end begin prog = vlc button = dvd end begin prog = vlc button = cpf end ### Outer Circle (clockwise from the top) ### begin prog = vlc button = tvpower config = key-quit end begin prog = vlc button = guide end begin prog = vlc button = info config = key-position end begin prog = vlc button = alttab end begin prog = vlc button = skip config = key-chapter-next end begin prog = vlc button = start end begin prog = vlc button = replay config = key-chapter-prev end begin prog = vlc button = dvdmenu config = key-disc-menu end begin prog = vlc button = back config = key-quit end begin prog = vlc button = setup end ### Inner Circle ### begin prog = vlc button = up config = key-nav-up end begin prog = vlc button = down config = key-nav-down end begin prog = vlc button = left config = key-nav-left end begin prog = vlc button = right config = key-nav-right end begin prog = vlc button = ok config = key-nav-activate end ### Volume and Channel ### begin prog = vlc button = voldn repeat = 1 config = key-vol-down end begin prog = vlc button = volup repeat = 1 config = key-vol-up end begin prog = vlc button = chup config = key-title-next end begin prog = vlc button = chdn config = key-title-prev end ### Keypad ### begin prog = vlc button = camera config = key-snapshot end begin prog = vlc button = live end begin prog = vlc button = folder end begin prog = vlc button = 1 config = 1 end begin prog = vlc button = 2 config = 2 end begin prog = vlc button = 3 config = 3 end begin prog = vlc button = 4 config = 4 end begin prog = vlc button = 5 config = 5 end begin prog = vlc button = 6 config = 6 end begin prog = vlc button = 7 config = 7 end begin prog = vlc button = 8 config = 8 end begin prog = vlc button = 9 config = 9 end begin prog = vlc button = aspect end begin prog = vlc button = 0 config = 0 end begin prog = vlc button = zoom end ### Play buttons ### begin prog = vlc button = rew config = key-jump-10sec end begin prog = vlc button = playpause config = key-play-pause end begin prog = vlc button = ff config = key-jump+10sec end begin prog = vlc button = mute config = key-vol-mute end begin prog = vlc button = stop config = key-stop end begin prog = vlc button = rec end begin prog = vlc button = power config = key-quit end
- Finally run mythfrontend > Utilities/Setup > Setup > Media Settings > Video Settings > Player Settings
- Set VLC to run fullscreen with remote: vlc --control=lirc -f %s
If you want to know what keys you can use for this config file check out: VLC - Lirc Keys. If you just want to use vlc for the show you cant use in xine or mplayer then there is an option to use a separate player for each video.
TV Out Setup
NVIDIA
My TV Out setup was pretty simple I changed my /etc/X11/xorg.conf file so that my screen would be extended to the right.
Important Point: Remember after changing your xconf file that you reboot with your TV ON and PLUGGED IN to your computer!
When your computer boots typically you will see the boot splash on both screens. When the login page appears you may see a NVIDIA logo on the tv and then it will go black. When you log in the TV will light back up.
There are some good tutorials on this so check out: Separate x-screens on Monitor and TV HOWTO TV-Out
The interesting parts of my /etc/X11/xorg.conf:
#My 2 NVIDIA Device's (Same card with two outputs VGA and TV Out) Section "Device" BusID "PCI:5:0:0" Identifier "Device0" Driver "nvidia" Screen 0 EndSection Section "Device" BusID "PCI:5:0:0" Identifier "Device1" Driver "nvidia" Screen 1 EndSection #My 2 Monitors (My BenQ and TV) Section "Monitor" Identifier "BenQ FP731" Option "DPMS" EndSection Section "Monitor" Identifier "Television" #TV HorizSync 30-50 VertRefresh 60 EndSection #MY Two Screens (Monitor and TV) Resolution and Colour Settings Section "Screen" Identifier "Screen0" Device "Device0" Monitor "BenQ FP731" DefaultDepth 24 Option "AddARGBGLXVisuals" "True" SubSection "Display" Depth 24 Modes "1280x1024_75" "1024x768_75" "800x600_75" EndSubSection EndSection Section "Screen" Identifier "Screen1" Device "Device1" Monitor "Television" DefaultDepth 24 Option "TVOutFormat" "SVIDEO" Option "TVStandard" "PAL-B" Option "ConnectedMonitor" "TV" SubSection "Display" Depth 24 Modes "800x600" EndSubSection EndSection #Setting up so that it makes my destop larger to the right! #So I can use the browser on the monitor and watch TV. Section "ServerLayout" Identifier "Default Layout" Screen 0 "Screen0" Screen 1 "Screen1" rightof "Screen0" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" InputDevice "stylus" "SendCoreEvents" InputDevice "cursor" "SendCoreEvents" InputDevice "eraser" "SendCoreEvents" EndSection
ATI Radeon
Warning: Overall I do not recommend this option at all. It is time consuming and very frustrating to get this to work and even then I was still getting segfaults and unexpected mythbackend crashes. Myth should be as reliable as possible so I recommend that you get yourself a nice cheap NVidia card (The extra $20 will save you days of work). In the end I gave up and will be going back to a Nvidia card. You have been warned!
Note: AMD has released 900+ Pages Of ATI GPU Specs (12th September 2007) - so decent linux support for ATI is finally coming
I recently switched out my card from my expensive NVidia to an cheap ($50) Ati X300 with TV out. It turned out to be a major pain in the ass. All over the place I was getting slow framerates with mythfrontend messages saying my system cannot cope with the current 800x600 output?!. Anyway after about 10hours of mucking around with the thing I finally got a Semi working config. Dual screens and running 1280x1024 on my LCD and 800x600 on my TV. A few things I learned along the way:
- I tried the free "radeon" driver. My monitor worked - TV was displaying color but I couldn't get it synced properly
- the proprietary "fglrx" driver works but has these problems:
- X is a little unstable. When restarting the X Server (Ctrl-Alt-Backspace) sometimes it won't restart properly.. requiring a reboot >:(
- The Xv video overlay (Which Myth Uses) Stretches the TV Vertically so you only see half. Ati need to fix this in their driver.
- The OpenGL Overlay consumes too much resources and the TV gets framey
- I had to use the textured video to get it working... although I was seeing blue people!
- Make sure you restart x properly. A Logout doesn't work. Use Ctrl-Alt-Backspace or /etc/init.d/gdm restart
A good guide for installing ATI drivers can be found here: Ubuntu_Edgy_Installation_Guide
Installation
- Go to ATI's website and download their driver. chmod 755 and run it as sudo.
- Set up your /etc/X11/xorg.conf
aticonfig --initial=dual-head
- Restart your x-server
sudo /etc/init.d/gdm restart
That should have your tv out working at least. Reboot if necessary and have your svideo plugged into your tv and make sure your tv is on so that it can autodetect. You should see the bootsplash on both your monitor and tv. (Funnily enough the TV seems to be updated faster than my monitor!). The following is tweaks made to your xorg.conf file to get myth running smoothly on your tv out:
Here are the interesting parts of my xorg.conf with the extras I added in bold:
Section "Monitor" Identifier "aticonfig-Monitor[0]" Option "VendorName" "ATI Proprietary Driver" Option "ModelName" "Generic Autodetecting Monitor" Option "DPMS" "true" EndSection Section "Monitor" Identifier "aticonfig-Monitor[1]" Option "VendorName" "ATI Proprietary Driver" Option "ModelName" "Generic Autodetecting Monitor" Option "DPMS" "true" EndSection Section "Device" Identifier "aticonfig-Device[0]" Driver "fglrx" Option "UseFBDev" "false" Option "VideoOverlay" "on" Option "OpenGLOverlay" "off" Option "TVFormat" "PAL-B" # Option "TVOverscan" "on" Option "ForceMonitors" "crt1,tv" Option "DesktopSetup" "mirror" Option "OverlayOnCRTC2" "1" Option "TexturedVideo" "on" Option "EnableMonitor" "crt1,tv" BusID "PCI:5:0:0" EndSection Section "Device" Identifier "aticonfig-Device[1]" Driver "fglrx" BusID "PCI:5:0:0" Screen 1 EndSection Section "Screen" Identifier "aticonfig-Screen[0]" Device "aticonfig-Device[0]" Monitor "aticonfig-Monitor[0]" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 EndSubSection EndSection Section "Screen" Identifier "aticonfig-Screen[1]" Device "aticonfig-Device[1]" Monitor "aticonfig-Monitor[1]" DefaultDepth 24 SubSection "Display" Modes "800x600" Viewport 0 0 Depth 24 EndSubSection EndSection Section "ServerLayout" Identifier "Default Layout" Screen 0 "aticonfig-Screen[0]" 0 0 Screen "aticonfig-Screen[1]" RightOf "aticonfig-Screen[0]" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" InputDevice "stylus" "SendCoreEvents" InputDevice "cursor" "SendCoreEvents" InputDevice "eraser" "SendCoreEvents" EndSection Section "Extensions" Option "Composite" "0" EndSection Section "DRI" Mode 0666 EndSection
Blue People Fix
I sourced this from the following thread: Overlay on TV-Out stretched
When you use the texturedvideo overlay you will probably see blue people. To get around this problem there is a flag in the myth source to use ATI's drivers: USE_ATI_PROPRIETARY_DRIVER_XVIDEO_HACK. Luckily some nice folks have already compiled it for us. You can get it here:LibMyth0.20.
- Download it to your desktop and run it.
- Stop the backend server, run myth setup then quit, restart the back end server and then try it out:
/etc/init.d/mythbackend stop mythtv-setup /etc/init.d/mythbackend start mythtv
If all goes well you should see no more smurfs
DVD Ripping
This is very useful when you don't want your kids scratching up their (or your) DVD's. You need to run mtd (Myth Transcoding Demon) before mythfrontend for this to work. However if you have protected DVD's this wont work just yet. For example throw in one of your dvd's and type mtd. You will probably see the warning that libdvdread : can't do encrypted files. To get around this run this script as root:
/usr/share/doc/libdvdread3/install-css.sh
Run mtd again and everything should be OK. Now to have mtd start up in the background each boot add "mtd -d" to rc.local.
gedit /etc/rc.local
Connecting to Your MythBox Remotely
If your like me and you dont have a monitor attached to your mythbox you can easily connect to your Desktop using VNC. On your desktop go to:
- System > Preferences > Remote Desktop
- Make sure all of these are checked
- [checked] Allow Others to View your desktop
- [checked] Allow Others to Control your desktop
- [checked] Reqire the user to enter this password [******]
Thats it for the MythBox. Now you can connect from your remote computer (Windows / Linux / Java) using this free small footprint tool: Tight VNC
Recommended Reading
This Wiki
DVICO-Ultraview_Install_in_Australia
External