@@ -961,6 +961,7 @@ void DvbRecordingFile::pmtSectionChanged(const QByteArray &pmtSectionData_)
pmtSectionData = pmtSectionData_;
DvbPmtSection pmtSection(pmtSectionData);
DvbPmtParser pmtParser(pmtSection);
+ int pcr_pid = pmtSection.pcr_pid();
QSet<int> newPids;
if (pmtParser.videoPid != -1) {
@@ -979,6 +980,13 @@ void DvbRecordingFile::pmtSectionChanged(const QByteArray &pmtSectionData_)
newPids.insert(pmtParser.teletextPid);
}
+ /* check PCR PID is set */
+ if (pcr_pid != 0x1fff) {
+ /* Check not already in list */
+ if (!newPids.contains(pcr_pid))
+ newPids.insert(pcr_pid);
+ }
+
for (int i = 0; i < pids.size(); ++i) {
int pid = pids.at(i);
The ISO/IEC standard 13818-1 or ITU-T Rec. H.222.0 standard allow transport vendors to place PCR (Program Clock Reference) on a different PID. This patch adds it recording to file. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> --- src/dvb/dvbrecording.cpp | 8 ++++++++ 1 file changed, 8 insertions(+)