CentOS 5.2 and DVB-T

The past two weeks I have been playing with the Pinnacle PCTV DBT-T Stick Solo 72e. To get this device working under CentOS 5.2 I had to combine a lot of different sources on the internet. In this post I’ll try to combine all steps I took to get this device working and record television programs for playback on my JVC TH-P3 Home Cinema Set. Enjoy ;-)

Install the Pinnacle PCTV DVB-T Stick Solo 72e

  • Enable CentOS to use the CentOS Plus repository.

Edit /etc/yum.repos.d/CentOS-Base.repo (change ‘enabled=0′ to ‘enabled=1′):
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo
=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5
  • Run ‘yum update’ and reboot.
  • Connect the Pinnacle PCTV 72e.

dmesg output (use the command ‘dmesg’ to print the kernal ring buffer.):
usb 1-6: USB disconnect, address 2
usb 1-6: new high speed USB device using ehci_hcd and address 3
usb 1-6: configuration #1 chosen from 1 choice
  • Download v4l-dvb from http://linuxtv.org/hg/~pb/v4l-dvb/.
  • Compile and install v4l-dvb (make all; make install).
  • Load the ‘dvb_usb_dib0700′ module (modprobe dvb_usb_dib0700).
  • Disconnect and reconnect the Pinnacle PCTV 72e again.
  • Check results using the ‘dmesg’ command.

dmesg output (use the command ‘dmesg’ to print the kernal ring buffer.):
usb 1-6: new high speed USB device using ehci_hcd and address 4
usb 1-6: configuration #1 chosen from 1 choice
dib0700: loaded with support for 8 different device-types
dvb-usb: found a 'Pinnacle PCTV 72e' in cold state, will try to load a firmware
dvb-usb: did not find the firmware file. (dvb-usb-dib0700-1.20.fw) Please see li
nux/Documentation/dvb/ for more details on firmware-problems. (-2)
usbcore: registered new driver dvb_usb_dib0700
  • Download the firmware file here.
  • Copy the firmware file into /lib/firmware.
  • Disconnect and reconnect the Pinnacle PCTV 72e again.
  • Check results using the ‘dmesg’ command.

dmesg output (use the command ‘dmesg’ to print the kernal ring buffer.):
usb 1-6: new high speed USB device using ehci_hcd and address 5
usb 1-6: configuration #1 chosen from 1 choice
dvb-usb: found a 'Pinnacle PCTV 72e' in cold state, will try to load a firmware
dvb-usb: downloading firmware from file 'dvb-usb-dib0700-1.20.fw'
dib0700: firmware started successfully.
dvb-usb: found a 'Pinnacle PCTV 72e' in warm state.
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (Pinnacle PCTV 72e)
DVB: registering adapter 0 frontend 0 (DiBcom 7000PC)...
DiB0070: successfully identified
input: IR-receiver inside an USB DVB receiver as /class/input/input1
dvb-usb: schedule remote query interval to 50 msecs.
dvb-usb: Pinnacle PCTV 72e successfully initialized and connected.

 

Configure MPlayer

  • Enable CentOS to use the ATrpms repository.
Create /etc/yum.repos.d/atrpms.repo:
[atrpms]
name=Fedora Core $releasever - $basearch - ATrpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1
  • Install the ‘linuxtv-dvb-apps’ package (yum install linuxtv-dvb-apps).
  • Create an initial tuning data file.
Example initial tuning data file (Amsterdam area):
T 618000000 8MHz NONE NONE QAM64 8k 1/4 NONE
T 818000000 8MHz NONE NONE QAM64 8k 1/4 NONE
T 762000000 8MHz NONE NONE QAM64 8k 1/4 NONE
T 498000000 8MHz NONE NONE QAM64 8k 1/4 NONE
  • Use the initial tuning data file to create channels.conf.
