summaryrefslogtreecommitdiff
path: root/osd.h
diff options
context:
space:
mode:
authorManiac <na@na.na>2015-07-03 22:29:41 +0200
committerManiac <na@na.na>2015-07-03 22:29:41 +0200
commitda407909879f82c15f786bda3fedda0cae892100 (patch)
tree143c2b842028c38e8f7facfe576567039459afd9 /osd.h
downloadvdr-plugin-mpv-da407909879f82c15f786bda3fedda0cae892100.tar.gz
vdr-plugin-mpv-da407909879f82c15f786bda3fedda0cae892100.tar.bz2
import 0.0.40.0.4
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