summaryrefslogtreecommitdiff
path: root/osd.h
diff options
context:
space:
mode:
Diffstat (limited to 'osd.h')
-rw-r--r--osd.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/osd.h b/osd.h
new file mode 100644
index 0000000..2beb31e
--- /dev/null
+++ b/osd.h
@@ -0,0 +1,44 @@
+//////////////////////////////////////////////////////////////////////////////
+/// ///
+/// 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);
+
+ cMpvPlayer *Player;
+ int fdOsd;
+ char *pOsd;
+
+ protected:
+ virtual void SetActive(bool On);
+
+ public:
+ cMpvOsd(int Left, int Top, uint Level, cMpvPlayer *player);
+ virtual ~cMpvOsd();
+ virtual void Flush(void);
+};
+
+#endif