Create channels.conf:
[root@freedom ~]# scan /root/initial-tuning-data > /etc/channels.conf
scanning /root/initial-tuning-data
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
initial transponder 618000000 0 9 9 3 1 3 0
initial transponder 818000000 0 9 9 3 1 3 0
initial transponder 762000000 0 9 9 3 1 3 0
initial transponder 498000000 0 9 9 3 1 3 0
>>> tune to: 618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
0x0000 0x044d: pmt_pid 0x1b62 Digitenne -- Nederland 1 (running)
0x0000 0x044e: pmt_pid 0x1b6c Digitenne -- Nederland 2 (running)
0x0000 0x044f: pmt_pid 0x1b76 Digitenne -- Nederland 3 (running)
0x0000 0x0450: pmt_pid 0x1b80 Digitenne -- TV Noord-Holland (running)
0x0000 0x0457: pmt_pid 0x1bc6 Digitenne -- Radio Noord-Holland (running)
0x0000 0x0458: pmt_pid 0x1bd0 Digitenne -- Radio 1 (running)
0x0000 0x0459: pmt_pid 0x1bda Digitenne -- Radio 2 (running)
0x0000 0x045a: pmt_pid 0x1be4 Digitenne -- 3FM (running)
0x0000 0x045b: pmt_pid 0x1bee Digitenne -- Radio 4 (running)
0x0000 0x045c: pmt_pid 0x1bf8 Digitenne -- Radio 5 (running)
0x0000 0x045d: pmt_pid 0x1c02 Digitenne -- Radio 6 (running)
0x0000 0x045e: pmt_pid 0x1c0c Digitenne -- Concertzender (running)
0x0000 0x045f: pmt_pid 0x1c16 Digitenne -- FunX (running)
Network Name 'Digitenne'
>>> tune to: 818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
0x0000 0x000b: pmt_pid 0x03f2 Digitenne -- RTL 4 (running, scrambled)
0x0000 0x000c: pmt_pid 0x03fc Digitenne -- RTL 5 (running, scrambled)
0x0000 0x000d: pmt_pid 0x0406 Digitenne -- RTL 7 (running, scrambled)
0x0000 0x000e: pmt_pid 0x0410 Digitenne -- SBS 6 (running, scrambled)
0x0000 0x000f: pmt_pid 0x041a Digitenne -- NET 5 (running, scrambled)
0x0000 0x006f: pmt_pid 0x0456 Digitenne -- SLAM!FM (running, scrambled)
0x0000 0x0070: pmt_pid 0x0460 Digitenne -- Radio 10 Gold (running, scrambled)
0x0000 0x0071: pmt_pid 0x046a Digitenne -- Q-Music (running, scrambled)
0x0000 0x0072: pmt_pid 0x0474 Digitenne -- BemBem (running, scrambled)
0x0000 0x0073: pmt_pid 0x047e Digitenne -- Classic FM (running, scrambled)
0x0000 0x0074: pmt_pid 0x0488 Digitenne -- Sky Radio (running, scrambled)
0x0000 0x0075: pmt_pid 0x0492 Digitenne -- Radio Veronica (running, scrambled)
Network Name 'Digitenne'
>>> tune to: 762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
0x0000 0x0015: pmt_pid 0x07da Digitenne -- Eredivisie Live 1 (running, scrambled)
0x0000 0x0016: pmt_pid 0x07e4 Digitenne -- Eredivisie 2/AT5 (running, scrambled)
0x0000 0x0017: pmt_pid 0x07ee Digitenne -- TMF (running, scrambled)
0x0000 0x0018: pmt_pid 0x07f8 Digitenne -- MTV (running, scrambled)
0x0000 0x0019: pmt_pid 0x0802 Digitenne -- Animal Planet (running, scrambled)
0x0000 0x001a: pmt_pid 0x080c Digitenne -- CNN (running, scrambled)
0x0000 0x001b: pmt_pid 0x0816 Digitenne -- BBC Prime (running, scrambled)
0x0000 0x001c: pmt_pid 0x0820 Digitenne -- NGC / CNBC (running, scrambled)
0x0000 0x00d9: pmt_pid 0x087a Digitenne -- BNR Nieuwsradio (running, scrambled)
0x0000 0x00da: pmt_pid 0x0884 Digitenne -- Arrow Classic Rock (running, scrambled)
0x0000 0x00db: pmt_pid 0x088e Digitenne -- Radio 538 (running, scrambled)
0x0000 0x1842: pmt_pid 0x1892 Digitenne -- SSU 1 (running, scrambled)
0x0000 0x1843: pmt_pid 0x1893 Digitenne -- SSU 2 (running, scrambled)
Network Name 'Digitenne'
>>> tune to: 498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
0x0000 0x001f: pmt_pid 0x0bc2 Digitenne -- Veronica/Jetix (running, scrambled)
0x0000 0x0020: pmt_pid 0x0bcc Digitenne -- RTL 8 (running, scrambled)
0x0000 0x0021: pmt_pid 0x0bd6 Digitenne -- é (running, scrambled)
0x0000 0x0022: pmt_pid 0x0be0 Digitenne -- Canvas/Ketnet (running, scrambled)
0x0000 0x0023: pmt_pid 0x0bea Digitenne -- Nickelodeon/ComedyCentral (running, scrambled)
0x0000 0x0024: pmt_pid 0x0bf4 Digitenne -- Discovery Channel (running, scrambled)
0x0000 0x0025: pmt_pid 0x0bfe Digitenne -- Eurosport 1 (running, scrambled)
0x0000 0x0026: pmt_pid 0x0c08 Digitenne -- Private Spice (running, scrambled)
Network Name 'Digitenne'
>>> tune to: 546000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
WARNING: >>> tuning failed!!!
>>> tune to: 546000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
retrying with f=826000000
>>> tune to: 826000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: filter timeout pid 0x0011
WARNING: filter timeout pid 0x0000
WARNING: filter timeout pid 0x0010
>>> tune to: 490000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
WARNING: filter timeout pid 0x0011
WARNING: filter timeout pid 0x0000
WARNING: filter timeout pid 0x0010
>>> tune to: 474000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE
WARNING: >>> tuning failed!!!
>>> tune to: 474000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
retrying with f=834000000
>>> tune to: 834000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
>>> tune to: 834000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
retrying with f=786000000
>>> tune to: 786000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
>>> tune to: 786000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
retrying with f=738000000
>>> tune to: 738000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
>>> tune to: 738000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
retrying with f=722000000
>>> tune to: 722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE (tuning failed)
WARNING: filter timeout pid 0x0011
WARNING: filter timeout pid 0x1b80
WARNING: filter timeout pid 0x1b62
WARNING: filter timeout pid 0x1b6c
Network Name 'Digitenne'
>>> tune to: 714000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE
WARNING: >>> tuning failed!!!
>>> tune to: 714000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_2_3:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE (tuning failed)
WARNING: >>> tuning failed!!!
dumping lists (59 services)
Done.

