1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Fixed handling DVB subtitles for PES recordings

This commit is contained in:
Klaus Schmidinger 2009-11-22 12:30:17 +01:00
parent 8ffbea3788
commit d8857154a1
3 changed files with 4 additions and 2 deletions

View File

@ -1082,6 +1082,7 @@ Rolf Ahrenberg <rahrenbe@cc.hut.fi>
for fixing handling file name length on VFAT systems in case they for fixing handling file name length on VFAT systems in case they
contain UTF-8 characters contain UTF-8 characters
for fixing wrong bracketing in cChannel::SubtitlingType() etc. for fixing wrong bracketing in cChannel::SubtitlingType() etc.
for fixing handling DVB subtitles for PES recordings
Ralf Klueber <ralf.klueber@vodafone.com> Ralf Klueber <ralf.klueber@vodafone.com>
for reporting a bug in cutting a recording if there is only a single editing mark for reporting a bug in cutting a recording if there is only a single editing mark

View File

@ -6188,3 +6188,4 @@ Video Disk Recorder Revision History
replaying the recording (at least until the index file has been generated). replaying the recording (at least until the index file has been generated).
- The cRingBufferLinear::Read() function now returns -1 and sets errno to - The cRingBufferLinear::Read() function now returns -1 and sets errno to
EAGAIN if the buffer is already full. EAGAIN if the buffer is already full.
- Fixed handling DVB subtitles for PES recordings (thanks to Rolf Ahrenberg).

View File

@ -7,7 +7,7 @@
* Original author: Marco Schlüßler <marco@lordzodiac.de> * Original author: Marco Schlüßler <marco@lordzodiac.de>
* With some input from the "subtitle plugin" by Pekka Virtanen <pekka.virtanen@sci.fi> * With some input from the "subtitle plugin" by Pekka Virtanen <pekka.virtanen@sci.fi>
* *
* $Id: dvbsubtitle.c 2.1 2008/05/25 14:36:24 kls Exp $ * $Id: dvbsubtitle.c 2.2 2009/11/22 12:28:53 kls Exp $
*/ */
#include "dvbsubtitle.h" #include "dvbsubtitle.h"
@ -699,7 +699,7 @@ int cDvbSubtitleConverter::ConvertFragments(const uchar *Data, int Length)
} }
if (Length > PayloadOffset + SubstreamHeaderLength) { if (Length > PayloadOffset + SubstreamHeaderLength) {
int64_t pts = PesGetPts(Data); int64_t pts = PesHasPts(Data) ? PesGetPts(Data) : 0;
if (pts) if (pts)
dbgconverter("Converter PTS: %lld\n", pts); dbgconverter("Converter PTS: %lld\n", pts);
const uchar *data = Data + PayloadOffset + SubstreamHeaderLength; // skip substream header const uchar *data = Data + PayloadOffset + SubstreamHeaderLength; // skip substream header