HOWTO : MyGica D689 USB HDTV dongle and VideoLan on Ubuntu 9.10

We can watch digital TV including HDTV on Ubuntu 9.10 with MyGica D689 USB HDTV dongle. You may also require to buy a new nVidia series 9000 or up display card. Since series 9000, nVidia display card supports hardware acceleration for playing HD video.



In order to keep my Ubuntu box easy for update and secure, I prefer to install software packages from official and PPA repositories. However, I need to compile the MyGica driver in order to make it works. I selected VideoLan for the playback.



Hardware and software used in this tutorial :



CPU - AMD Athlon 64 x 2 4200+

RAM - 8GB DDR2 800

Hard Drive - 320GB x 2 on Hardware RAID 0

HDTV - MyGica D689 HDTV USB dougle (v3.0)

Display card - XFX nVidia GT240 with 1GB DDR3 RAM and HDMI

Operating system - Ubuntu 9.10 Desktop AMD64 with Kernel 2.6.31-19-generic



The following procedures are for installing PPA nVidia display driver.



Step 1 - Add essential repositories :



(A) Add medibuntu repository (for general multimedia codecs and plugins)



sudo wget http://www.medibuntu.org/sources.list.d/karmic.list --output-document=/etc/apt/sources.list.d/medibuntu.list &&

sudo apt-get -q update &&

sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring &&

sudo apt-get -q update




** Note : If you are using Ubuntu Samiux Remix, you are not required to add this repository as it is already added.



(B) Add nvidia-vdpau repository (for related VDPAU libraries)



echo "deb http://ppa.launchpad.net/nvidia-vdpau/ppa/ubuntu karmic main" | sudo tee -a /etc/apt/sources.list.d/nvidia-vdpau.list

echo "deb-src http://ppa.launchpad.net/nvidia-vdpau/ppa/ubuntu karmic main" | sudo tee -a /etc/apt/sources.list.d/nvidia-vdpau.list




Add key of nvidia-vdpau repository to the keyrings.



sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys CEC06767



sudo apt-get update

sudo apt-get upgrade




** Remarks : Or, you can use this command

sudo sh -c 'echo "Test I want to write" > /path/to/file'



Step 2 - Install all related softwares, codecs and plugins :



sudo apt-get install x264 vlc mencoder qt4-qtconfig



sudo apt-get install ubuntu-restricted-extras quicktime-utils quicktime-x11utils libdvdnav4 libdvdread4 libdvdcss2 non-free-codecs faad



Then, reboot your system.



Step 3 - Install nVidia display driver



Select "System" - "Administration" - "Hardware driver" from the menu on the desktop.

Choose nVidia display driver 195 version as prompted. After the install, you are required to reboot your system.



Reboot your system.



Step 4 - Confirmation of VDPAU drivers are installed



Make sure "vdpau" is installed and activated.



ffmpeg -formats | grep vdpau



If you can see some vdpau displayed, vdpau works.



Step 5 - Install MyGica D689 driver :



sudo apt-get install mercurial



At you desired directory, such as /home/samiux.



mkdir mygica

cd mygica

hg clone http://bitbucket.org/davidtlwong/mygica_x8558pro

cd mygica_x8558pro




make

sudo make install




** Note : If you see an error of compiling FireDTV, you should do the following.



nano v4l/.config



Locate "CONFIG_DVB_FIREDTV=m" and change to "CONFIG_DVB_FIREDTV=n"



Save it and run "make" again.



make

sudo make install




Step 5a - Alternative way to install MyGica driver (Optional) :



** Note : Choose Step 5 or 5a only but not both of them.



Or, you can install this version. I prefer this version.



MyGica driver version used (Tip's version) :

Download Tip's version



wget http://bitbucket.org/davidtlwong/mygica_x8558pro/get/tip.tar.gz



tar -xvzf tip.tar.gz

cd mygica_x8558pro



make

sudo make install




** Note : If you see an error of compiling FireDTV, you should do the following.



nano v4l/.config



Locate "CONFIG_DVB_FIREDTV=m" and change to "CONFIG_DVB_FIREDTV=n"



Save it and run "make" again.



make

sudo make install




Tip's version changelog



When the kernel is updated, you should delete the directory of mygica_x8558pro and redo the following :



tar -xvzf tip.tar.gz

cd mygica_x8558pro



make

sudo make install




Step 6 - VideoLan Configuration :



The following should be done. Otherwise, your playlist cannot be saved.



"System" - "Preference" - "Qt4 setting" - "Appearance" - "GUI Style" - "Cleanlooks"



Start VideoLan and configure as the following :



"Media" - "Open Capture Device Ctrl C" - "Capture Mode" - "DVB" - "DVB type" - "DVB-T"



The channels will be scanned but it need a lot of time. You just wait it to finish.



After that, you can save the playlist by "Media" - "Save playlist to the file".



You may delete some duplicated channels on the playlist.



Or, you can download an example at here for reference.



You should load the playlist when you watch HDTV or TV every time.



You may need to do some tuning at "Tool" - "Preference" - "Input & Codec" :



Do some setting on "Cache" or/and "Skip the loop filter for H.264 decoding" when necessary.



Step 7 - Test your MyGica D689 (Optional) :



Insert your MyGica D689.



lsusb



The output should be :

Bus 001 Device 002: ID 0572:d811 Conexant Systems (Rockwell), Inc.



The following is for testing purpose.



sudo apt-get install dvbsnoop dvbtune



dvbsnoop -s signal



If there is some output but not error, your MyGica D689 works.



Step 8 - Streaming TV on LAN and recording TV programmes (Optional and not tested by me) :



This is work of "ksng".



Download ksng's scripts (dated 2009-NOV-26)

Download ksng's scripts (dated 2009-DEC-05)

Download ksng's scripts (dated 2010-FEB-04)



Known Issue :



When watching Standard HD TV, the workload of Athlon 64x2 4200+ is very low, says 800MHz. However, when watching Full HD TV, the workload of Athlon 64x2 will be running in full. I think modern CPU may solve this problem.



Honor :



Many thanks to David T.L. WONG for the MyGica driver while "ksng" for the streaming scripts. They are active members of HKEPC Linux forum.



That's all. See you!