summaryrefslogtreecommitdiffstats
path: root/kaffeine/src/input/dvb/ts2rtp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kaffeine/src/input/dvb/ts2rtp.cpp')
-rw-r--r--kaffeine/src/input/dvb/ts2rtp.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/kaffeine/src/input/dvb/ts2rtp.cpp b/kaffeine/src/input/dvb/ts2rtp.cpp
index 9f87a84..4784122 100644
--- a/kaffeine/src/input/dvb/ts2rtp.cpp
+++ b/kaffeine/src/input/dvb/ts2rtp.cpp
@@ -345,7 +345,12 @@ void Ts2Rtp::psiTables( QPtrList<ChannelDesc> *channels )
buf[off++] = 0x01; // current_next_indicator
buf[off++] = 0x00; // section_number
buf[off++] = 0x00; // last_section_number
- buf[off++] = desc->vpid>>8; buf[off++] = desc->vpid&0xff; // PCR pid
+ if ( desc->vpid ) {
+ buf[off++] = desc->vpid>>8; buf[off++] = desc->vpid&0xff; // PCR pid
+ }
+ else if ( desc->napid ) {
+ buf[off++] = desc->apid[0].pid>>8; buf[off++] = desc->apid[0].pid&0xff; // PCR pid
+ }
buf[off++] = 0x00; buf[off++] = 0x00; // infos_length
if ( desc->vpid ) {
buf[off++] = desc->vType; // stream_type