Bug #3398
Missing logical channel numbers in 4.0.7 for DVB-T Melbourne - Australia
100%
Description
I have found that of the 6 muxes available for DVB-T in Melbourne. Australia, tvheadend seems only able to obtain logical channel numbers for the services of two of these muxes (Channel 31, 557.625MHz and SBS Melbourne, 184.5MHz).
The muxes for which services are discovered but no lcns are found are:
Nine Network Australia
Seven Network
Network TEN
ABC Melbourne
I have enabled trace and debug options and found that there are two additional private values present which are not known by tvheadend 4.0.7 in dvb_psi.c. These are 0x3200 and 0x3201. 0x3200 is for Network TEN, Nine Network Australia and Seven Network. 0x3201 is for ABC Melbourne.
In a similar manner to the resolution by Jaroslav in https://tvheadend.org/issues/2583, I added these to line 1225 of dvb_psi.c (v4.0.7) so it now reads:
case 0x83:
if (priv 0 || priv 0x28 || priv 0x29 || priv 0xa5 ||
priv 0x233A || priv 0x3200 || priv == 0x3201) goto lcn;
This seems to resolve the finding of lcns for the remaining 4 muxes.
However, I have noticed the lcns for all the services are not found in the first scan. All the services are identified but the lcns for the services of some muxes seem to take a few scans before they are found. Within a given mux, the lcns are either all found or none are found. This number of scans seems required seems to vary when starting from a fresh, clean install ie. deleting the tvheadend .hts directory.
This code may also be needed in git master.
Please advise if there is a better way to resolve the issue. I can provide trace output if required.
Regards
Paul
History
Updated by Paul Freeman almost 9 years ago
Please not the mailing software has removed most of the equivalence operators in the code I posted.
Updated by Jaroslav Kysela almost 9 years ago
- Status changed from New to Fixed
- % Done changed from 0 to 100
Applied in changeset commit:tvheadend|329ff4bb073b2ec6fedf07a1bc5d8f0bafa92dfc.