We use a set-top-box as the video source for mythtv. And while this works perfectly fine, we have to manually make sure the right channel is set for what mythtv wants to record. This can turn out to being a pain at time, especially when multiple things are planned to be recorded on different channels. So I went and ordered a IR transmitter from irblaster.info to give mythtv the possibility to change channels itself.
Since a bunch of the infos I found online were a bit out dated, here are a few tips for anyone using current versions of the software (I’ve got mythtv-backend 0.22 and lirc 0.8.4a running on a mythbuntu based system when I wrote this)
Hardware is easy to set up, just plug it into a free serial port.
1st we will head over to http://lirc.sourceforge.net/remotes/ and grab the file for our reciever set-top-box if we don’t already have them.
Then go edit /etc/lirc/hardware.conf and add the transmitter settings, these were mine:
now include the reciever settings to /etc/lirc/lircd.conf
I edited my /etc/init.d/lirc to execute the following line before starting the daemon (was needed to ensure the lirc_serial module can be loaded):
/bin/setserial /dev/ttyS0 uart none
Restart lircd and you can then start testing if transmitting codes work with irsend works. here is a little wrapper script I wrote around irsend for mythtv to use. You may have to twiddle around with the sleeps and change the $Remote to your reciever. If the sleeps are too long (-> the script takes to long to finish switching channels), then mythtv will timeout and not display live tv.
send="irsend -d /dev/lircd1 SEND_ONCE"
if [[ "$(echo $1|grep -c "^[0-9]")" = "0" ]]
then # non-numeric command
$send $Remote $1
else # numeric
for digit in $(echo $1 | sed -e 's/./& /g'); do
$send $Remote $digit
If everything is working fine, then go ahead and tell mythtv to use the script to change channels. This is done in the tuner card setup of mythtv-backend (mythtv-setup).
Last weekend my htpc didn’t record a show it should have, turned out it couldn’t fetch EPG data anymore (and therefore didn’t know the show was running, I should have it email me if it completely runs out of EPG data). Anyway, I thought updating the system would be a good idea … fixing EPG was easy, fixing the stuff the update broke took me 2 days. The solution was easy, restore the original /etc/X11/xorg.conf since the one the update generated kinda broke GLX on my Nvidia 6200 which resulted in the wierdest problems. The Myth GUI worked partially, live TV etc. was no problem, but the menus didn’t show (or only parts showed). The first step was to chmod -x the script myth uses to shutdown the pc, you have aboud 15 second to do so after the pc has started because of “ok, I’m running … ok, the frontend stopped(crashed), I’ll shutdown in 15 seconds”. After finding out, that the new xorg.conf from ubuntu 8.10 sucks for me, the solution was an easy “cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup && cp /etc/X11/xorg.conf.old /etc/X11/xorg.conf”
I started plaing a new browsergame this week, Kings Age. It’s a simple”build cities, expand, fight” thing. But the graphics are ok, and it’s easy to play (log in once a day and put some actions in the queue).
Didn’t get around to posting last week since I was on vacation. So what did I do with a week full of free time? Well, first I went and bought a Wii. What can I say, I like interactive gaming 😉 The next two games on my wish list are “Zelda” and “No more Heroes”. Wii Sports is fun, but I need something with more “oompf”.
Then I finished up my MythTV computer. The PC has Wifi and normal LAN, but the LAN cable is only connected when I need to transfer large amounts of data (e.g. video files). It turned out Linux was a bit stupid out-of-the-box. Ethernet Interfaces are always UP, no matter if a cable is physically plugged in or not. And since by default all interfaces have the same routing metric I couldn’t connect to the box via Wifi unless I plugged a Ethernet cable in -duh-. So after some google digging I found two useful packages, ifplugd and ifmetric. The former pulls interfaces up/down depending on their physical state, the latter sets the routing metric, so now Wifi works the way I wanted it, and the PC automatically chooses the faster interface for communication.
Thursday and Friday we went to Phantasialand which was lots of fun. A few tips:
– Black Mamba: sit in the first row, it is definatly worth it.
– Colorado Adventure: sit in the last car
– Winja’s Fear (right side) is better than Winja’s Force
– Mystery castle is … fun 😉
– River Quest: you will get wet. the only “maybe” here is if you only get wet, or if you get soaked
Ok, here are some helpful tips for using mythbuntu in Germany:
The built-in search for theaters/movies near you only works for the states. Anyone else on the world will want to download this script and fetch the information via Google (change the Google domain to something local to you in the source code)
If you want to get your EPG data via the Internet, have a look at this howto. It fetches the data very quickly compared to the usual parsing scripts of xmltv. I fill the EPG database via a cronjob as soon as there are less than 4 days of data for any channel. For anyone interested, here is the SQL to get the next date/time of “missing” data.
“SELECT MAX(starttime) AS time FROM program GROUP BY chanid ORDER BY time ASC LIMIT 1”
Anyone with a Marvell Libertas 8335 chipset wifi card is going to need the package ndiswarapper, and the windows 2000 drivers from here
The low profile graphics card works like a charm 😉
Here is my lspci if anyone is interested, or for people using google to find help
00:0a.0 Multimedia video controller: Internext Compression Inc iTVC15 MPEG-2 Encoder (rev 01)
00:0b.0 Ethernet controller: Marvell Technology Group Ltd. 88w8335 [Libertas] 802.11b/g Wireless (rev 03)
01:00.0 VGA compatible controller: nVidia Corporation NV44A [GeForce 6200] (rev a1)
I got my new graphics card for my htpc today. It’s a low profile, passive cooled geforce 6200 from XFX. I’ll stick it into the PC this weekend and see how mythbuntu copes with it. The card in there right now has a worn out fan and is making a LOT of noise, and a replacement fan (or passive heatsink for it) would have cost more than this new card.
Up till a few days ago I had a computer running Windows and TVedia in the living room (to record shows, time shift viewing, that kind of stuff). I finally got around to switching over to Linux and MythTv. The main reason I stuck to Windows for so long, was that I had a X-Card (hardware DivX and DVD decoder) for which there are no drivers for Linux. Well, I finally ripped that piece of hardware out of the PC, and am replacing it with a stock graphics card (passive heatsink) for video out.
Anyway, here are some of my experiences with MythTv to date. Installation was easy since I used a distribution pre built for MythTv (Mythbuntu). The concept of mythtv is to have a backend that records stuff, has the database with all the vids and so on; and a frontend with a nice gui that displays everything. Not that important for me right now since I have both running on the same PC (except that I had to wrap my mind around “what has to be configured where”). Lots of cute plugins, some useful (like the interface to audio and video streaming services like shoutcast, youtube, apple,…) some not so useful. I have a Hauppauge 350 as a video input device and needed some fiddling to get it up and running. Would have saved me about an hour if the default theme wouldn’t have chopped off the hint telling me NOT to enter a default channel. Took me about another hour or two to get EPG data automatically imported. On the other hand, the remote control worked like a charm, compared to Windows it was zero work to get that set up.
The first additional software I installed was phpmyadmin. Good lord the software stores everything in a mysql database and gives you no user friendly way to access it (mysqladmin ont the command line does not count as “user friendly”). And I fear it may take me a few more days to get my wireless lan up and running since the chipset is more or less not supported.