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

Avoiding flashing effects in the OSD of full featured DVB cards by explicitly clearing the OSD windows before opening them

This commit is contained in:
Klaus Schmidinger 2004-07-18 10:20:31 +02:00
parent 35724f07bd
commit 39ad1fe179
3 changed files with 13 additions and 1 deletions

View File

@ -1032,6 +1032,8 @@ Marco Schl
for pointing out that it is unnecessary to add section filters to the list of
filters if they can't be opened
for fixing handling error case '-1' when polling section filters
for suggesting to avoiding flashing effects in the OSD of full featured DVB cards
by explicitly clearing the OSD windows before opening them
Jürgen Schmitz <j.schmitz@web.de>
for reporting a bug in displaying the current channel when switching via the SVDRP

View File

@ -2954,3 +2954,5 @@ Video Disk Recorder Revision History
- Fixed handling error case '-1' when polling CAM connections.
- Making sure the OSD reports oeWrongAlignment errors before any oeAreasOverlap
error (suggested by Reinhard Nissl).
- Avoiding flashing effects in the OSD of full featured DVB cards by explicitly
clearing the OSD windows before opening them (suggested by Marco Schlüßler).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: dvbosd.c 1.23 2004/06/12 13:10:03 kls Exp $
* $Id: dvbosd.c 1.24 2004/07/18 10:20:05 kls Exp $
*/
#include "dvbosd.h"
@ -39,6 +39,14 @@ cDvbOsd::cDvbOsd(int Left, int Top, int OsdDev)
shown = false;
if (osdDev < 0)
esyslog("ERROR: illegal OSD device handle (%d)!", osdDev);
else {
// must clear all windows here to avoid flashing effects - doesn't work if done
// in Flush() only for the windows that are actually used...
for (int i = 0; i < MAXNUMWINDOWS; i++) {
Cmd(OSD_SetWindow, 0, i + 1);
Cmd(OSD_Clear);
}
}
}
cDvbOsd::~cDvbOsd()