Skip to content
Xander edited this page Mar 27, 2018 · 3 revisions

Old Information - this page exists from a time when the simulcasts were new; it probably no longer applies

This page is how to get the best out of Shepherd and MythTV for HDTV.

See also My high definition (HD) channels are missing programs? and How do I uses the new high definition (HD) channels?

Shepherd missing 7HD, Prime HD, Nine HD and/or TEN HD in your region

I would suggest if your region doesn't have all the HD channels and it SHOULD, do this:

~/.shepherd/shepherd --component-set shepherd:grabwith=oztivo

to force shepherd to get them from the oztivo site.

Please don't forget to remove this when your region gains these channels with:

~/.shepherd/shepherd --component-set shepherd

Shepherd needed this patch for XMLTV

The XMLTV perl library (0.5.50 and before) needs patching to allow HDTV flags to be read in. Copy the follow to a file called /root/xmltv.patch.

--- /usr/share/perl5/XMLTV.pm.old	2006-01-16 06:28:22.000000000 +1000
+++ /usr/share/perl5/XMLTV.pm	2007-12-07 21:48:30.413023176 +1000
@@ -1311,6 +1311,11 @@
 	    $value =~ /^\d+:\d+$/ or warn "bad aspect ratio: $value";
 	    $r{aspect} = $value;
 	}
+	elsif ($name eq 'quality') {
+	    warn "'quality' seen twice" if defined $r{quality};
+	    $value =~ /^\d+x\d+$/ or $value =~ /^(HDTV|SDTV)$/i or warn "bad quality size or HDTV/SDTV flag: $value";
+	    $r{quality} = $value;
+    }
     }
     return \%r;
 };

Then execute:

cd /
patch -p0 < /root/xmltv.patch

MythTV

Update program table for MythTV 0.20

For MythTV (0.20 and before) downloading [http://members.iinet.net.au/~paulone/xmltv/setMythTVflags] to a file called /usr/local/bin/setMythTVflags. This perl script sets the hdtv, closecaptioned and subtitled database columns in the table program. It will only run on version 0.20 of MythTV. Don't forget to set the executable bit with:

chmod +x /usr/local/bin/setMythTVflags

After mythfilldatabase runs, /usr/local/bin/setMythTVflags needs to be executed with the xmltv output file and then a reschedule called. The easiest way is a cron job such as the following. Copy the follow contents to /etc/cron.d/setMythTVflags, changing the start time and directories.

# /etc/cron.d/setMythTVflags: crontab entry for the setMythTVflags

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# start at 8:35
35 8    * * *   root     /usr/local/bin/setMythTVflags --quiet /home/shepherd/.shepherd/output.xmltv && mythbackend -v none --resched

Fix multiple recordings of the same show in MythTV

The following was suggested but I haven't needed this:

If you have multiple tuners, MythTV may attempt to record the same program on both if it doesn't have a programid set (as, for examples, movies often do not). A simple bit of SQL for synthesising one for unknown programs from the starttime+endtime+title will make short work of such cases.

    echo 'update program set programid=concat(starttime,endtime,title) where programid="";' | mysql mythconverg

The problem maybe related to the slight differences between programs on channel 7HD and channel Seven in their start, stop, title, sub-titles or descriptions. Because of the differences MythTV thinks they are different showings.

Automatically downscale HDTV with MythTV 0.20

In mythtv-setup:

General -> Next (to last page) ->

Enable Transcode before Commflag

In mythfrontend:

Utilities/Setup -> Setup -> TV Settings -> Recording Profiles -> Transcoders -> Autodetect from MPEG2 ->

Disable Lossless transcoding (this enabled works well for commercial removal after you mark cut points)

Enable Resize Video while transcoding

Next ->

Width: 720

Height: Auto

Next ->

Codec:  MPEG-4

(leave the rest at default, messing with it will likely cause problems)

Next ->

Codec: MP3

Sampling rate: 48000

Finish -> Cancel (escape) -> Hardware DVB Encoders -> Default ->

Enable auto-transcode after recording

Next -> Finish

Then in you scheduled recordings:

Post Recording Processing ->

Enable Transcode new recordings

Transcode using Autodetect