diff options
author | Jochen Dolze <vdr@dolze.de> | 2012-10-15 23:32:11 +0200 |
---|---|---|
committer | Jochen Dolze <vdr@dolze.de> | 2012-10-15 23:32:11 +0200 |
commit | 7e3a33b48e1a0e1b958324780f6ce61e03acba78 (patch) | |
tree | 6d26d5c0f0497f107247780fc6fc633c60c9f3d6 /command/demux.cpp | |
parent | 59e7ed171851cf46185820b421a35a906540fedd (diff) | |
download | vdr-plugin-markad-7e3a33b48e1a0e1b958324780f6ce61e03acba78.tar.gz vdr-plugin-markad-7e3a33b48e1a0e1b958324780f6ce61e03acba78.tar.bz2 |
Fixed demux abort when stream error bit is set (reported by satellit)
Diffstat (limited to 'command/demux.cpp')
-rw-r--r-- | command/demux.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/command/demux.cpp b/command/demux.cpp index 17008b9..991a82f 100644 --- a/command/demux.cpp +++ b/command/demux.cpp @@ -686,10 +686,16 @@ bool cTS2Pkt::Process(uchar *TSData, int TSSize, AvPacket *Pkt) return true; } - if ((tshdr->TError) && (lasterror!=ERR_HDRBIT)) + if (tshdr->TError) { - lasterror=ERR_HDRBIT; - esyslog("stream error bit set (0x%04x)",pid); + if (lasterror!=ERR_HDRBIT) { + lasterror=ERR_HDRBIT; + esyslog("stream error bit set (0x%04x)",pid); + } + Clear(Pkt); + skipped+=queue->Skipped(); + skipped+=TS_SIZE; + return true; } int buflen=TS_SIZE+1; |