Coming Underground
« B2evolution upgraded to 3.3.2 (sort of)vncunused problem with Windows on Xen 3.4.1 »

Watching Freeview HD DVB-T MPEG-4 channels

Permalink 2009-11-18 08:29, by jaervosz, Categories: Gentoo Tips, Gentoo, Universe/English, Mythtv

Last week before catching the H1N1 I had the chance to play around a bit with DVB-T.

Here in .dk the analog TV signal was turned off at the start of the month, and we got some new digital freeview channels. Most notably DR HD broadcasting unencrypted 720p movies in MPEG-4.

The MPEG-4 encoding can be a bit tricky since TVs from just a few years back (ie. both my Panasonic TVs) only support MPEG-2 decoding, so a lot of people had to buy new hardware MPEG-4 decoders. However not wanting yet another power consuming device I decided to solve it on the cheap (not speaking of yet another redundant remote control).

First off old DVB-T PCI cards/USB sticks should generally be able to receive DVB-T broadcasts in any encoding, including MPEG-4. I just had an old Hauppauge Nova-T DVB-T card lying around in the basement, what luck:)

I've collected a few notes here that might be helpful for others.

First figure out what kernel options you'll have to enable.

Getting the right channel list:

emerge linuxtv-dvb-apps linuxtv-dvb-firmware w_scan
w_scan -x > dvb_frequencies
dvbscan dvb_frequencies > channels.conf

Now watch the first channel with: vlc channels.conf. Note if vlc doesn't play anything you might have messed up the generation of channels.conf as I somehow managed to do the first time.

Then record the HD content:

gnutv -channels channels.conf -out file drhd.mp4 "DR HD"

Now come the not so great part, it seems like the MPEG-4 used by DR HD is not well supported in Linux or more precisely the HE-AAC audio codec.

Current stable vlc-1.0.2 seems to be slow to tune in to the programs and audio is choppy and stastistics show dropped audio frames. Upgrading to vlc-1.0.3 seems to make it tune in faster, but the audio is still choppy.

Changing the "Caching value in ms" to 1000 seems to have solved most of the stuttering problems (Preferences -> All -> Input/Codec -> Access modules -> DVB).

Current stable ffmpeg-0.5-r1 only shows 3 streams and refuses to encode:

Stream #0.0[0x907]: Video: h264, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 50 tbr, 90k tbn, 100 tbc
Stream #0.1[0x91f](dan): Subtitle: dvbsub
Stream #0.2[0x920](dan): Subtitle: dvbsub

However upgrading ffmpeg to 0.5_p20373, results in it detecting another 2 streams:

Stream #0.0[0x7ef]: Data: 0x0006
Stream #0.1[0x907]: Video: h264, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 50 tbr, 90k tbn, 100 tbc
Stream #0.2[0x911](dan): Data: 0x0011
Stream #0.3[0x91f](dan): Subtitle: dvbsub
Stream #0.4[0x920](dan): Subtitle: dvbsub

And the live ffmpeg ebuild actually detects the audio stream, but hangs when encoding:

Stream #0.0[0x7ef](dan): Subtitle: 0x0006
Stream #0.1[0x907]: Video: h264, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 50 tbr, 90k tbn, 100 tbc
Stream #0.2[0x911](dan): Audio: aac, 44100 Hz, 2 channels, s16, 450 kb/s
Stream #0.3[0x91f](dan): Subtitle: dvbsub
Stream #0.4[0x920](dan): Subtitle: dvbsub

So for now I can watch DR HD on one computer, but playback on my PCH-110 is not working either as the audio codec HE-AAC seems to be unsupported too. Later on I might just install a MythTV backend and do some automatic transcoding to the troublesome devices. That is once proper HE-AAC support is in ffmpeg:-)

4 comments »Send a trackback »

Trackback address for this post

This is a captcha-picture. It is used to prevent mass-access by robots.
Please enter the characters from the image above. (case insensitive)

4 comments

Comment from: DVB Fan [Visitor] · http://igorfuna.com/dvb-t/
Well, the transition from MPEG-2 to MPEG-4 can be as tricky as transition from analog to digital. However, if you introduce new technology with new services (e.g. HDTV) then it is much easier.
2009-11-18 @ 10:05
Comment from: Janne [Visitor] · http://www.mythtv.org
ffmpeg configured with --enable-libfaad should support plain HE-AAC.

But it's probably LATM packed AAC which ffmpeg doesn't support yet. MythTV 0.22 already supports LATM packed HE-AAC if configured with libfaad support. mplayer should support it too.
2009-11-18 @ 10:11
Comment from: Dan [Visitor]
This is happening soon in the UK, but everyone will need to buy new tuners for Freeview HD because it will be broadcast using DVB-T2.
2009-11-19 @ 00:43
Comment from: K Klatt [Visitor]
Thanks for your info. Trying to use a HD-5500 card w/gentoo.. Works of a sort. dvbscan finally got a channel.conf, getatsc "records" but subchannels are an issue.

Totem needs some link library, gxine does a core dump (not sure what is going on there)..
2010-01-06 @ 16:20

Leave a comment


Your email address will not be revealed on this site.

Your URL will be displayed.
(Line breaks become <br />)
(Name, email & website)
(Allow users to contact you through a message form (your email will not be revealed.)
This is a captcha-picture. It is used to prevent mass-access by robots.
Please enter the characters from the image above. (case insensitive)

©2010 by admin

Contact Jaervosz