ECE497 Notes on MPlayer and Dvb-apps

MPlayer can be used in conjunction with Dvb-apps to create a video recording and playback system in embedded linux. Add on to this combination a software defined ATSC radio such as the Hauppauge WinTV-HVR-950Q and digital/analog TV signals (both antenna and cable) can be decoded and recorded.

Installation
The 3.8.6 kernel comes with it the kernel modules necessary for the WinTV-HVR-950Q. For completeness they are listed below

xc5000 au8522 au0828

Also required for this hardware to function is the firmware file from Kernel Labs. It can be added by running the following as root:

wget http://www.kernellabs.com/firmware/xc5000/dvb-fe-xc5000c-4.1.30.7.fw mv dvb-fe-xc5000c-4.1.30.7.fw /lib/firmware/

Lastly, we need the to install the Dvb-apps. To do this run the following as root:

opkg install dvb-apps

How to Run
To find cable TV channels run the following:

scan -t 1 -A 2 -U /usr/share/dvb/atsc/us-Cable-Standard-center-frequencies-QAM256 > ~/Desktop/channels.conf

After this is done you can open the channels.conf file to view the channel names. There are a few ways of tuning to these channels. A simple way is shown below:

azap -r -c ~/Desktop/channels.conf "MyFOX10 HD"

Now once the radio is tuned you will see something like:

using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0' tuning to 207000000 Hz video pid 0x0041, audio pid 0x0044 status 00 | signal 3999 | snr cd37 | ber 00000000 | unc 00000000 | status 1f | signal cb84 | snr f8cf | ber 00000000 | unc 00000000 | FE_HAS_LOCK status 1f | signal cb84 | snr f8b3 | ber 00000000 | unc 00000000 | FE_HAS_LOCK

Once you see FE_HAS_LOCK you can run the following to watch the tuned channel:

mplayer -framedrop /dev/dvb/adapter0/dvr0

Future Work
See if the playback can be optimized for a small system with limited resources like the BeagleBone.