MythTV
Contents
Compiling from SVN
MythTV Core/Backend
For ubuntu (gutsy), ensure the following packages are installed:
- gcc
- g++
- make
- linux-headers
- libfreetype6-dev
- libqt3-mt-dev
- liblame-dev
- libxv-dev
- libxxf86vm-dev
Maybe also?
- qt3-dev-tools
- libqt3-mt-mysql
MythPlugins
- libmad0-dev
- libid3tag0-dev
- libvorbis-dev
- libflac-dev
- libcdaudio-dev
- libcdparanoia0-dev
- libtiff4-dev
- kdelibs4-dev
- libexif-dev
- fftw3-dev
- libsdl1.2-dev
- libfaad2-dev
- libmysqlclient15-dev
MythTV frontend (Install and run only)
To install and run a mythtv frontend (previously compiled on a different machine), you need:
- g++
- libartsc0-dev
- libasound2-dev
- liblame-dev
- libqt3-mt-dev
- libqt3-mt-mysql
- libxv-dev
- libxvmc-dev
- libxxf86vm-dev
- qt3-dev-tools
Errors and Solutions
tv_grab_uk_rt - Undefined argument in option spec
Edit /usr/bin/tv_grab_uk_rt and remove days and offset args from GetOptions variable list, and replace with:
'offset' => \ my $opt_offset, 'days' => \ my $opt_days,
See: https://sourceforge.net/tracker/?func=detail&atid=424135&aid=1440322&group_id=39046
QMYSQL3 driver not loaded
- apt-get install libqt3-mt-mysql
- apt-get install msttcorefonts
Opening DVB frontend device failed. eno: Permission denied (13)
/dev/video* is by default only read/writable by root:video:
andrew@colorado:~$ ls -l /dev/video* crw-rw---- 1 root video 81, 0 2007-11-03 16:12 /dev/video0 crw-rw---- 1 root video 81, 1 2007-11-03 16:12 /dev/video1
To fix: sudo adduser mythtv video
Zero sized recorded program images in mythweb
See http://svn.mythtv.org/trac/ticket/3217
Scheduler log output (meaning of "S C I T N" etc)
- Title - Subtitle
- should be pretty obvious!
- Chan
- actual channel number
- ChID
- channel ID in mythtv database
- Day
- day in month of recording
- Start
- start time of recording
- End
- end time of recording
- S
- sourceID - ID of source of programs as defined by mythtv-setup (eg. UK Freeview)
- C
- cardID - ID of card to be used for recording. 0 if not to be recorded.
- I
- inputID - ID of input (combination of source and card). 0 if not to be recorded.
- T
- recording type
- S - SingleRecord
- T - TimeslotRecord
- W - WeekslotRecord
- C - ChannelRecord
- A - AllRecord
- F - FindOneRecord
- d - FindOneDailyRecord
- w - FindOneWeeklyRecord
- O - OverrideRecord/DontRecord
- N
- recording status:
- A - Aborted
- R - Recorded
- n - Recording/WillRecord on CardID
- X - DontRecord
- P - PreviousRecording
- R - CurrentRecording
- E - EarlierShowing
- T - TooManyRecordings
- c - Cancelled
- M - Missed
- C - Conflict
- L - LaterShowing
- r - Repeat
- x - Inactive
- K - LowDiskSpace
- B - TunerBusy
- N - NotListed
- V - NeverRecord
- Pri
- recording priority
MythTV and LIRC
Using the Ctrl key in config lines
Contrary to some sources, the required format for the config line is config=Ctrl+X. For example:
begin prog = mythtv button = TV config = Ctrl+2 end
Repairing broken MythTV tables
- Stop MythTV and MySQL
- cd /var/lib/mysql/mythconverg
- myisamchk *.MYI
- Identify broken tables
- myisamchk -r brokenTable.MYI
- Restart MythTV and MySQL
This will often happen if (with an nVidia driver), the nVidia libglx file has been overwritten by an xserver upgrade. To check for this, run glxinfo | grep direct - if the driver is working the direct rendering should be on. If not, check the /var/log/Xorg.0.log for:
(EE) NVIDIA(0): Failed to initialize the GLX module...
In this case, it's possible to reinstall the latest nvidia linux driver, or alternatively, simply (as root):
mv /usr/X11R6/lib/modules/extensions/libglx.so /usr/X11R6/lib/modules/extensions/libglx.so.orig ln -s /usr/X11R6/lib/modules/extensions/libglx.so.<nvidia ver> /usr/X11R6/lib/modules/extensions/libglx.so
BBC HD
Not yet possible to play this in MythTV yet, as far as I'm aware. However, you can save it to a file, and play it back (slowly, on anything but very powerful hardware).
- Grab latest x264, ffmpeg and mplayer from svn, and compile manually.
- Add the following to your channels.conf:
BBC HD1:554000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_32:HIERARCHY_NONE:1502:1505:36932
- Tune to the channel, and check you're getting lock with tzap "BBC HD1"
- Grab a portion of the stream with dvbstream -o 8192 > myfile.ts (Note the use of dummy PID 8192 - this tells dvbstream to record the entire transport stream, rather than just selected program streams).
- Playback the stream with mplayer myfile.ts. MPlayer should tell you there are two program streams - an H264 video on pid 1502, and an a52 audio stream on pid 1505. Sample mplayer log snippet below:
Playing myfile.ts. TS file format detected. VIDEO H264(pid=1502) AUDIO A52(pid=1505) NO SUBS (yet)! PROGRAM N. -28604 FPS seems to be: 25.000000