Setting up MythTV involves a little pain, but once it's set up, it's pretty great. And you don't have to spend lots of money on a DVR from the cable company. With my modest hardware specs, playback is smooth and clear, however Picture in Picture is too jittery to be useful. Here's what I did to get my MythTV DVR running on my Ubuntu machine.
Install the Hauppauge WinTV-HVR 1250 TV tuner card¶
Put the card in the computer. Connect the TV antenna to the card.
Check the TV tuner card is recognized¶
Ubuntu 12.04 includes drivers for the Hauppauge 1250 TV tuner card, so I did not need to install any drivers.
$ cat /var/log/dmesg
[ 15.211985] cx23885 driver version 0.0.3 loaded
[ 15.214279] cx23885 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 15.214492] CORE cx23885: subsystem: 0070:2259, board: Hauppauge WinTV-HVR1255 [card=20,autodetected]
[ 15.214600] IR NEC protocol handler initialized
[ 15.230936] IR RC5(x) protocol handler initialized
[ 15.235576] MCE: In-kernel MCE decoding enabled.
[ 15.237132] IR RC6 protocol handler initialized
[ 15.237703] EDAC MC: Ver: 2.1.0
[ 15.238256] AMD64 EDAC driver v3.4.0
[ 15.242493] IR JVC protocol handler initialized
[ 15.246743] IR Sony protocol handler initialized
[ 15.250908] IR MCE Keyboard/mouse protocol handler initialized
[ 15.256862] lirc_dev: IR Remote Control driver registered, major 250
[ 15.257125] IR LIRC bridge handler initialized
[ 15.284735] lp0: using parport0 (interrupt-driven).
[ 15.361892] tveeprom 0-0050: Hauppauge model 22111, rev E2F5, serial# 8323201
[ 15.361895] tveeprom 0-0050: MAC address is 00:0d:fe:7f:00:81
[ 15.361897] tveeprom 0-0050: tuner model is NXP 18271C2 (idx 155, type 54)
[ 15.361899] tveeprom 0-0050: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88)
[ 15.361901] tveeprom 0-0050: audio processor is CX23888 (idx 40)
[ 15.361903] tveeprom 0-0050: decoder processor is CX23888 (idx 34)
[ 15.361904] tveeprom 0-0050: has no radio, has IR receiver, has no IR transmitter
[ 15.361906] cx23885: hauppauge eeprom: model=22111
[ 15.361909] cx23885_dvb_register() allocating 1 frontend(s)
$ sudo apt-get install mythtv
Set up the MythTV backend¶
Run mythtv-setup to select your TV tuner card and scan for channels.
Click "Yes" to add your user to the "mythtv" group.
Click "Yes" to restart your login session.
Change the following options:
- 2. Capture cards -> (New capture card) -> Card type: DVB DTV capture card (v3.x) -> Finish
- 4. Video sources -> (New video source) -> Video source name: FOOBAR, Listings grabber: North America (SchedulesDirect.org) (Internal), User ID: blank, Pass: blank
- 5. Input connections -> [DVB: /dev/dvb/adapter0/frontend0] -> Video source: FOOBAR -> Scan for channels
After running mythtv-setup, it will ask you if you want to start the backend. Select yes to start the backend. It will also ask you if you want to run mythfilldatabase. Select yes to run mythfilldatabase. This may take a while.
Ensure mythv backend is running¶
After running mythtv-setup, the mythtv backend should start running.
To check that the backend is running, run:
$ ps -ef | grep myth
If the mythtv backend is not running, start it using the following command:
$ sudo service mythtv-backend start
If mythbackend doesn't stay running, there may be some configuration that is broken.
Check /var/log/syslog. If that does not have enough information, run the backend with the --verbose option:
$ mythbackend --verbose
Run the MythTV frontend¶
Some keyboard shortcuts¶
- P - pause/play
- SPACE - set/clear bookmark
- LEFT/RIGHT ARROW - skip back/forward
- M - menu
- D - delete
- You may want to change the theme. I chose the TintedGlass 2.43 theme.
- To get schedule information, I ended up signing up for a membership at www.schedulesdirect.org. It is $25/year (or ~$2/month). It seems to be the recommended way to get schedule information.
How run mythfrontend on another Ubuntu laptop connected to your LAN (Added 2013-06-07)¶
Since MythTV has a flexible client/server architecture, you can run the MythTV backend server on
one machine and access it from multiple other machines running a Mythtv frontend.
These steps assume the remote frontend is running on a laptop with Ubuntu 12.04
and it is connected to your local network (LAN) (not through the internet (though that is possible.).)
UPDATE: Playing 1080p HD content over my $30 Belkin G wireless router (rated at 54 Mbps)
had occasional stalls in the playback. Repositioning my router helped, but after a couple days,
I decided to order a
Netgear N600 Wireless-N Dual Band Router. Hopefully this will solve my problem.
On the Mythtv backend server configured above:
- Determine the IP address of the Mythtv backend server by running ifconfig
For me, it is 192.168.2.2. This will be used in the steps below.
- Follow the instructions here: http://www.mythtv.org/wiki/Mythfrontend
- Ensure mythbackend is not using 127.0.0.1.
- Run mythtv-setup:
- Change the IP address from 127.0.0.1 to 192.168.2.2 (or IP address you determined from above.)
On the laptop:
How to watch your recorded videos on your Android phone over the internet¶
How to control your DVR from your Android phone
- Configure your MythTv Frontend on your PC:
- Setup -> General -> Hit "Next" 6 times -> Check "Enable Network Remote Control"
- Setup -> Appearance -> Hit "Next" 3 times and
- Check "Enable LCD device"
- Check "Display time"
- Check "Display menus"
- Check "Display music arstist and title"
- Check "Display channel information"
- Install MythDroid on your Android phone
- Install MDD on your PC
- Install libimlib2
$ sudo apt-get install libimlib2-dev
- Download MDD
$ wget http://mythdroid.googlecode.com/files/mdd-0.6.2.tgz
- Install MDD
Type "y" because you are running this on the PC that runs your MythTv frontend
Hit ENTER to accept all the defaults
$ tar xvf mdd-0.6.2.tgz
$ cd mdd
$ perl Build.PL
Type "y" to stop mythfrontend. Then start it again
$ ./Build test
$ sudo ./Build install
Help / References¶