summaryrefslogtreecommitdiff
path: root/dxr3ffmpeg.h
diff options
context:
space:
mode:
authoraustriancoder <austriancoder>2004-08-05 23:05:21 +0000
committeraustriancoder <austriancoder>2004-08-05 23:05:21 +0000
commitc47666d42f7972e1b51f9de61ce0fa27c72f3127 (patch)
treee34a87e37901b7f892fb6f330ccb15bcba30039b /dxr3ffmpeg.h
downloadvdr-plugin-dxr3-c47666d42f7972e1b51f9de61ce0fa27c72f3127.tar.gz
vdr-plugin-dxr3-c47666d42f7972e1b51f9de61ce0fa27c72f3127.tar.bz2
initial import
Diffstat (limited to 'dxr3ffmpeg.h')
-rw-r--r--dxr3ffmpeg.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/dxr3ffmpeg.h b/dxr3ffmpeg.h
new file mode 100644
index 0000000..7795f74
--- /dev/null
+++ b/dxr3ffmpeg.h
@@ -0,0 +1,42 @@
+#ifndef _DXR3_FFMPEG_H_
+#define _DXR3_FFMPEG_H_
+
+extern "C"
+{
+ #include <avcodec.h>
+};
+
+//#include <stdlib.h>
+//#include <stdint.h>
+#include <string.h>
+#include "dxr3singleton.h"
+
+// ==================================
+// a codec used by this plugin
+struct Dxr3Codec
+{
+ Dxr3Codec() : Open(false) {}
+
+ AVCodec* codec;
+ AVCodecContext codec_context;
+ enum CodecID id;
+ bool Open;
+};
+
+// ==================================
+// class to work with ffmpeg
+class cDxr3Ffmepg : public Singleton<cDxr3Ffmepg>
+{
+public:
+ cDxr3Ffmepg();
+ ~cDxr3Ffmepg() {}
+
+ bool FindCodec(struct Dxr3Codec& Codec);
+ bool OpenCodec(struct Dxr3Codec& Codec);
+ void CloseCodec(struct Dxr3Codec& Codec);
+
+private:
+ cDxr3Ffmepg(cDxr3Ffmepg&); // no copy constructor
+};
+
+#endif /*_DXR3_FFMPEG_H_*/