summaryrefslogtreecommitdiff
path: root/osd.c
diff options
context:
space:
mode:
Diffstat (limited to 'osd.c')
-rw-r--r--osd.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/osd.c b/osd.c
index 66f26dab..0f65bd87 100644
--- a/osd.c
+++ b/osd.c
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: osd.c,v 1.40 2010-01-24 14:53:50 rofafor Exp $
+ * $Id: osd.c,v 1.41 2010-03-12 23:00:27 phintuka Exp $
*
*/
@@ -291,6 +291,8 @@ void cXinelibOsd::CmdRle(int Wnd, int X0, int Y0,
osdcmd.colors = Colors;
osdcmd.palette = clut;
osdcmd.scaling = xc.osd_scaling;
+ if (m_Layer == OSD_LEVEL_SUBTITLES || m_Layer == OSD_LEVEL_TTXTSUBS)
+ osdcmd.scaling = xc.osd_spu_scaling;
if (DirtyArea)
memcpy(&osdcmd.dirty_area, DirtyArea, sizeof(osd_rect_t));
@@ -370,7 +372,7 @@ eOsdError cXinelibOsd::SetAreas(const tArea *Areas, int NumAreas)
#if VDRVERSNUM >= 10708
- if(xc.osd_scaling && ((m_Layer==OSD_LEVEL_SUBTITLES) || (m_Layer==OSD_LEVEL_TTXTSUBS))) {
+ if (xc.osd_spu_scaling && (m_Layer == OSD_LEVEL_SUBTITLES || m_Layer == OSD_LEVEL_TTXTSUBS)) {
m_ExtentWidth = 720;
m_ExtentHeight = 576;
} else {
@@ -449,7 +451,7 @@ void cXinelibOsd::Flush(void)
return;
int SendDone = 0, XOffset = 0, YOffset = 0;
- if(!xc.osd_scaling && ((m_Layer==OSD_LEVEL_SUBTITLES) || (m_Layer==OSD_LEVEL_TTXTSUBS))) {
+ if (!xc.osd_spu_scaling && (m_Layer == OSD_LEVEL_SUBTITLES || m_Layer == OSD_LEVEL_TTXTSUBS)) {
double Aspect;
int W, H;
m_Device->GetOsdSize(W, H, Aspect);