My card reports itself like this:
$ lspci *snip* 0000:00:0a.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01) *snip
Everything seemed to work out of the box:
$ dmesg | grep DVB -A 0 -B 3 [17179585.872000] saa7146: register extension 'budget dvb'. [17179585.872000] ACPI: PCI Interrupt 0000:00:0a.0[A] -> Link [LNKC] -> GSI 11 (level, low) -> IRQ 11 [17179585.872000] saa7146: found saa7146 @ mem e0aa2000 (revision 1, irq 11) (0x13c2,0x1005). [17179585.872000] DVB: registering new adapter (TT-Budget/WinTV-NOVA-T PCI). [17179585.908000] adapter has MAC addr = 00:d0:5c:20:33:92 [17179585.908000] DVB: registering frontend 0 (LSI L64781 DVB-T)...
So, many, many hours of Googling later, and after many blind alleys and red herrings, I remembered (yes, I have indeed been through all of this before…) what I needed to do next:
scan /usr/share/doc/dvb-utils/examples/scan/dvb-t/uk-CrystalPalace > \ ~/.mplayer/channels.conf
and, finally, to watch TV I just do this:
mplayer -zoom "dvb://BBC ONE"
That seems to fail sometimes, and this is more reliable:
$ cat bin/tv_watch #!/bin/bash TMPFILE=~/Desktop/tv.mpg mplayer -dumpstream -dumpfile "$TMPFILE" "dvb://$1" & sleep 5 mplayer -zoom "$TMPFILE" kill %1 rm -f "$TMPFILE"
which I run by simply typing:
tv_watch "BBC FOUR"
Update: the “scan” command is provided by the “dvb-utils” package on Ubuntu.
What about:
#!/bin/bash
TMPFILE=~/Desktop/tvfifo
mkfifo $TMPFILE
mplayer -dumpstream -dumpfile “$TMPFILE” “dvb://$1” &
sleep 5
mplayer -zoom “$TMPFILE”
kill %1
rm -f “$TMPFILE”
Might be lighter on disc usage. No particular reason to delete and recreate the fifo every time, though.
I’ll try it tonight. If it works, you rule.
It works except gmplayer complains “Seek failed” as it starts. If I use mplayer instead it’s fine but for radio channels that gives me no window to close when I want the noise to stop.
Why is gmplayer so annoying?
You only tried gmplayer to take the shine of my ‘rulage’.
Some Googling suggests the “-cache” option. I’ll try that tonight. Seems like the best way to do it if gmplayer co-operates.