-
Notifications
You must be signed in to change notification settings - Fork 2
/
osd.h
46 lines (38 loc) · 1.27 KB
/
osd.h
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
43
44
45
46
//////////////////////////////////////////////////////////////////////////////
/// ///
/// This file is part of the VDR mpv plugin and licensed under AGPLv3 ///
/// ///
/// See the README file for copyright information ///
/// ///
//////////////////////////////////////////////////////////////////////////////
#ifndef __MPV_OSD_H
#define __MPV_OSD_H
#include <vdr/osd.h>
#include "player.h"
class cMpvOsdProvider:public cOsdProvider
{
private:
cMpvPlayer *Player;
public:
cMpvOsdProvider(cMpvPlayer *player);
virtual cOsd *CreateOsd(int Left, int Top, uint Level);
virtual bool ProvidesTrueColor();
};
class cMpvOsd:public cOsd
{
private:
void WriteToMpv(int sw, int sh, int x, int y, int w, int h, const uint8_t * argb);
int winWidth;
int winHeight;
cMpvPlayer *Player;
int fdOsd;
char *pOsd;
void OsdSizeUpdate();
protected:
virtual void SetActive(bool On);
public:
cMpvOsd(int Left, int Top, uint Level, cMpvPlayer *player);
virtual ~cMpvOsd();
virtual void Flush(void);
};
#endif