From 64fa14104981876fec58cc051268191a21a02c90 Mon Sep 17 00:00:00 2001 From: Hidenori Takeshima Date: Wed, 15 Aug 2001 17:38:28 +0000 Subject: [PATCH] Added some dshow headers. --- include/Makefile.in | 4 ++ include/audevcod.h | 26 +++++++++ include/dshow.h | 37 +++++++++++++ include/evcode.h | 51 ++++++++++++++++++ include/uuids.h | 127 ++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 245 insertions(+) create mode 100644 include/audevcod.h create mode 100644 include/dshow.h create mode 100644 include/evcode.h create mode 100644 include/uuids.h diff --git a/include/Makefile.in b/include/Makefile.in index 5bf5670f4d8..003c612d28a 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -7,6 +7,7 @@ MODULE = none INSTALLED_INCLUDES = \ amaudio.h \ amvideo.h \ + audevcod.h \ basetsd.h \ cderr.h \ cguid.h \ @@ -30,7 +31,9 @@ INSTALLED_INCLUDES = \ docobj.h \ dplay.h \ dplobby.h \ + dshow.h \ dsound.h \ + evcode.h \ guiddef.h \ imagehlp.h \ imm.h \ @@ -112,6 +115,7 @@ INSTALLED_INCLUDES = \ tlhelp32.h \ unknwn.h \ urlmon.h \ + uuids.h \ ver.h \ vfw.h \ winbase.h \ diff --git a/include/audevcod.h b/include/audevcod.h new file mode 100644 index 00000000000..eb53f1e5884 --- /dev/null +++ b/include/audevcod.h @@ -0,0 +1,26 @@ +#ifndef __WINE_AUDEVCOD_H_ +#define __WINE_AUDEVCOD_H_ + +typedef enum +{ + SNDDEV_ERROR_Open = 1, + SNDDEV_ERROR_Close = 2, + SNDDEV_ERROR_GetCaps = 3, + SNDDEV_ERROR_PrepareHeader = 4, + SNDDEV_ERROR_UnprepareHeader = 5, + SNDDEV_ERROR_Reset = 6, + SNDDEV_ERROR_Restart = 7, + SNDDEV_ERROR_GetPosition = 8, + SNDDEV_ERROR_Write = 9, + SNDDEV_ERROR_Pause = 10, + SNDDEV_ERROR_Stop = 11, + SNDDEV_ERROR_Start = 12, + SNDDEV_ERROR_AddBuffer = 13, + SNDDEV_ERROR_Query = 14, +} SNDDEV_ERR; + +#define EC_SND_DEVICE_ERROR_BASE 0x0200 +#define EC_SNDDEV_IN_ERROR (EC_SND_DEVICE_ERROR_BASE + 0x00) +#define EC_SNDDEV_OUT_ERROR (EC_SND_DEVICE_ERROR_BASE + 0x01) + +#endif /* __WINE_AUDEVCOD_H_ */ diff --git a/include/dshow.h b/include/dshow.h new file mode 100644 index 00000000000..222e5ece78a --- /dev/null +++ b/include/dshow.h @@ -0,0 +1,37 @@ +#ifndef __WINE_DSHOW_H +#define __WINE_DSHOW_H + +#include "windows.h" +#include "windowsx.h" +#include "olectl.h" +#include "ddraw.h" +#include "mmsystem.h" + +#include "strmif.h" +#include "amvideo.h" +#include "amaudio.h" +#include "control.h" +#include "evcode.h" +#include "uuids.h" +/*#include "errors.h"*/ /* not yet */ +/*#include "edevdefs.h"*/ /* not yet */ +/*#include "audevcod.h"*/ /* not yet */ +/*#include "dvdevcod.h"*/ /* not yet */ + +#ifndef AM_NOVTABLE +#define AM_NOVTABLE +#endif /* AM_NOVTABLE */ + +#ifndef NUMELEMS +#define NUMELEMS(elem) (sizeof(elem)/sizeof((elem)[0])) +#endif /* NUMELEMS */ + +#ifndef OATRUE +#define OATRUE (-1) +#endif /* OATRUE */ +#ifndef OAFALSE +#define OAFALSE (0) +#endif /* OAFALSE */ + + +#endif /* __WINE_DSHOW_H */ diff --git a/include/evcode.h b/include/evcode.h new file mode 100644 index 00000000000..bc7e04a62f3 --- /dev/null +++ b/include/evcode.h @@ -0,0 +1,51 @@ +#ifndef __WINE_EVCODE_H +#define __WINE_EVCODE_H + +#define EC_SYSTEMBASE 0x00 +#define EC_USER 0x8000 + +#define EC_COMPLETE 0x01 +#define EC_USERABORT 0x02 +#define EC_ERRORABORT 0x03 +#define EC_TIME 0x04 +#define EC_REPAINT 0x05 +#define EC_STREAM_ERROR_STOPPED 0x06 +#define EC_STREAM_ERROR_STILLPLAYING 0x07 +#define EC_ERROR_STILLPLAYING 0x08 +#define EC_PALETTE_CHANGED 0x09 +#define EC_VIDEO_SIZE_CHANGED 0x0A +#define EC_QUALITY_CHANGE 0x0B +#define EC_SHUTTING_DOWN 0x0C +#define EC_CLOCK_CHANGED 0x0D +#define EC_PAUSED 0x0E + +#define EC_OPENING_FILE 0x10 +#define EC_BUFFERING_DATA 0x11 +#define EC_FULLSCREEN_LOST 0x12 +#define EC_ACTIVATE 0x13 +#define EC_NEED_RESTART 0x14 +#define EC_WINDOW_DESTROYED 0x15 +#define EC_DISPLAY_CHANGED 0x16 +#define EC_STARVATION 0x17 +#define EC_OLE_EVENT 0x18 +#define EC_NOTIFY_WINDOW 0x19 +#define EC_STREAM_CONTROL_STOPPED 0x1A +#define EC_STREAM_CONTROL_STARTED 0x1B +#define EC_END_OF_SEGMENT 0x1C +#define EC_SEGMENT_STARTED 0x1D +#define EC_LENGTH_CHANGED 0x1E +#define EC_DEVICE_LOST 0x1F + +#define EC_STEP_COMPLETE 0x24 +#define EC_SKIP_FRAMES 0x25 + +#define EC_TIMECODE_AVAILABLE 0x30 +#define EC_EXTDEVICE_MODE_CHANGE 0x31 + +#define EC_GRAPH_CHANGED 0x50 +#define EC_CLOCK_UNSET 0x51 + +#define EC_WMT_EVENT_BASE 0x0251 +#define EC_WMT_INDEX_EVENT EC_WMT_EVENT_BASE + +#endif /* __WINE_EVCODE_H */ diff --git a/include/uuids.h b/include/uuids.h new file mode 100644 index 00000000000..7bd99fb5f36 --- /dev/null +++ b/include/uuids.h @@ -0,0 +1,127 @@ +#ifndef __WINE_DSHOW_UUIDS_H +#define __WINE_DSHOW_UUIDS_H + +/* FIXME - many GUIDs should be defined in this header. */ + +/* This macro must be defined for debugging... */ +#ifndef OUR_GUID_ENTRY +#define OUR_GUID_ENTRY(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \ + DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8); +#endif /* OUR_GUID_ENTRY */ + +#define MEDIATYPE_NULL GUID_NULL +#define MEDIASUBTYPE_NULL GUID_NULL + +/* --- Media Type --- */ +OUR_GUID_ENTRY(MEDIATYPE_Video,0x73646976, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIATYPE_Audio,0x73647561, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIATYPE_Interleaved,0x73766169, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIATYPE_File,0x656c6966, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIATYPE_Text,0x73747874, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIATYPE_Midi,0x7364696D, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIATYPE_URL_STREAM,0x736c7275, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) + +OUR_GUID_ENTRY(MEDIATYPE_Stream,0xe436eb83,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) + + +/* --- Media SubType --- */ + +/* FourCC */ +OUR_GUID_ENTRY(MEDIASUBTYPE_YUYV,0x56595559, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_IYUV,0x56555949, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_YVU9,0x39555659, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_Y411,0x31313459, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_Y41P,0x50313459, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_YUY2,0x32595559, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_YVYU,0x55595659, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_UYVY,0x59565955, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_Y211,0x31313259, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) +OUR_GUID_ENTRY(MEDIASUBTYPE_YV12,0x32315659, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) + +/* RGB */ +OUR_GUID_ENTRY(MEDIASUBTYPE_RGB1,0xe436eb78,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_RGB4,0xe436eb79,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_RGB8,0xe436eb7a,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_RGB555,0xe436eb7c,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_RGB565,0xe436eb7b,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_RGB24,0xe436eb7d,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_RGB32,0xe436eb7e,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_ARGB32,0x773c9ac0,0x3274,0x11d0,0xb7,0x24,0x00,0xaa,0x00,0x6c,0x1a,0x01) + +/* Audio */ +OUR_GUID_ENTRY(MEDIASUBTYPE_PCM,0x00000001, + 0x0000,0x0010,0x80,0x00,0x00,0xaa,0x00,0x38,0x9b,0x71) + +/* Stream */ +OUR_GUID_ENTRY(MEDIASUBTYPE_Avi,0xe436eb88,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_WAVE,0xe436eb8b,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_AU,0xe436eb8c,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +OUR_GUID_ENTRY(MEDIASUBTYPE_AIFF,0xe436eb8d,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) + +/* --- Format Type --- */ +OUR_GUID_ENTRY(FORMAT_None, + 0x0F6417D6,0xc318,0x11d0,0xa4,0x3f,0x00,0xa0,0xc9,0x22,0x31,0x96) +OUR_GUID_ENTRY(FORMAT_VideoInfo, + 0x05589f80,0xc356,0x11ce,0xbf,0x01,0x00,0xaa,0x00,0x55,0x59,0x5a) +OUR_GUID_ENTRY(FORMAT_VideoInfo2, + 0xf72a76A0,0xeb0a,0x11d0,0xac,0xe4,0x00,0x00,0xc0,0xcc,0x16,0xba) +OUR_GUID_ENTRY(FORMAT_WaveFormatEx, + 0x05589f81,0xc356,0x11ce,0xbf,0x01,0x00,0xaa,0x00,0x55,0x59,0x5a) + + +/* --- CLSIDs --- */ + +/* CaptureGraphBuilder */ +OUR_GUID_ENTRY(CLSID_CaptureGraphBuilder, + 0xBF87B6E0,0x8C27,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5) +OUR_GUID_ENTRY(CLSID_CaptureGraphBuilder2, + 0xBF87B6E1,0x8C27,0x11D0,0xB3,0xF0,0x00,0xAA,0x00,0x37,0x61,0xC5) + +/* System Reference Clock */ +OUR_GUID_ENTRY(CLSID_SystemClock, + 0xe436ebb1,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +/* Filter Mapper */ +OUR_GUID_ENTRY(CLSID_FilterMapper, + 0xe436ebb2,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +/* Filter Graph */ +OUR_GUID_ENTRY(CLSID_FilterGraph, + 0xe436ebb3,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +/* AVI Splitter */ +OUR_GUID_ENTRY(CLSID_AviSplitter, + 0x1b544c20,0xfd0b,0x11ce,0x8c,0x63,0x00,0xaa,0x00,0x44,0xb5,0x1e) +/* AVI Reader */ +OUR_GUID_ENTRY(CLSID_AviReader, + 0x1b544c21,0xfd0b,0x11ce,0x8c,0x63,0x00,0xaa,0x00,0x44,0xb5,0x1e) +/* Video Renderer */ +OUR_GUID_ENTRY(CLSID_VideoRenderer, + 0x70e102b0,0x5556,0x11ce,0x97,0xc0,0x00,0xaa,0x00,0x55,0x59,0x5a) +/* Audio Renderer */ +OUR_GUID_ENTRY(CLSID_AudioRender, + 0xe30629d1,0x27e5,0x11ce,0x87,0x5d,0x00,0x60,0x8c,0xb7,0x80,0x66) +/* Async File Reader */ +OUR_GUID_ENTRY(CLSID_AsyncReader, + 0xe436ebb5,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70) +/* Memory Allocator */ +OUR_GUID_ENTRY(CLSID_MemoryAllocator, + 0x1e651cc0,0xb199,0x11d0,0x82,0x12,0x00,0xc0,0x4f,0xc3,0x2c,0x45) + +#undef OUR_GUID_ENTRY + +#endif /* __WINE_DSHOW_UUIDS_H */