Opened 9 years ago

Closed 5 years ago

#12718 closed Bug Report - General (Unverified)

IPTV channels with dual programs in PAT do not work

Reported by: andrej.filipcic@… Owned by:
Priority: minor Milestone: unknown
Component: MythTV - Recording Version: Unspecified
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Some IPTV channels have more complex PAT, an example for 3 of them:

  • PROGRAM_ID=0 (0x00), PMT_PID: 16(0x10)
  • PROGRAM_ID=701 (0x2BD), PMT_PID: 701(0x2BD)
  • PROGRAM_ID=1 (0x01), PMT_PID: 32(0x20)
  • PROGRAM_ID=0 (0x00), PMT_PID: 16(0x10)
  • PROGRAM_ID=0 (0x00), PMT_PID: 16(0x10)
  • PROGRAM_ID=2500 (0x9C4), PMT_PID: 2590(0xA1E)

Typically, the non 0 program is the one to select. A simple fix in IPTVSignalMonitor::HandlePAT solves the issue for me, where the highest program number is selected.

Attachments (2)

iptv-0.27.patch (1.8 KB ) - added by andrej.filipcic@… 9 years ago.
mythbackend.log (10.1 KB ) - added by andrej.filipcic@… 9 years ago.

Download all attachments as: .zip

Change History (9)

by andrej.filipcic@…, 9 years ago

Attachment: iptv-0.27.patch added

comment:1 by Karl Egly, 9 years ago

Component: MythTV - GeneralMythTV - Recording
Status: newinfoneeded_new

What version are you seeing this issue with?

I fixed that in August 2013 for IPTV in [9d4b5e2313ea0b1eb7718264782f529bd88c555d]. See the discussion in #11791.

comment:2 by andrej.filipcic@…, 9 years ago

With both fixes/0.27 and origin/fixes/0.28 branches.

The fix you have describes does not work for me, the program selected stays at 0.

comment:3 by andrej.filipcic@…, 9 years ago

To be more precise, it seems that the part of the code in your patch is never reached, since it breaks at the beginning of the first block of DTVSignalMonitor::HandlePAT:

    AddFlags(kDTVSigMon_PATSeen);
    int pmt_pid = pat->FindPID(programNumber);
    if (GetStreamData() && pmt_pid)
    {
        AddFlags(kDTVSigMon_PATMatch);
        GetStreamData()->AddListeningPID(pmt_pid);
        insert_crc(seen_table_crc, *pat);
        return;
    }

comment:4 by Karl Egly, 9 years ago

I don't understand how that can happen.

Can you add a backend log? What is the program_number in the channel database?

by andrej.filipcic@…, 9 years ago

Attachment: mythbackend.log added

comment:5 by andrej.filipcic@…, 9 years ago

Attached the mythbackend log for the 1st channel, where program 701 should be used.

comment:6 by paul-h, 6 years ago

Status: infoneeded_newnew

comment:7 by Stuart Auchterlonie, 5 years ago

Resolution: Unverified
Status: newclosed

Closing all old tickets in trac.

If your issue still persists, please open an issue in Github https://github.com/MythTV/mythtv/issues

and reference the existing trac ticket.

Note: See TracTickets for help on using tickets.