Ticket #424: pmt-tostring-fix.diff

File pmt-tostring-fix.diff, 2.4 KB (added by Stuart Auchterlonie, 19 years ago)

Patch to fix problems as described.

  • libs/libmythtv/mpeg/mpegtables.cpp

    old new  
    301301        .arg(Version()).arg(tsheader()->PID(), 0, 16)
    302302        .arg(ProgramNumber());
    303303
    304     if (0 != ProgramInfoLength())
     304    if (0 != StreamCount())
    305305    {
    306306        vector<const unsigned char*> desc =
    307307            MPEGDescriptor::Parse(ProgramInfo(), ProgramInfoLength());
  • libs/libmythtv/dtvsignalmonitor.cpp

    old new  
    241241        hasAudio += pmt->IsAudio(i);
    242242    }
    243243
    244     if (hasVideo && hasAudio)
     244    if ((hasVideo && hasAudio) ||
     245        (GetStreamData()->GetVideoStreamsRequired() == 0))
    245246        AddFlags(kDTVSigMon_PMTMatch);
    246247}
    247248
  • libs/libmythtv/mpeg/mpegstreamdata.cpp

    old new  
    251251        AddWritingPID(pmt.PCRPID());
    252252    }
    253253
    254     // Misc
    255     uint programNumber = 1;
    256 
    257254    // Construct
    258255    ProgramMapTable *pmt2 = ProgramMapTable::
    259         Create(programNumber, _pid_pmt_single_program,
     256        Create(pmt.ProgramNumber(), _pid_pmt_single_program,
    260257               pmt.PCRPID(), pmt.Version(), pids, types);
    261258
    262259    // Set Continuity Header
  • libs/libmythtv/mpeg/mpegstreamdata.h

    old new  
    9191    inline void SetPMTSingleProgram(ProgramMapTable*);
    9292    void SetVideoStreamsRequired(uint num)
    9393        { _pmt_single_program_num_video = num; }
     94    uint GetVideoStreamsRequired()          { return _pmt_single_program_num_video; }
    9495
    9596    // Single program stuff, gets
    9697    int DesiredProgram(void) const          { return _desired_program; }