Example content of channels.conf:
Nederland 1:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:7011:7012:1101
Nederland 2:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:7021:7022:1102
Nederland 3:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:7031:7032:1103
TV Noord-Holland:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:7041:7042:1104
Radio Noord-Holland:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7112:1111
Radio 1:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7122:1112
Radio 2:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7132:1113
3FM:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7142:1114
Radio 4:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7152:1115
Radio 5:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7162:1116
Radio 6:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7172:1117
Concertzender:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7182:1118
FunX:618000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7192:1119
RTL 4:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1011:1012:11
RTL 5:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1021:1022:12
RTL 7:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1031:1032:13
SBS 6:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1041:1042:14
NET 5:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:1051:1052:15
SLAM!FM:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:1112:111
Radio 10 Gold:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:1122:112
Q-Music:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:1132:113
BemBem:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:1142:114
Classic FM:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:1152:115
Sky Radio:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:1162:116
Radio Veronica:818000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:1172:117
Eredivisie Live 1:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2011:2012:21
Eredivisie 2/AT5:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2021:2022:22
TMF:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2031:2032:23
MTV:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2041:2042:24
Animal Planet:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2051:2052:25
CNN:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2061:2062:26
BBC Prime:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2071:2072:27
NGC / CNBC:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:2081:2082:28
BNR Nieuwsradio:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:2172:217
Arrow Classic Rock:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:2182:218
Radio 538:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:2192:219
SSU 1:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:0:6210
SSU 2:762000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:0:6211
Veronica/Jetix:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3011:3012:31
RTL 8:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3021:3022:32
één:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3031:3032:33
Canvas/Ketnet:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3041:3042:34
Nickelodeon/ComedyCentral:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3051:3052:35
Discovery Channel:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3061:3062:36
Eurosport 1:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3071:3072:37
Private Spice:498000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_AUTO:FEC_AUTO:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:3081:3082:38
[044d]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:0:1101
[044e]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:0:1102
[044f]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:7031:7032:1103
[0450]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:0:1104
[0457]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7112:1111
[0458]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7122:1112
[0459]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7132:1113
[045a]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7142:1114
[045b]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7152:1115
[045c]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7162:1116
[045d]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7172:1117
[045e]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7182:1118
[045f]:722000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_1_2:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_4:HIERARCHY_NONE:0:7192:1119
  • Copy channels.conf to /etc/mplayer/channels.conf.
  • Record 1 minute using mencoder from first channel in channels.conf.
