summaryrefslogtreecommitdiffstats
path: root/loader/dmo/DMO_VideoDecoder.h
diff options
context:
space:
mode:
Diffstat (limited to 'loader/dmo/DMO_VideoDecoder.h')
-rw-r--r--loader/dmo/DMO_VideoDecoder.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/loader/dmo/DMO_VideoDecoder.h b/loader/dmo/DMO_VideoDecoder.h
new file mode 100644
index 0000000000..1f48523a1e
--- /dev/null
+++ b/loader/dmo/DMO_VideoDecoder.h
@@ -0,0 +1,26 @@
+#ifndef AVIFILE_DMO_VIDEODECODER_H
+#define AVIFILE_DMO_VIDEODECODER_H
+
+typedef struct _DMO_VideoDecoder DMO_VideoDecoder;
+
+int DMO_VideoDecoder_GetCapabilities(DMO_VideoDecoder *this);
+
+DMO_VideoDecoder * DMO_VideoDecoder_Open(char* dllname, GUID* guid, BITMAPINFOHEADER * format, int flip, int maxauto);
+
+void DMO_VideoDecoder_Destroy(DMO_VideoDecoder *this);
+
+void DMO_VideoDecoder_StartInternal(DMO_VideoDecoder *this);
+
+void DMO_VideoDecoder_StopInternal(DMO_VideoDecoder *this);
+
+int DMO_VideoDecoder_DecodeInternal(DMO_VideoDecoder *this, const void* src, int size, int is_keyframe, char* pImage);
+
+/*
+ * bits == 0 - leave unchanged
+ */
+//int SetDestFmt(DMO_VideoDecoder * this, int bits = 24, fourcc_t csp = 0);
+int DMO_VideoDecoder_SetDestFmt(DMO_VideoDecoder *this, int bits, unsigned int csp);
+int DMO_VideoDecoder_SetDirection(DMO_VideoDecoder *this, int d);
+
+
+#endif /* AVIFILE_DMO_VIDEODECODER_H */