diff loader/dmo/dmo.h @ 8294:8e00b6a9e40b

DMO interfaces (copied/converted(c++->c) from avifile)
author arpi
date Tue, 26 Nov 2002 22:54:11 +0000
parents
children 2c8cdb9123b8
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/loader/dmo/dmo.h	Tue Nov 26 22:54:11 2002 +0000
@@ -0,0 +1,81 @@
+#ifndef DMO_H
+#define DMO_H
+
+/*
+ *
+ * Definition of important DMO interfaces.
+ * Created using freely-available DirectX 8.1 SDK
+ * ( http://msdn.microsoft.com )
+ *
+ */
+
+#include "dshow/iunk.h"
+#include "dshow/guids.h"
+
+typedef AM_MEDIA_TYPE DMO_MEDIA_TYPE;
+
+
+
+enum _DMO_INPUT_DATA_BUFFER_FLAGS
+{
+    DMO_INPUT_DATA_BUFFERF_SYNCPOINT	= 0x1,
+    DMO_INPUT_DATA_BUFFERF_TIME		= 0x2,
+    DMO_INPUT_DATA_BUFFERF_TIMELENGTH	= 0x4
+};
+
+enum _DMO_OUTPUT_DATA_BUFFER_FLAGS
+{
+    DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT	= 0x1,
+    DMO_OUTPUT_DATA_BUFFERF_TIME	= 0x2,
+    DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH	= 0x4,
+    DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE	= 0x1000000
+};
+
+enum _DMO_INPUT_STATUS_FLAGS
+{
+    DMO_INPUT_STATUSF_ACCEPT_DATA	= 0x1
+};
+
+enum _DMO_INPUT_STREAM_INFO_FLAGS
+{
+    DMO_INPUT_STREAMF_WHOLE_SAMPLES	= 0x1,
+    DMO_INPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER	= 0x2,
+    DMO_INPUT_STREAMF_FIXED_SAMPLE_SIZE	= 0x4,
+    DMO_INPUT_STREAMF_HOLDS_BUFFERS	= 0x8
+};
+
+enum _DMO_OUTPUT_STREAM_INFO_FLAGS
+{
+    DMO_OUTPUT_STREAMF_WHOLE_SAMPLES	= 0x1,
+    DMO_OUTPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER	= 0x2,
+    DMO_OUTPUT_STREAMF_FIXED_SAMPLE_SIZE	= 0x4,
+    DMO_OUTPUT_STREAMF_DISCARDABLE	= 0x8,
+    DMO_OUTPUT_STREAMF_OPTIONAL		= 0x10
+};
+
+enum _DMO_SET_TYPE_FLAGS
+{
+    DMO_SET_TYPEF_TEST_ONLY		= 0x1,
+    DMO_SET_TYPEF_CLEAR			= 0x2
+};
+
+enum _DMO_PROCESS_OUTPUT_FLAGS
+{
+    DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER	= 0x1
+};
+
+enum _DMO_VIDEO_OUTPUT_STREAM_FLAGS
+{
+    DMO_VOSF_NEEDS_PREVIOUS_SAMPLE	= 0x1
+};
+
+
+/* MediaErr.h */
+#define DMO_E_INVALIDSTREAMINDEX 0x80040201
+#define DMO_E_INVALIDTYPE        0x80040202
+#define DMO_E_TYPE_NOT_SET       0x80040203
+#define DMO_E_NOTACCEPTING       0x80040204
+#define DMO_E_TYPE_NOT_ACCEPTED  0x80040205
+#define DMO_E_NO_MORE_ITEMS      0x80040206
+
+#endif /* DMO_H */