Using mencoder to record dvb-t stream:
[root@freedom tmp]# mencoder -endpos 00:01:00 -ovc copy -oac copy -idx -o test.avi dvb://
MEncoder SVN-r27937 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Pentium(R) 4 CPU 2.40GHz (Family: 15, Model: 2, Stepping: 7)
CPUflags: Type: 15 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
129 audio & 258 video codecs
dvb_tune Freq: 618000000
success: format: 29  data: 0x0 - 0x0
TS file format detected.
VIDEO MPEG2(pid=7011) AUDIO MPA(pid=7012) NO SUBS (yet)!  PROGRAM N. 0
VIDEO:  MPEG2  704x576  (aspect 3)  25.000 fps  15000.0 kbps (1875.0 kbyte/s)
[V] filefmt:29  fourcc:0x10000002  size:704x576  fps:25.000  ftime:=0.0400
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
AUDIO: 48000 Hz, 2 ch, s16le, 160.0 kbit/10.42% (ratio: 20000->192000)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
videocodec: framecopy (704x576 24bpp fourcc=10000002)
audiocodec: framecopy (format=50 chans=2 rate=48000 bits=16 B/s=20000 sample-1)
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
Pos:   0.9s     22f ( 0%)  0.00fps Trem:   0min   0mb  A-V:-0.084 [0:160]
1 duplicate frame(s)!
Writing index...75f ( 0%) 24.99fps Trem:   0min   0mb  A-V:-0.049 [3447:160]
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not writing vprp header.
 
Video stream: 3447.027 kbit/s  (430878 B/s)  size: 25869940 bytes  60.040 secs  1475 frames
 
Audio stream:  160.000 kbit/s  (20000 B/s)  size: 1200000 bytes  60.000 secs
[root@freedom tmp]#
Using mplayer to display 1 frame of the recorded dvb-t stream:
[root@freedom dev]# mplayer -vo jpeg -frames 1 /tmp/test.avi
MPlayer SVN-r27937 (C) 2000-2007 MPlayer Team
CPU: Intel(R) Pentium(R) 4 CPU 2.40GHz (Family: 15, Model: 2, Stepping: 7)
CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled with runtime CPU detection.
129 audio & 258 video codecs
Can't open joystick device /dev/input/js0: No such file or directory
Can't init input joystick
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.
 
Playing /tmp/test.avi.
AVI file format detected.
[aviheader] Video stream found, -vid 0
[aviheader] Audio stream found, -aid 1
VIDEO:  []  704x576  24bpp  25.000 fps  3447.0 kbps (420.8 kbyte/s)
Clip info:
 Software: MEncoder SVN-r27937
jpeg: Parsing suboptions.
jpeg: Progressive JPEG disabled.
jpeg: Baseline JPEG enabled.
jpeg: Suboptions parsed OK.
==========================================================================
Opening video decoder: [mpegpes] MPEG 1/2 Video passthrough
VDec: vo config request - 704 x 576 (preferred colorspace: Mpeg PES)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
The selected video_out device is incompatible with this codec.
Try appending the scale filter to your filter list,
e.g. -vf spp,scale instead of -vf spp.
VDecoder init failed :(
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
AUDIO: 48000 Hz, 2 ch, s16le, 160.0 kbit/10.42% (ratio: 20000->192000)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
VDec: vo config request - 704 x 576 (preferred colorspace: Planar YV12)
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
[swscaler @ 0x89f8440]No accelerated colorspace conversion found.
[swscaler @ 0x89f8440]using unscaled yuv420p -> rgb24 special converter
VO: [jpeg] 704x576 => 1024x576 RGB 24-bit
jpeg: . - Output directory already exists and is writable.
A:   0.2 V:   0.0 A-V:  0.126 ct:  0.000   2/  2 ??% ??% ??,?% 0 0
 
Exiting... (End of file)
Example frame:

Useful scripts

Script to record dvb-t stream (for crontab usage):
#!/bin/sh
mencoder -endpos $3 \
-ovc copy \
-oac copy \
-idx \
-o $2 dvb://$1 \
> /dev/null 2>&1
Script to transcode recorded dvb-t stream to divx using the xvid codec:
#!/bin/sh
#
# usage: ./divxit $input $output
#
# create index for good video and audio sync
mencoder \
-idx $1 \
-ovc copy \
-oac copy \
-forceidx \
-o $2.$$
#
# create divx
mencoder $2.$$ \
-ofps 25 \
-ovc xvid \
-oac mp3lame \
-lameopts abr:br=192 \
-srate 48000 \
-vf scale=640:368 \
-xvidencopts fixed_quant=4 \
-o $2
rm $2.$$
Crontab example using both scripts:
# 10 dec 2008, 20:30 - 21:25 = 00:55:00, Ned1, Taggart
25 20 10 12 * /usr/local/bin/gb-raw Nederland1 /home/nvsluis/TV/taggart.ts 01:05:00;
/usr/local/bin/divxit /home/nvsluis/TV/taggart.ts /home/nvsluis/TV/taggart.avi > /dev/null 2>&1

Last update: 2008-12-10, Niels van Sluis, <niels@van-sluis.nl>

Leave a Reply