blob: 0708da750541ee268a8139c0197499aeae3aa33b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#ifndef _DXR3OSD_SUBPICTURE_H_
#define _DXR3OSD_SUBPICTURE_H_
#include "dxr3vdrincludes.h"
#include "dxr3interface_spu_encoder.h"
#if VDRVERSNUM >= 10307
/*
The OSD goes berserk in some setups if it's refreshed too often.
If it doesn't happen for you or you don't like the small delay this
causes, change this to 0. Experiment with larger values if the default
of 25ms does not calm down your OSD.
*/
#define FLUSHRATE 25
// ==================================
// osd interface for => vdr1,3,7
class cDxr3SubpictureOsd : public cOsd
{
private:
cSPUEncoder* Spu; ///< interface to cSPUEncoder
bool shown; ///< is the osd shown?
#if VDRVERSNUM >= 10318
cTimeMs *last;
#else
int last;
#endif
public:
cDxr3SubpictureOsd(int Left, int Top/*, int SpuDev*/);
~cDxr3SubpictureOsd();
eOsdError CanHandleAreas(const tArea *Areas, int NumAreas);
void SaveRegion(int x1, int y1, int x2, int y2);
void RestoreRegion(void);
void Flush();
};
#endif /*VDRVERSNUM*/
#endif /*_DXR3OSD_SUBPICTURE_H_*/
|