Mythtv DVB-T channel scanning and importing broken
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
mythtv (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: mythtv
Scanning for channels, and importing previously scanned channels from a channels.conf file is buggy. Mythtv sucessfully creates the transponders and channels (it detects the channels, obtains a lock and stores them in the database), but the mythfrontend cannot tune them (no lock). Upon further investigation I noticed that the mplexid column of the channel table points to the wrong entry in the dtv_multiplex table. This seems to be related to the following upstream bugs:
http://
http://
http://
This bug unfortunately breaks mythtv for DVB-T in (at least) Austria.
Here is the output from the database before fixing the mess caused by the bug:
mysql> select * from channel;
+------
| chanid | channum | freqid | sourceid | callsign | name | icon | finetune | videofilters | xmltvid | recpriority | contrast | brightness | colour | hue | tvformat | commfree | visible | outputfilters | useonairguide | mplexid | serviceid | atscsrcid | tmoffset | atsc_major_chan | atsc_minor_chan |
+------
| 11121 | 10121 | NULL | 1 | PULS 4 | PULS 4 | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 0 | 3 | 10121 | NULL | 0 | 0 | 0 |
| 12302 | 11302 | NULL | 1 | 3SAT | 3SAT | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 3 | 11302 | NULL | 0 | 0 | 0 |
| 12303 | 11303 | NULL | 1 | ORF Sport Plus | ORF Sport Plus | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 3 | 11303 | NULL | 0 | 0 | 0 |
| 11101 | 10101 | NULL | 1 | ORF1 | ORF1 | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 1 | 10101 | NULL | 0 | 0 | 0 |
| 11112 | 10112 | NULL | 1 | ORF2 St | ORF2 St | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 1 | 10112 | NULL | 0 | 0 | 0 |
| 11120 | 10120 | NULL | 1 | ATV+ | ATV+ | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 1 | 10120 | NULL | 0 | 0 | 0 |
| 11132 | 10132 | NULL | 1 | ORF2 B | ORF2 B | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 1 | 10132 | NULL | 0 | 0 | 0 |
+------
7 rows in set (0.00 sec)
mysql> select * from dtv_multiplex;
+------
| mplexid | sourceid | transportid | networkid | frequency | inversion | symbolrate | fec | polarity | modulation | bandwidth | lp_code_rate | transmission_mode | guard_interval | visible | constellation | hierarchy | hp_code_rate | sistandard | serviceversion | updatetimestamp |
+------
| 1 | 1 | 500 | 8232 | 858000000 | a | NULL | NULL | NULL | NULL | 8 | 3/4 | 8 | 1/4 | 0 | qam_16 | n | 3/4 | dvb | 2 | 2008-02-02 20:16:03 |
| 2 | 1 | 500 | 8232 | 514000000 | a | NULL | NULL | NULL | qpsk | 8 | auto | a | auto | 0 | auto | a | auto | dvbt | 33 | 2008-02-02 20:16:03 |
| 3 | 1 | 330 | 8232 | 474000000 | a | NULL | NULL | NULL | NULL | 8 | 3/4 | 8 | 1/4 | 0 | qam_16 | n | 3/4 | dvb | 1 | 2008-02-02 20:16:09 |
| 4 | 1 | 330 | 8232 | 490000000 | a | NULL | NULL | NULL | qpsk | 8 | auto | a | auto | 0 | auto | a | auto | dvbt | 33 | 2008-02-02 20:16:09 |
+------
4 rows in set (0.00 sec)
The following statements correct the problem:
mysql> update channel set mplexid=2 where mplexid=1;
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4 Changed: 4 Warnings: 0
mysql> update channel set mplexid=4 where mplexid=3;
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3 Changed: 3 Warnings: 0
The data within the database is the result from importing the following channel.conf file:
# Filename: channels.
# Purpose: channel configuration file for DVB-T in Graz/Austria.
# Authors: grml-team (grml.org), (c) Michael Prokop <email address hidden>
# Bug-Reports: see http://
# License: This file is licensed under the GPL v2.
# Latest change: Mon Okt 22 22:06:02 CEST 2007 [mika]
#######
# Usage example: 'ln -s ~/.channels/
#######
ORF1:514000000:
ORF2 St:514000000:
ATV+:514000000:
ORF2 B:514000000:
ORF1:802000000:
ORF2 St:802000000:
ATV+:802000000:
ORF2 B:802000000:
PULS TV AUSTRIA:
3SAT:490000000:
ORF Sport Plus:490000000:
## END OF FILE #######
BTW: I'm using a Pinnacle PCTV Hybrid DVB-T stick with the em2880_dvb driver from http://
Cheers
Florian Hackenberger wrote: svn.mythtv. org/trac/ ticket/ 4138 svn.mythtv. org/trac/ ticket/ 4163 svn.mythtv. org/trac/ ticket/ 4154 --+---- -----+- ------- +------ ----+-- ------- ------- +------ ------- ---+--- ---+--- ------- +------ ------- -+----- ----+-- ------- ----+-- ------- -+----- ------- +------ --+---- ---+--- ------- +------ ----+-- ------- +------ ------- --+---- ------- ----+-- ------- +------ -----+- ------- ---+--- ------- +------ ------- ----+-- ------- ------- -+ --+---- -----+- ------- +------ ----+-- ------- ------- +------ ------- ---+--- ---+--- ------- +------ ------- -+----- ----+-- ------- ----+-- ------- -+----- ------- +------ --+---- ---+--- ------- +------ ----+-- ------- +------ ------- --+---- ------- ----+-- ------- +------ -----+- ------- ---+--- ------- +------ ------- ----+-- ------- ------- -+
> Public bug reported:
>
> Binary package hint: mythtv
>
> Scanning for channels, and importing previously scanned channels from a channels.conf file is buggy. Mythtv sucessfully creates the transponders and channels (it detects the channels, obtains a lock and stores them in the database), but the mythfrontend cannot tune them (no lock). Upon further investigation I noticed that the mplexid column of the channel table points to the wrong entry in the dtv_multiplex table. This seems to be related to the following upstream bugs:
> http://
> http://
> http://
>
> This bug unfortunately breaks mythtv for DVB-T in (at least) Austria.
>
> Here is the output from the database before fixing the mess caused by the bug:
> mysql> select * from channel;
> +------
> | chanid | channum | freqid | sourceid | callsign | name | icon | finetune | videofilters | xmltvid | recpriority | contrast | brightness | colour | hue | tvformat | commfree | visible | outputfilters | useonairguide | mplexid | serviceid | atscsrcid | tmoffset | atsc_major_chan | atsc_minor_chan |
> +------
> | 11121 | 10121 | NULL | 1 | PULS 4 | PULS 4 | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 0 | 3 | 10121 | NULL | 0 | 0 | 0 |
> | 12302 | 11302 | NULL | 1 | 3SAT | 3SAT | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 3 | 11302 | NULL | 0 | 0 | 0 |
> | 12303 | 11303 | NULL | 1 | ORF Sport Plus | ORF Sport Plus | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 3 | 11303 | NULL | 0 | 0 | 0 |
> | 11101 | 10101 | NULL | 1 | ORF1 | ORF1 | | NULL | | | 0 | 32768 | 32768 | 32768 | 32768 | Default | 0 | 1 | | 1 | 1 | 10101 | NULL | 0 | 0 | 0 |
> | 11112 | 10112 | NULL | 1 | ORF2 St | ORF2 St | ...