Skip to content

Commit

Permalink
Fix Barracuda09#169 : missing pids in RTCP and DESCRIBE messages when…
Browse files Browse the repository at this point in the history
… transforming

When doing the translation the pid list is empty. This fixes this issue.
  • Loading branch information
lars18th committed Nov 16, 2022
1 parent 414f5fc commit 1d600fe
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 0 deletions.
5 changes: 5 additions & 0 deletions src/input/DeviceData.h
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,11 @@ class DeviceData :
/// @param params
void parseAndUpdatePidsTable(const TransportParamVector& params);

///
void copyFilterPidsTable(const DeviceData &source) {
_filter.copyPidTable(source._filter);
}

int hasLock() const;

fe_status_t getSignalStatus() const;
Expand Down
4 changes: 4 additions & 0 deletions src/input/Transformation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -222,6 +222,10 @@ const DeviceData &Transformation::transformDeviceData(const DeviceData &deviceDa
snr = 15;
}
_transformedDeviceData.setMonitorData(status, strength, snr, ber, ublocks);

// copy the pid filtering list
_transformedDeviceData.copyFilterPidsTable(deviceData);

}
return (_transform && _enabled && _fileParsed) ? _transformedDeviceData : deviceData;
}
Expand Down
7 changes: 7 additions & 0 deletions src/mpegts/Filter.h
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,13 @@ class Filter {
return _sdt;
}

///
void copyPidTable(const Filter &source) {
base::MutexLock lock(_mutex);
_pidTable = source._pidTable;
return;
}

// =========================================================================
// =========================================================================

Expand Down

0 comments on commit 1d600fe

Please sign in to comment.