diff --git a/HISTORY b/HISTORY index 5c9b783b..0e98894d 100644 --- a/HISTORY +++ b/HISTORY @@ -6889,7 +6889,7 @@ Video Disk Recorder Revision History - Fixed switching into time shift mode when pausing live video (thanks to Reinhard Nissl for helping to debug this one). -2012-02-22: Version 1.7.25 +2012-02-24: Version 1.7.25 - The fps value for channels where it differs from the default is now set correctly when pausing live video. @@ -6908,3 +6908,4 @@ Video Disk Recorder Revision History "word by word" (thanks to Rolf Ahrenberg). - Fixed upscaling cBitmaps with anti-aliasing (thanks to Rolf Ahrenberg for reporting a problem with color palettes in subtitles). +- Fixed getting the video aspect ratio for scaling subtitles. diff --git a/dvbsubtitle.c b/dvbsubtitle.c index bb30cb90..c29c9155 100644 --- a/dvbsubtitle.c +++ b/dvbsubtitle.c @@ -7,7 +7,7 @@ * Original author: Marco Schlüßler * With some input from the "subtitle plugin" by Pekka Virtanen * - * $Id: dvbsubtitle.c 2.24 2012/02/23 09:20:36 kls Exp $ + * $Id: dvbsubtitle.c 2.25 2012/02/24 11:19:54 kls Exp $ */ @@ -797,7 +797,6 @@ cDvbSubtitleConverter::cDvbSubtitleConverter(void) displayHeight = windowHeight = 576; windowHorizontalOffset = 0; windowVerticalOffset = 0; - SetOsdData(); pages = new cList; bitmaps = new cList; Start(); @@ -831,7 +830,6 @@ void cDvbSubtitleConverter::Reset(void) displayHeight = windowHeight = 576; windowHorizontalOffset = 0; windowVerticalOffset = 0; - SetOsdData(); Unlock(); } @@ -1001,7 +999,11 @@ void cDvbSubtitleConverter::SetOsdData(void) bool cDvbSubtitleConverter::AssertOsd(void) { LOCK_THREAD; - return osd || (osd = cOsdProvider::NewOsd(int(round(osdFactorX * windowHorizontalOffset + osdDeltaX)), int(round(osdFactorY * windowVerticalOffset + osdDeltaY)) + Setup.SubtitleOffset, OSD_LEVEL_SUBTITLES)); + if (!osd) { + SetOsdData(); + osd = cOsdProvider::NewOsd(int(round(osdFactorX * windowHorizontalOffset + osdDeltaX)), int(round(osdFactorY * windowVerticalOffset + osdDeltaY)) + Setup.SubtitleOffset, OSD_LEVEL_SUBTITLES); + } + return osd != NULL; } int cDvbSubtitleConverter::ExtractSegment(const uchar *Data, int Length, int64_t Pts)