* include/amvideo.h (RESET_MASKS,RESET_PALETTE): Use ZeroMemory instead
of memset to avoid <string.h>. Still need a fix for memcmp. * include/dshow.h (AM_ASPECT_RATIO_MODE,AM_WST_DRAWBGMODE,AM_WST_LEVEL) (AMExtendedSeekingCapabilities,AM_WST_SERVICE,AM_WST_STATE) (AM_WST_STYLE): Add enums. (AM_WST_PAGE,AMVABeginFrameInfo,AMVACompBufferInfo,AMVAEndFrameInfo, AMVAInternalMemInfo,AMVAUncompBufferInfo,AMVAUncompDataInfo): New structures. * include/errors.h (VFW_*): Define. * include/evcode.h (AM_WMT_EVENT_DATA): New structure. * include/mmsystem.h (WAVE_FORMAT_EXTENSIBLE): Define. * include/edevdefs.h (ED_FORMAT_SMPTE_30,ED_FORMAT_SMPTE_30DROP) (ED_FORMAT_SMPTE_25,ED_FORMAT_SMPTE_24): Move from here... * include/strmif.h: ... to here. New file. * include/aviriff.h: New file. * include/bdatypes.h: New file. * include/control.h: New file. * include/dvdmedia.h: New file. * include/il21dec.h: New file. * include/ks.h: New file. * include/ksmedia.h: New file. * include/mmreg.h: New file. * include/mpegtype.h: New file. * include/vidcap.h: New file. * include/vmr9.h: New file. * include/vptype.h: New file. * include/xprtdefs.h: New file.
This commit is contained in:
parent
fe9a050c9e
commit
5f6ae3d318
|
@ -1,3 +1,33 @@
|
|||
2006-05-10 Dimitri Papadopoulos <papadopo@users.sourceforge.net>
|
||||
|
||||
* include/amvideo.h (RESET_MASKS,RESET_PALETTE): Use ZeroMemory instead
|
||||
of memset to avoid <string.h>. Still need a fix for memcmp.
|
||||
* include/dshow.h (AM_ASPECT_RATIO_MODE,AM_WST_DRAWBGMODE,AM_WST_LEVEL)
|
||||
(AMExtendedSeekingCapabilities,AM_WST_SERVICE,AM_WST_STATE)
|
||||
(AM_WST_STYLE): Add enums.
|
||||
(AM_WST_PAGE,AMVABeginFrameInfo,AMVACompBufferInfo,AMVAEndFrameInfo,
|
||||
AMVAInternalMemInfo,AMVAUncompBufferInfo,AMVAUncompDataInfo): New
|
||||
structures.
|
||||
* include/errors.h (VFW_*): Define.
|
||||
* include/evcode.h (AM_WMT_EVENT_DATA): New structure.
|
||||
* include/mmsystem.h (WAVE_FORMAT_EXTENSIBLE): Define.
|
||||
* include/edevdefs.h (ED_FORMAT_SMPTE_30,ED_FORMAT_SMPTE_30DROP)
|
||||
(ED_FORMAT_SMPTE_25,ED_FORMAT_SMPTE_24): Move from here...
|
||||
* include/strmif.h: ... to here. New file.
|
||||
* include/aviriff.h: New file.
|
||||
* include/bdatypes.h: New file.
|
||||
* include/control.h: New file.
|
||||
* include/dvdmedia.h: New file.
|
||||
* include/il21dec.h: New file.
|
||||
* include/ks.h: New file.
|
||||
* include/ksmedia.h: New file.
|
||||
* include/mmreg.h: New file.
|
||||
* include/mpegtype.h: New file.
|
||||
* include/vidcap.h: New file.
|
||||
* include/vmr9.h: New file.
|
||||
* include/vptype.h: New file.
|
||||
* include/xprtdefs.h: New file.
|
||||
|
||||
2006-05-10 Dimitri Papadopoulos <papadopo@users.sourceforge.net>
|
||||
|
||||
* include/winnls.h [WINVER >= 0x0500] (LOCALE_IDEFAULTEBCDICCODEPAGE):
|
||||
|
@ -82,8 +112,8 @@
|
|||
|
||||
2006-05-03 Dimitri Papadopoulos <papadopo@users.sourceforge.net>
|
||||
|
||||
* lib/directx/quartz.def: Move from lib/directx/...
|
||||
* lib/quartz.def: ... to lib/
|
||||
* lib/directx/quartz.def: Move from here...
|
||||
* lib/quartz.def: ... to here.
|
||||
|
||||
2006-05-03 Dimitri Papadopoulos <papadopo@users.sourceforge.net>
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
#endif
|
||||
|
||||
#include <ddraw.h>
|
||||
#include <strmif.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -27,8 +28,8 @@ extern "C" {
|
|||
#define BIT_MASKS_MATCH(pbmi1,pbmi2) (!memcmp((pbmi1)->dwBitMasks,(pbmi2)->dwBitMasks,3*sizeof(DWORD)))
|
||||
#define PALETTISED(pbmi) ((pbmi)->bmiHeader.biBitCount <= 8)
|
||||
#define PALETTE_ENTRIES(pbmi) (1 << (pbmi)->bmiHeader.biBitCount)
|
||||
#define RESET_MASKS(pbmi) ((void)memset((pbmi)->dwBitFields,0,3*sizeof(DWORD)))
|
||||
#define RESET_PALETTE(pbmi) ((void)memset(((pbmi)->bmiColors,0,256*sizeof(RGBQUAD)));
|
||||
#define RESET_MASKS(pbmi) (ZeroMemory((PVOID)(pbmi)->dwBitFields,3*sizeof(DWORD)))
|
||||
#define RESET_PALETTE(pbmi) (ZeroMemory((PVOID)(pbmi)->bmiColors,256*sizeof(RGBQUAD)));
|
||||
#define SIZE_EGA_PALETTE (16*sizeof(RGBQUAD))
|
||||
#define SIZE_MASKS (3*sizeof(DWORD))
|
||||
#define SIZE_PALETTE (256*sizeof(RGBQUAD))
|
||||
|
|
|
@ -0,0 +1,87 @@
|
|||
#ifndef _AVIRIFF_H
|
||||
#define _AVIRIFF_H
|
||||
#if __GNUC__ >=3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifndef _MMSYSTEM_H
|
||||
#include <mmsystem.h>
|
||||
#endif
|
||||
#ifndef _WINGDI_H
|
||||
#include <wingdi.h>
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct _avimainheader {
|
||||
FOURCC fcc;
|
||||
DWORD cb;
|
||||
DWORD dwMicroSecPerFrame;
|
||||
DWORD dwMaxBytesPerSec;
|
||||
DWORD dwPaddingGranularity;
|
||||
DWORD dwFlags;
|
||||
DWORD dwTotalFrames;
|
||||
DWORD dwInitialFrames;
|
||||
DWORD dwStreams;
|
||||
DWORD dwSuggestedBufferSize;
|
||||
DWORD dwWidth;
|
||||
DWORD dwHeight;
|
||||
DWORD dwReserved[4];
|
||||
} AVIMAINHEADER;
|
||||
#define AVIF_COPYRIGHTED 0x00020000
|
||||
#define AVIF_HASINDEX 0x00000010
|
||||
#define AVIF_ISINTERLEAVED 0x00000100
|
||||
#define AVIF_MUSTUSEINDEX 0x00000020
|
||||
#define AVIF_WASCAPTUREFILE 0x00010000
|
||||
typedef struct _avioldindex {
|
||||
FOURCC fcc;
|
||||
DWORD cb;
|
||||
struct _avioldindex_entry {
|
||||
DWORD dwChunkId;
|
||||
DWORD dwFlags;
|
||||
DWORD dwOffset;
|
||||
DWORD dwSize;
|
||||
} aIndex[];
|
||||
} AVIOLDINDEX;
|
||||
#define AVIIF_LIST 0x00000001
|
||||
#define AVIIF_KEYFRAME 0x00000010
|
||||
#define AVIIF_NO_TIME 0x00000100
|
||||
typedef struct {
|
||||
BYTE bFirstEntry;
|
||||
BYTE bNumEntries;
|
||||
WORD wFlags;
|
||||
PALETTEENTRY peNew[];
|
||||
} AVIPALCHANGE;
|
||||
typedef struct _avistreamheader {
|
||||
FOURCC fcc;
|
||||
DWORD cb;
|
||||
FOURCC fccType;
|
||||
FOURCC fccHandler;
|
||||
DWORD dwFlags;
|
||||
WORD wPriority;
|
||||
WORD wLanguage;
|
||||
DWORD dwInitialFrames;
|
||||
DWORD dwScale;
|
||||
DWORD dwRate;
|
||||
DWORD dwStart;
|
||||
DWORD dwLength;
|
||||
DWORD dwSuggestedBufferSize;
|
||||
DWORD dwQuality;
|
||||
DWORD dwSampleSize;
|
||||
struct {
|
||||
short int left;
|
||||
short int top;
|
||||
short int right;
|
||||
short int bottom;
|
||||
} rcFrame;
|
||||
} AVISTREAMHEADER;
|
||||
#define AVISF_DISABLED 0x00000001
|
||||
#define AVISF_VIDEO_PALCHANGES 0x00010000
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,32 @@
|
|||
#ifndef _BDATYPES_H
|
||||
#define _BDATYPES_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types */
|
||||
typedef enum {
|
||||
MEDIA_TRANSPORT_PACKET,
|
||||
MEDIA_ELEMENTARY_STREAM,
|
||||
MEDIA_MPEG2_PSI,
|
||||
MEDIA_TRANSPORT_PAYLOAD
|
||||
} MEDIA_SAMPLE_CONTENT;
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct {
|
||||
DWORD dwOffset
|
||||
DWORD dwPacketLength
|
||||
DWORD dwStride
|
||||
} MPEG2_TRANSPORT_STRIDE;
|
||||
typedef struct {
|
||||
ULONG ulPID;
|
||||
MEDIA_SAMPLE_CONTENT MediaSampleContent ;
|
||||
} PID_MAP;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,18 @@
|
|||
#ifndef _CONTROL_H
|
||||
#define _CONTROL_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Data Types */
|
||||
typedef LONG_PTR OAEVENT;
|
||||
typedef LONG_PTR OAHWND;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -4,11 +4,105 @@
|
|||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#include <strmif.h>
|
||||
#include <amaudio.h>
|
||||
#include <amvideo.h>
|
||||
#include <evcode.h>
|
||||
#include <audevcod.h>
|
||||
#include <dvdevcod.h>
|
||||
#include <errors.h>
|
||||
|
||||
#include <vptype.h>
|
||||
#include <ks.h>
|
||||
#include <vidcap.h>
|
||||
#include <bdatypes.h>
|
||||
#include <dvdmedia.h>
|
||||
#include <il21dec.h>
|
||||
#include <ddraw.h> /* DDSCAPS2, DDPIXELFORMAT */
|
||||
#ifndef _WINGDI_H
|
||||
#include <wingdi.h> /* BITMAPINFOHEADER */
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types */
|
||||
typedef enum _AM_ASPECT_RATIO_MODE {
|
||||
AM_ARMODE_STRETCHED,
|
||||
AM_ARMODE_LETTER_BOX,
|
||||
AM_ARMODE_CROP,
|
||||
AM_ARMODE_STRETCHED_AS_PRIMARY
|
||||
} AM_ASPECT_RATIO_MODE;
|
||||
typedef enum _AM_WST_DRAWBGMODE {
|
||||
AM_WST_DRAWBGMODE_Opaque,
|
||||
AM_WST_DRAWBGMODE_Transparent
|
||||
} AM_WST_DRAWBGMODE,*PAM_WST_DRAWBGMODE;
|
||||
typedef enum _AM_WST_LEVEL {
|
||||
AM_WST_LEVEL_1_5 = 0
|
||||
} AM_WST_LEVEL,*PAM_WST_LEVEL;
|
||||
typedef enum _AM_WST_SERVICE {
|
||||
AM_WST_SERVICE_None = 0,
|
||||
AM_WST_SERVICE_Text,
|
||||
AM_WST_SERVICE_IDS,
|
||||
AM_WST_SERVICE_Invalid
|
||||
} AM_WST_SERVICE,*PAM_WST_SERVICE;
|
||||
typedef enum _AM_WST_STATE {
|
||||
AM_WST_STATE_Off = 0,
|
||||
AM_WST_STATE_On
|
||||
} AM_WST_STATE,*PAM_WST_STATE;
|
||||
typedef enum _AM_WST_STYLE {
|
||||
AM_WST_STYLE_None = 0,
|
||||
AM_WST_STYLE_Invers
|
||||
} AM_WST_STYLE,*PAM_WST_STYLE;
|
||||
typedef enum {
|
||||
AM_EXSEEK_CANSEEK= 1,
|
||||
AM_EXSEEK_CANSCAN = 2,
|
||||
AM_EXSEEK_MARKERSEEK = 4,
|
||||
AM_EXSEEK_SCANWITHOUTCLOCK = 8,
|
||||
AM_EXSEEK_NOSTANDARDREPAINT = 16,
|
||||
AM_EXSEEK_BUFFERING = 32,
|
||||
AM_EXSEEK_SENDS_VIDEOFRAMEREADY = 64
|
||||
} AMExtendedSeekingCapabilities;
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct _AM_WST_PAGE {
|
||||
DWORD dwPageNr;
|
||||
DWORD dwSubPageNr;
|
||||
BYTE *pucPageData;
|
||||
} AM_WST_PAGE,*PAM_WST_PAGE;
|
||||
typedef struct _tag_AMVABeginFrameInfo{
|
||||
DWORD dwDestSurfaceIndex;
|
||||
LPVOID pInputData;
|
||||
DWORD dwSizeInputData;
|
||||
LPVOID pOutputData;
|
||||
DWORD dwSizeOutputData;
|
||||
} AMVABeginFrameInfo,*LPAMVABeginFrameInfo;
|
||||
typedef struct _tag_AMVACompBufferInfo{
|
||||
DWORD dwNumCompBuffers;
|
||||
DWORD dwWidthToCreate;
|
||||
DWORD dwHeightToCreate;
|
||||
DWORD dwBytesToAllocate;
|
||||
DDSCAPS2 ddCompCaps;
|
||||
DDPIXELFORMAT ddPixelFormat;
|
||||
} AMVACompBufferInfo,*LPAMVACompBufferInfo;
|
||||
typedef struct _tag_AMVAEndFrameInfo{
|
||||
DWORD dwSizeMiscData;
|
||||
LPVOID pMiscData;
|
||||
} AMVAEndFrameInfo,*LPAMVAEndFrameInfo;
|
||||
typedef struct _tag_AMVAInternalMemInfo{
|
||||
DWORD dwScratchMemAlloc;
|
||||
} AMVAInternalMemInfo,*LPAMVAInternalMemInfo;
|
||||
typedef struct _tag_AMVAUncompBufferInfo{
|
||||
DWORD dwMinNumSurfaces;
|
||||
DWORD dwMaxNumSurfaces;
|
||||
DDPIXELFORMAT ddUncompPixelFormat;
|
||||
} AMVAUncompBufferInfo,*LPAMVAUncompBufferInfo;
|
||||
typedef struct _tag_AMVAUncompDataInfo{
|
||||
DWORD dwUncompWidth;
|
||||
DWORD dwUncompHeight;
|
||||
DDPIXELFORMAT ddUncompPixelFormat;
|
||||
} AMVAUncompDataInfo,*LPAMVAUncompDataInfo;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,101 @@
|
|||
#ifndef _DVDMEDIA_H
|
||||
#define _DVDMEDIA_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifndef _STRMIF_H
|
||||
#include <strmif.h>
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Structures - AM_SAMPLE2_PROPERTIES Structure */
|
||||
#define AM_VIDEO_FLAG_FIELD_MASK 0x0003
|
||||
#define AM_VIDEO_FLAG_INTERLEAVED_FRAME 0x0000
|
||||
#define AM_VIDEO_FLAG_FIELD1 0x0001
|
||||
#define AM_VIDEO_FLAG_FIELD2 0x0002
|
||||
#define AM_VIDEO_FLAG_FIELD1FIRST 0x0004
|
||||
#define AM_VIDEO_FLAG_WEAVE 0x0008
|
||||
#define AM_VIDEO_FLAG_REPEAT_FIELD 0x0040
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types */
|
||||
enum AM_MPEG2Level {
|
||||
AM_MPEG2Level_Low = 1,
|
||||
AM_MPEG2Level_Main,
|
||||
AM_MPEG2Level_High1440,
|
||||
AM_MPEG2Level_High
|
||||
};
|
||||
enum AM_MPEG2Profile {
|
||||
AM_MPEG2Profile_Simple = 1,
|
||||
AM_MPEG2Profile_Main,
|
||||
AM_MPEG2Profile_SNRScalable,
|
||||
AM_MPEG2Profile_SpatiallyScalable,
|
||||
AM_MPEG2Profile_High
|
||||
};
|
||||
typedef enum {
|
||||
AM_RATE_ChangeRate = 1,
|
||||
AM_RATE_FullDataRateMax = 2,
|
||||
AM_RATE_ReverseDecode = 3,
|
||||
AM_RATE_DecoderPosition = 4,
|
||||
AM_RATE_DecoderVersion = 5
|
||||
} AM_PROPERTY_DVD_RATE_CHANGE;
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct tagVIDEOINFOHEADER2 {
|
||||
RECT rcSource;
|
||||
RECT rcTarget;
|
||||
DWORD dwBitRate;
|
||||
DWORD dwBitErrorRate;
|
||||
REFERENCE_TIME AvgTimePerFrame;
|
||||
DWORD dwInterlaceFlags;
|
||||
DWORD dwCopyProtectFlags;
|
||||
DWORD dwPictAspectRatioX;
|
||||
DWORD dwPictAspectRatioY;
|
||||
union {
|
||||
DWORD dwControlFlags;
|
||||
DWORD dwReserved1;
|
||||
};
|
||||
DWORD dwReserved2;
|
||||
BITMAPINFOHEADER bmiHeader;
|
||||
} VIDEOINFOHEADER2;
|
||||
#define AMINTERLACE_IsInterlaced 0x00000001
|
||||
#define AMINTERLACE_1FieldPerSample 0x00000002
|
||||
#define AMINTERLACE_Field1First 0x00000004
|
||||
#define AMINTERLACE_FieldPatField1Only 0x00000000
|
||||
#define AMINTERLACE_FieldPatField2Only 0x00000010
|
||||
#define AMINTERLACE_FieldPatBothRegular 0x00000020
|
||||
#define AMINTERLACE_FieldPatBothIrregular 0x00000030
|
||||
#define AMINTERLACE_DisplayModeBobOnly 0x00000000
|
||||
#define AMINTERLACE_DisplayModeWeaveOnly 0x00000040
|
||||
#define AMINTERLACE_DisplayModeBobOrWeave 0x00000080
|
||||
#define AMINTERLACE_FieldPatternMask 0x00000030
|
||||
#define AMINTERLACE_DisplayModeMask 0x000000C0
|
||||
#define AMCONTROL_USED 0x00000001
|
||||
#define AMCONTROL_PAD_TO_4x3 0x00000002
|
||||
#define AMCONTROL_PAD_TO_16x9 0x00000004
|
||||
#define AMCONTROL_COLORINFO_PRESENT 0x00000008
|
||||
typedef struct tagMPEG2VIDEOINFO {
|
||||
VIDEOINFOHEADER2 hdr;
|
||||
DWORD dwStartTimeCode;
|
||||
DWORD cbSequenceHeader;
|
||||
DWORD dwProfile;
|
||||
DWORD dwLevel;
|
||||
DWORD dwFlags;
|
||||
DWORD dwSequenceHeader[1];
|
||||
} MPEG2VIDEOINFO;
|
||||
#define AMMPEG2_DoPanScan 0x00000001
|
||||
#define AMMPEG2_DVDLine21Field1 0x00000002
|
||||
#define AMMPEG2_DVDLine21Field2 0x00000004
|
||||
#define AMMPEG2_SourceIsLetterboxed 0x00000008
|
||||
#define AMMPEG2_FilmCameraMode 0x00000010
|
||||
#define AMMPEG2_LetterboxAnalogOut 0x00000020
|
||||
#define AMMPEG2_DSS_UserData 0x00000040
|
||||
#define AMMPEG2_DVB_UserData 0x00000080
|
||||
#define AMMPEG2_27MhzTimebase 0x00000100
|
||||
#define AMMPEG2_WidescreenAnalogOut 0x00000200
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -115,10 +115,6 @@
|
|||
#define ED_TCG_MIDI_QF 0x00001193
|
||||
#define ED_TCG_MIDI_FULL 0x00001194
|
||||
#define ED_TCG_FRAMERATE 0x00001195
|
||||
#define ED_FORMAT_SMPTE_30 0x00001196
|
||||
#define ED_FORMAT_SMPTE_30DROP 0x00001197
|
||||
#define ED_FORMAT_SMPTE_25 0x00001198
|
||||
#define ED_FORMAT_SMPTE_24 0x00001199
|
||||
#define ED_TCG_SYNC_SOURCE 0x0000119A
|
||||
#define ED_TCG_VIDEO 0x0000119B
|
||||
#define ED_TCG_READER 0x0000119C
|
||||
|
|
|
@ -8,6 +8,149 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define VFW_S_NO_MORE_ITEMS 0x00040103
|
||||
#define VFW_S_DUPLICATE_NAME 0x0004022D
|
||||
#define VFW_S_STATE_INTERMEDIATE 0x00040237
|
||||
#define VFW_S_PARTIAL_RENDER 0x00040242
|
||||
#define VFW_S_SOME_DATA_IGNORED 0x00040245
|
||||
#define VFW_S_CONNECTIONS_DEFERRED 0x00040246
|
||||
#define VFW_S_RESOURCE_NOT_NEEDED 0x00040250
|
||||
#define VFW_S_MEDIA_TYPE_IGNORED 0x00040254
|
||||
#define VFW_S_VIDEO_NOT_RENDERED 0x00040257
|
||||
#define VFW_S_AUDIO_NOT_RENDERED 0x00040258
|
||||
#define VFW_S_RPZA 0x0004025A
|
||||
#define VFW_S_ESTIMATED 0x00040260
|
||||
#define VFW_S_RESERVED 0x00040263
|
||||
#define VFW_S_STREAM_OFF 0x00040267
|
||||
#define VFW_S_CANT_CUE 0x00040268
|
||||
#define VFW_S_NOPREVIEWPIN 0x0004027E
|
||||
#define VFW_S_DVD_NON_ONE_SEQUENTIAL 0x00040280
|
||||
#define VFW_S_DVD_CHANNEL_CONTENTS_NOT_AVAILABLE 0x0004028C
|
||||
#define VFW_S_DVD_NOT_ACCURATE 0x0004028D
|
||||
#define VFW_E_INVALIDMEDIATYPE 0x80040200
|
||||
#define VFW_E_INVALIDSUBTYPE 0x80040201
|
||||
#define VFW_E_NEED_OWNER 0x80040202
|
||||
#define VFW_E_ENUM_OUT_OF_SYNC 0x80040203
|
||||
#define VFW_E_ALREADY_CONNECTED 0x80040204
|
||||
#define VFW_E_FILTER_ACTIVE 0x80040205
|
||||
#define VFW_E_NO_TYPES 0x80040206
|
||||
#define VFW_E_NO_ACCEPTABLE_TYPES 0x80040207
|
||||
#define VFW_E_INVALID_DIRECTION 0x80040208
|
||||
#define VFW_E_NOT_CONNECTED 0x80040209
|
||||
#define VFW_E_NO_ALLOCATOR 0x8004020A
|
||||
#define VFW_E_RUNTIME_ERROR 0x8004020B
|
||||
#define VFW_E_BUFFER_NOTSET 0x8004020C
|
||||
#define VFW_E_BUFFER_OVERFLOW 0x8004020D
|
||||
#define VFW_E_BADALIGN 0x8004020E
|
||||
#define VFW_E_ALREADY_COMMITTED 0x8004020F
|
||||
#define VFW_E_BUFFERS_OUTSTANDING 0x80040210
|
||||
#define VFW_E_NOT_COMMITTED 0x80040211
|
||||
#define VFW_E_SIZENOTSET 0x80040212
|
||||
#define VFW_E_NO_CLOCK 0x80040213
|
||||
#define VFW_E_NO_SINK 0x80040214
|
||||
#define VFW_E_NO_INTERFACE 0x80040215
|
||||
#define VFW_E_NOT_FOUND 0x80040216
|
||||
#define VFW_E_CANNOT_CONNECT 0x80040217
|
||||
#define VFW_E_CANNOT_RENDER 0x80040218
|
||||
#define VFW_E_CHANGING_FORMAT 0x80040219
|
||||
#define VFW_E_NO_COLOR_KEY_SET 0x8004021A
|
||||
#define VFW_E_NOT_OVERLAY_CONNECTION 0x8004021B
|
||||
#define VFW_E_NOT_SAMPLE_CONNECTION 0x8004021C
|
||||
#define VFW_E_PALETTE_SET 0x8004021D
|
||||
#define VFW_E_COLOR_KEY_SET 0x8004021E
|
||||
#define VFW_E_NO_COLOR_KEY_FOUND 0x8004021F
|
||||
#define VFW_E_NO_PALETTE_AVAILABLE 0x80040220
|
||||
#define VFW_E_NO_DISPLAY_PALETTE 0x80040221
|
||||
#define VFW_E_TOO_MANY_COLORS 0x80040222
|
||||
#define VFW_E_STATE_CHANGED 0x80040223
|
||||
#define VFW_E_NOT_STOPPED 0x80040224
|
||||
#define VFW_E_NOT_PAUSED 0x80040225
|
||||
#define VFW_E_NOT_RUNNING 0x80040226
|
||||
#define VFW_E_WRONG_STATE 0x80040227
|
||||
#define VFW_E_START_TIME_AFTER_END 0x80040228
|
||||
#define VFW_E_INVALID_RECT 0x80040229
|
||||
#define VFW_E_TYPE_NOT_ACCEPTED 0x8004022A
|
||||
#define VFW_E_SAMPLE_REJECTED 0x8004022B
|
||||
#define VFW_E_SAMPLE_REJECTED_EOS 0x8004022C
|
||||
#define VFW_E_DUPLICATE_NAME 0x8004022D
|
||||
#define VFW_E_TIMEOUT 0x8004022E
|
||||
#define VFW_E_INVALID_FILE_FORMAT 0x8004022F
|
||||
#define VFW_E_ENUM_OUT_OF_RANGE 0x80040230
|
||||
#define VFW_E_CIRCULAR_GRAPH 0x80040231
|
||||
#define VFW_E_NOT_ALLOWED_TO_SAVE 0x80040232
|
||||
#define VFW_E_TIME_ALREADY_PASSED 0x80040233
|
||||
#define VFW_E_ALREADY_CANCELLED 0x80040234
|
||||
#define VFW_E_CORRUPT_GRAPH_FILE 0x80040235
|
||||
#define VFW_E_ADVISE_ALREADY_SET 0x80040236
|
||||
#define VFW_E_NO_MODEX_AVAILABLE 0x80040238
|
||||
#define VFW_E_NO_ADVISE_SET 0x80040239
|
||||
#define VFW_E_NO_FULLSCREEN 0x8004023A
|
||||
#define VFW_E_IN_FULLSCREEN_MODE 0x8004023B
|
||||
#define VFW_E_UNKNOWN_FILE_TYPE 0x80040240
|
||||
#define VFW_E_CANNOT_LOAD_SOURCE_FILTER 0x80040241
|
||||
#define VFW_E_FILE_TOO_SHORT 0x80040243
|
||||
#define VFW_E_INVALID_FILE_VERSION 0x80040244
|
||||
#define VFW_E_INVALID_CLSID 0x80040247
|
||||
#define VFW_E_INVALID_MEDIA_TYPE 0x80040248
|
||||
#define VFW_E_SAMPLE_TIME_NOT_SET 0x80040249
|
||||
#define VFW_E_MEDIA_TIME_NOT_SET 0x80040251
|
||||
#define VFW_E_NO_TIME_FORMAT_SET 0x80040252
|
||||
#define VFW_E_MONO_AUDIO_HW 0x80040253
|
||||
#define VFW_E_NO_DECOMPRESSOR 0x80040255
|
||||
#define VFW_E_NO_AUDIO_HARDWARE 0x80040256
|
||||
#define VFW_E_RPZA 0x80040259
|
||||
#define VFW_E_PROCESSOR_NOT_SUITABLE 0x8004025B
|
||||
#define VFW_E_UNSUPPORTED_AUDIO 0x8004025C
|
||||
#define VFW_E_UNSUPPORTED_VIDEO 0x8004025D
|
||||
#define VFW_E_MPEG_NOT_CONSTRAINED 0x8004025E
|
||||
#define VFW_E_NOT_IN_GRAPH 0x8004025F
|
||||
#define VFW_E_NO_TIME_FORMAT 0x80040261
|
||||
#define VFW_E_READ_ONLY 0x80040262
|
||||
#define VFW_E_BUFFER_UNDERFLOW 0x80040264
|
||||
#define VFW_E_UNSUPPORTED_STREAM 0x80040265
|
||||
#define VFW_E_NO_TRANSPORT 0x80040266
|
||||
#define VFW_E_BAD_VIDEOCD 0x80040269
|
||||
#define VFW_S_NO_STOP_TIME 0x80040270
|
||||
#define VFW_E_OUT_OF_VIDEO_MEMORY 0x80040271
|
||||
#define VFW_E_VP_NEGOTIATION_FAILED 0x80040272
|
||||
#define VFW_E_DDRAW_CAPS_NOT_SUITABLE 0x80040273
|
||||
#define VFW_E_NO_VP_HARDWARE 0x80040274
|
||||
#define VFW_E_NO_CAPTURE_HARDWARE 0x80040275
|
||||
#define VFW_E_DVD_OPERATION_INHIBITED 0x80040276
|
||||
#define VFW_E_DVD_INVALIDDOMAIN 0x80040277
|
||||
#define VFW_E_DVD_NO_BUTTON 0x80040278
|
||||
#define VFW_E_DVD_GRAPHNOTREADY 0x80040279
|
||||
#define VFW_E_DVD_RENDERFAIL 0x8004027A
|
||||
#define VFW_E_DVD_DECNOTENOUGH 0x8004027B
|
||||
#define VFW_E_DDRAW_VERSION_NOT_SUITABLE 0x8004027C
|
||||
#define VFW_E_COPYPROT_FAILED 0x8004027D
|
||||
#define VFW_E_TIME_EXPIRED 0x8004027F
|
||||
#define VFW_E_DVD_WRONG_SPEED 0x80040281
|
||||
#define VFW_E_DVD_MENU_DOES_NOT_EXIST 0x80040282
|
||||
#define VFW_E_DVD_CMD_CANCELLED 0x80040283
|
||||
#define VFW_E_DVD_STATE_WRONG_VERSION 0x80040284
|
||||
#define VFW_E_DVD_STATE_CORRUPT 0x80040285
|
||||
#define VFW_E_DVD_STATE_WRONG_DISC 0x80040286
|
||||
#define VFW_E_DVD_INCOMPATIBLE_REGION 0x80040287
|
||||
#define VFW_E_DVD_NO_ATTRIBUTES 0x80040288
|
||||
#define VFW_E_DVD_NO_GOUP_PGC 0x80040289
|
||||
#define VFW_E_DVD_LOW_PARENTAL_LEVEL 0x8004028A
|
||||
#define VFW_E_DVD_NOT_IN_KARAOKE_MODE 0x8004028B
|
||||
#define VFW_E_FRAME_STEP_UNSUPPORTED 0x8004028E
|
||||
#define VFW_E_DVD_STREAM_DISABLED 0x8004028F
|
||||
#define VFW_E_DVD_TITLE_UNKNOWN 0x80040290
|
||||
#define VFW_E_DVD_INVALID_DISC 0x80040291
|
||||
#define VFW_E_DVD_NO_RESUME_INFORMATION 0x80040292
|
||||
#define VFW_E_PIN_ALREADY_BLOCKED_ON_THIS_THREAD 0x80040293
|
||||
#define VFW_E_PIN_ALREADY_BLOCKED 0x80040294
|
||||
#define VFW_E_CERTIFICATION_FAILURE 0x80040295
|
||||
#define VFW_E_VMR_NOT_IN_MIXER_MODE 0x80040296
|
||||
#define VFW_E_VMR_NO_AP_SUPPLIED 0x80040297
|
||||
#define VFW_E_VMR_NO_DEINTERLACE_HW 0x80040298
|
||||
#define VFW_E_VMR_NO_PROCAMP_HW 0x80040299
|
||||
#define VFW_E_DVD_VMR9_INCOMPATIBLEDEC 0x8004029A
|
||||
#define VFW_E_NO_COPP_HW 0x8004029B
|
||||
#define VFW_E_BAD_KEY 0x800403F2
|
||||
#define MAX_ERROR_TEXT_LEN 160
|
||||
DWORD WINAPI AMGetErrorTextA(HRESULT,CHAR*,DWORD);
|
||||
DWORD WINAPI AMGetErrorTextW(HRESULT,WCHAR*,DWORD);
|
||||
|
|
|
@ -4,6 +4,11 @@
|
|||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - Constants and GUIDs - Event Notification Codes */
|
||||
#define EC_ACTIVATE 0x0013
|
||||
#define EC_BUFFERING_DATA 0x0011
|
||||
#define EC_BUILT 0x0300
|
||||
|
@ -51,5 +56,13 @@
|
|||
#define EC_WMT_EVENT 0x0252
|
||||
#define EC_WMT_INDEX_EVENT 0x0251
|
||||
#define EC_USER 0x8000
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct {
|
||||
HRESULT hrStatus;
|
||||
void *pData;
|
||||
} AM_WMT_EVENT_DATA;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
#ifndef _IL21DEC_H
|
||||
#define _IL21DEC_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types */
|
||||
typedef enum _AM_LINE21_CCLEVEL {
|
||||
AM_L21_CCLEVEL_TC2
|
||||
} AM_LINE21_CCLEVEL,*PAM_LINE21_CCLEVEL;
|
||||
typedef enum _AM_LINE21_CCSERVICE {
|
||||
AM_L21_CCSERVICE_None,
|
||||
AM_L21_CCSERVICE_Caption1,
|
||||
AM_L21_CCSERVICE_Caption2,
|
||||
AM_L21_CCSERVICE_Text1,
|
||||
AM_L21_CCSERVICE_Text2,
|
||||
AM_L21_CCSERVICE_XDS,
|
||||
} AM_LINE21_CCSERVICE,*PAM_LINE21_CCSERVICE;
|
||||
typedef enum _AM_LINE21_CCSTATE {
|
||||
AM_L21_CCSTATE_Off,
|
||||
AM_L21_CCSTATE_On
|
||||
} AM_LINE21_CCSTATE,*PAM_LINE21_CCSTATE;
|
||||
typedef enum _AM_LINE21_DRAWBGMODE {
|
||||
AM_L21_DRAWBGMODE_Opaque,
|
||||
AM_L21_DRAWBGMODE_Transparent
|
||||
} AM_LINE21_DRAWBGMODE,*PAM_LINE21_DRAWBGMODE;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,20 @@
|
|||
#ifndef _KS_H
|
||||
#define _KS_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct {
|
||||
ULONG Size;
|
||||
ULONG Count;
|
||||
} KSMULTIPLE_ITEM,*PKSMULTIPLE_ITEM;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,23 @@
|
|||
#ifndef _KSMEDIA_H
|
||||
#define _KSMEDIA_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types - CameraControlFlags Enumeration */
|
||||
#define KSPROPERTY_CAMERACONTROL_FLAGS_AUTO 0x0001L
|
||||
#define KSPROPERTY_CAMERACONTROL_FLAGS_MANUAL 0x0002L
|
||||
#define KSPROPERTY_CAMERACONTROL_FLAGS_ABSOLUTE 0x0000L
|
||||
#define KSPROPERTY_CAMERACONTROL_FLAGS_RELATIVE 0x0010L
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types - VideoProcAmpFlags Enumeration */
|
||||
#define KSPROPERTY_VIDEOPROCAMP_FLAGS_AUTO 0X0001L
|
||||
#define KSPROPERTY_VIDEOPROCAMP_FLAGS_MANUAL 0X0002L
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,71 @@
|
|||
#ifndef _MMREG_H
|
||||
#define _MMREG_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifndef _MMSYSTEM_H
|
||||
#include <mmsystem.h>
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct mpeg1waveformat_tag {
|
||||
WAVEFORMATEX wfx;
|
||||
WORD fwHeadLayer;
|
||||
DWORD dwHeadBitrate;
|
||||
WORD fwHeadMode;
|
||||
WORD fwHeadModeExt;
|
||||
WORD wHeadEmphasis;
|
||||
WORD fwHeadFlags;
|
||||
DWORD dwPTSLow;
|
||||
DWORD dwPTSHigh;
|
||||
} MPEG1WAVEFORMAT;
|
||||
#define ACM_MPEG_LAYER1 0x0001
|
||||
#define ACM_MPEG_LAYER2 0x0002
|
||||
#define ACM_MPEG_LAYER3 0x0004
|
||||
#define ACM_MPEG_STEREO 0x0001
|
||||
#define ACM_MPEG_JOINTSTEREO 0x0002
|
||||
#define ACM_MPEG_DUALCHANNEL 0x0004
|
||||
#define ACM_MPEG_SINGLECHANNEL 0x0008
|
||||
#define ACM_MPEG_PRIVATEBIT 0x0001
|
||||
#define ACM_MPEG_COPYRIGHT 0x0002
|
||||
#define ACM_MPEG_ORIGINALHOME 0x0004
|
||||
#define ACM_MPEG_PROTECTIONBIT 0x0008
|
||||
#define ACM_MPEG_ID_MPEG1 0x0010
|
||||
typedef struct {
|
||||
WAVEFORMATEX Format;
|
||||
union {
|
||||
WORD wValidBitsPerSample;
|
||||
WORD wSamplesPerBlock;
|
||||
WORD wReserved;
|
||||
} Samples;
|
||||
DWORD dwChannelMask;
|
||||
GUID SubFormat;
|
||||
} WAVEFORMATEXTENSIBLE,*PWAVEFORMATEXTENSIBLE;
|
||||
#define SPEAKER_FRONT_LEFT 0x1
|
||||
#define SPEAKER_FRONT_RIGHT 0x2
|
||||
#define SPEAKER_FRONT_CENTER 0x4
|
||||
#define SPEAKER_LOW_FREQUENCY 0x8
|
||||
#define SPEAKER_BACK_LEFT 0x10
|
||||
#define SPEAKER_BACK_RIGHT 0x20
|
||||
#define SPEAKER_FRONT_LEFT_OF_CENTER 0x40
|
||||
#define SPEAKER_FRONT_RIGHT_OF_CENTER 0x80
|
||||
#define SPEAKER_BACK_CENTER 0x100
|
||||
#define SPEAKER_SIDE_LEFT 0x200
|
||||
#define SPEAKER_SIDE_RIGHT 0x400
|
||||
#define SPEAKER_TOP_CENTER 0x800
|
||||
#define SPEAKER_TOP_FRONT_LEFT 0x1000
|
||||
#define SPEAKER_TOP_FRONT_CENTER 0x2000
|
||||
#define SPEAKER_TOP_FRONT_RIGHT 0x4000
|
||||
#define SPEAKER_TOP_BACK_LEFT 0x8000
|
||||
#define SPEAKER_TOP_BACK_CENTER 0x10000
|
||||
#define SPEAKER_TOP_BACK_RIGHT 0x20000
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -191,6 +191,7 @@ extern "C" {
|
|||
#define WAVE_FORMAT_4M16 1024
|
||||
#define WAVE_FORMAT_4S16 2048
|
||||
#define WAVE_FORMAT_PCM 1
|
||||
#define WAVE_FORMAT_EXTENSIBLE 0xFFFE
|
||||
#define MIDIERR_UNPREPARED MIDIERR_BASE
|
||||
#define MIDIERR_STILLPLAYING (MIDIERR_BASE+1)
|
||||
#define MIDIERR_NOMAP (MIDIERR_BASE+2)
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
#ifndef _MPEGTYPE_H
|
||||
#define _MPEGTYPE_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#include <strmif.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct tagAM_MPEGSTREAMTYPE {
|
||||
DWORD dwStreamID;
|
||||
DWORD dwReserved;
|
||||
AM_MEDIA_TYPE mt;
|
||||
BYTE bFormat[1];
|
||||
} AM_MPEGSTREAMTYPE;
|
||||
typedef struct tagAM_MPEGSYSTEMTYPE {
|
||||
DWORD dwBitRate;
|
||||
DWORD cStreams;
|
||||
AM_MPEGSTREAMTYPE Streams[1];
|
||||
} AM_MPEGSYSTEMTYPE;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,23 @@
|
|||
#ifndef _VIDCAP_H
|
||||
#define _VIDCAP_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct {
|
||||
ULONG FromNode;
|
||||
ULONG FromNodePin;
|
||||
ULONG ToNode;
|
||||
ULONG ToNodePin;
|
||||
} KSTOPOLOGY_CONNECTION;
|
||||
#define KSFILTER_NODE 0xFFFFFFFF
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,211 @@
|
|||
#ifndef _VMR9_H
|
||||
#define _VMR9_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types */
|
||||
typedef enum _VMR9_SampleFormat {
|
||||
VMR9_SampleReserved = 1,
|
||||
VMR9_SampleProgressiveFrame = 2,
|
||||
VMR9_SampleFieldInterleavedEvenFirst = 3,
|
||||
VMR9_SampleFieldInterleavedOddFirst = 4,
|
||||
VMR9_SampleFieldSingleEven = 5,
|
||||
VMR9_SampleFieldSingleOdd = 6
|
||||
} VMR9_SampleFormat;
|
||||
typedef enum {
|
||||
VMR9AlphaBitmap_Disable = 0x00000001,
|
||||
VMR9AlphaBitmap_hDC = 0x00000002,
|
||||
VMR9AlphaBitmap_EntireDDS = 0x00000004,
|
||||
VMR9AlphaBitmap_SrcColorKey = 0x00000008,
|
||||
VMR9AlphaBitmap_SrcRect = 0x00000010,
|
||||
VMR9AlphaBitmap_FilterMode = 0x00000020
|
||||
} VMR9AlphaBitmapFlags;
|
||||
typedef enum {
|
||||
VMR9ARMode_None,
|
||||
VMR9ARMode_LetterBox
|
||||
} VMR9AspectRatioMode;
|
||||
typedef enum {
|
||||
DeinterlacePref9_NextBest = 0x01,
|
||||
DeinterlacePref9_BOB = 0x02,
|
||||
DeinterlacePref9_Weave = 0x04,
|
||||
DeinterlacePref9_Mask = 0x07
|
||||
} VMR9DeinterlacePrefs;
|
||||
typedef enum {
|
||||
DeinterlaceTech9_Unknown = 0x0000,
|
||||
DeinterlaceTech9_BOBLineReplicate = 0x0001,
|
||||
DeinterlaceTech9_BOBVerticalStretch = 0x0002,
|
||||
DeinterlaceTech9_MedianFiltering = 0x0004,
|
||||
DeinterlaceTech9_EdgeFiltering = 0x0010,
|
||||
DeinterlaceTech9_FieldAdaptive = 0x0020,
|
||||
DeinterlaceTech9_PixelAdaptive = 0x0040,
|
||||
DeinterlaceTech9_MotionVectorSteered = 0x0080
|
||||
} VMR9DeinterlaceTech;
|
||||
typedef enum {
|
||||
MixerPref9_NoDecimation = 0x00000001,
|
||||
MixerPref9_DecimateOutput = 0x00000002,
|
||||
MixerPref9_ARAdjustXorY = 0x00000004,
|
||||
MixerPref9_NonSquareMixing = 0x00000008,
|
||||
MixerPref9_DecimateMask = 0x0000000F,
|
||||
MixerPref9_BiLinearFiltering = 0x00000010,
|
||||
MixerPref9_PointFiltering = 0x00000020,
|
||||
MixerPref9_AnisotropicFiltering = 0x00000040,
|
||||
MixerPref9_PyramidalQuadFiltering = 0x00000080,
|
||||
MixerPref9_GaussianQuadFiltering = 0x00000100,
|
||||
MixerPref9_FilteringReserved = 0x00000E00,
|
||||
MixerPref9_FilteringMask = 0x00000FF0,
|
||||
MixerPref9_RenderTargetRGB = 0x00001000,
|
||||
MixerPref9_RenderTargetYUV = 0x00002000,
|
||||
MixerPref9_RenderTargetReserved = 0x000FC000,
|
||||
MixerPref9_RenderTargetMask = 0x000FF000
|
||||
MixerPref9_DynamicSwitchToBOB = 0x00100000,
|
||||
MixerPref9_DynamicDecimateBy2 = 0x00200000,
|
||||
MixerPref9_DynamicReserved = 0x00C00000,
|
||||
MixerPref9_DynamicMask = 0x00F00000
|
||||
} VMR9MixerPrefs;
|
||||
typedef enum VMR9Mode {
|
||||
VMR9Mode_Windowed = 0x00000001,
|
||||
VMR9Mode_Windowless = 0x00000002,
|
||||
VMR9Mode_Renderless = 0x00000004,
|
||||
VMR9Mode_Mask = 0x00000007
|
||||
};
|
||||
typedef enum {
|
||||
VMR9Sample_SyncPoint = 0x00000001,
|
||||
VMR9Sample_Preroll = 0x00000002,
|
||||
VMR9Sample_Discontinuity = 0x00000004,
|
||||
VMR9Sample_TimeValid = 0x00000008
|
||||
} VMR9PresentationFlags;
|
||||
typedef enum {
|
||||
ProcAmpControl9_Brightness = 0x00000001,
|
||||
ProcAmpControl9_Contrast = 0x00000002,
|
||||
ProcAmpControl9_Hue = 0x00000004,
|
||||
ProcAmpControl9_Saturation = 0x00000008,
|
||||
ProcAmpControl9_Mask = 0x0000000F
|
||||
} VMR9ProcAmpControlFlags;
|
||||
typedef enum VMR9RenderPrefs {
|
||||
RenderPrefs9_DoNotRenderBorder = 0x00000001,
|
||||
RenderPrefs9_Mask = 0x00000001
|
||||
};
|
||||
typedef enum {
|
||||
VMR9AllocFlag_3DRenderTarget = 0x0001,
|
||||
VMR9AllocFlag_DXVATarget = 0x0002,
|
||||
VMR9AllocFlag_TextureSurface = 0x0004,
|
||||
VMR9AllocFlag_OffscreenSurface = 0x0008,
|
||||
VMR9AllocFlag_UsageReserved = 0x00F0,
|
||||
VMR9AllocFlag_UsageMask = 0x00FF
|
||||
} VMR9SurfaceAllocationFlags;
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
/**********
|
||||
typedef struct VMR9AllocationInfo{
|
||||
DWORD dwFlags;
|
||||
DWORD dwWidth;
|
||||
DWORD dwHeight;
|
||||
D3DFORMAT Format;
|
||||
D3DPOOL Pool;
|
||||
DWORD MinBuffers;
|
||||
SIZE szAspectRatio;
|
||||
SIZE szNativeSize;
|
||||
};
|
||||
**********/
|
||||
typedef struct _VMR9DeinterlaceCaps {
|
||||
DWORD dwSize;
|
||||
DWORD dwNumPreviousOutputFrames;
|
||||
DWORD dwNumForwardRefSamples;
|
||||
DWORD dwNumBackwardRefSamples;
|
||||
VMRDeinterlaceTech DeinterlaceTechnology;
|
||||
} VMR9DeinterlaceCaps;
|
||||
typedef struct _VMR9Frequency {
|
||||
DWORD dwNumerator;
|
||||
DWORD dwDenominator;
|
||||
} VMR9Frequency;
|
||||
typedef struct {
|
||||
UINT uDevID;
|
||||
RECT rcMonitor;
|
||||
HMONITOR hMon;
|
||||
DWORD dwFlags;
|
||||
wchar_t szDevice[32];
|
||||
wchar_t szDescription[512]
|
||||
LARGE_INTEGER liDriverVersion;
|
||||
DWORD dwVendorId;
|
||||
DWORD dwDeviceId;
|
||||
DWORD dwSubSysId;
|
||||
DWORD dwRevision;
|
||||
} VMR9MonitorInfo;
|
||||
typedef struct VMR9NormalizedRect{
|
||||
float left;
|
||||
float top;
|
||||
float right;
|
||||
float bottom;
|
||||
};
|
||||
/**********
|
||||
typedef struct {
|
||||
DWORD dwFlags;
|
||||
IDirect3DSurface9 *lpSurf;
|
||||
REFERENCE_TIME rtStart;
|
||||
REFERENCE_TIME rtEnd;
|
||||
SIZE szAspectRatio;
|
||||
RECT rcSrc;
|
||||
RECT rcDst;
|
||||
DWORD dwReserved1;
|
||||
DWORD dwReserved2;
|
||||
} VMR9PresentationInfo;
|
||||
**********/
|
||||
typedef struct _VMR9ProcAmpControl
|
||||
{
|
||||
DWORD dwSize;
|
||||
DWORD dwFlags;
|
||||
float Contrast;
|
||||
float Brightness;
|
||||
float Hue;
|
||||
float Saturation;
|
||||
} VMR9ProcAmpControl;
|
||||
typedef struct _VMR9ProcAmpControlRange
|
||||
{
|
||||
DWORD dwSize;
|
||||
VMR9ProcAmpControlFlags dwProperty;
|
||||
float MinValue;
|
||||
float MaxValue;
|
||||
float DefaultValue;
|
||||
float StepSize;
|
||||
} VMR9ProcAmpControlRange;
|
||||
typedef struct _VMR9VideoDesc {
|
||||
DWORD dwSize;
|
||||
DWORD dwSampleWidth;
|
||||
DWORD dwSampleHeight;
|
||||
VMR9_SampleFormat SampleFormat;
|
||||
DWORD dwFourCC;
|
||||
VMR9Frequency InputSampleFreq;
|
||||
VMR9Frequency OutputFrameFreq;
|
||||
} VMR9VideoDesc;
|
||||
/**********
|
||||
typedef struct VMR9VideoStreamInfo{
|
||||
IDirect3DSurface9 *pddsVideoSurface;
|
||||
DWORD dwWidth;
|
||||
DWORD dwHeight;
|
||||
DWORD dwStrmID;
|
||||
FLOAT fAlpha;
|
||||
VMR9NormalizedRect rNormal;
|
||||
REFERENCE_TIME rtStart;
|
||||
REFERENCE_TIME rtEnd;
|
||||
VMR9_SampleFormat SampleFormat;
|
||||
};
|
||||
typedef struct VMR9AlphaBitmap{
|
||||
DWORD dwFlags;
|
||||
HDC hdc;
|
||||
IDirect3DSurface9 *pDDS;
|
||||
RECT rSrc;
|
||||
VMR9NormalizedRect rDest;
|
||||
FLOAT fAlpha;
|
||||
COLORREF clrSrcKey;
|
||||
DWORD dwFilterMode;
|
||||
};
|
||||
**********/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,55 @@
|
|||
#ifndef _VPTYPE_H
|
||||
#define _VPTYPE_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Enumerated Types */
|
||||
typedef enum _AMVP_MODE {
|
||||
AMVP_MODE_WEAVE,
|
||||
AMVP_MODE_BOBINTERLEAVED,
|
||||
AMVP_MODE_BOBNONINTERLEAVED,
|
||||
AMVP_MODE_SKIPEVEN,
|
||||
AMVP_MODE_SKIPODD
|
||||
} AMVP_MODE;
|
||||
typedef enum _AMVP_SELECT_FORMAT_BY {
|
||||
AMVP_DO_NOT_CARE,
|
||||
AMVP_BEST_BANDWIDTH,
|
||||
AMVP_INPUT_SAME_AS_OUTPUT
|
||||
} AMVP_SELECT_FORMAT_BY;
|
||||
/*--- DirectShow Reference - DirectShow Structures */
|
||||
typedef struct _AMVPDIMINFO{
|
||||
DWORD dwFieldWidth;
|
||||
DWORD dwFieldHeight;
|
||||
DWORD dwVBIWidth;
|
||||
DWORD dwVBIHeight;
|
||||
RECT rcValidRegion;
|
||||
} AMVPDIMINFO,*LPAMVPDIMINFO;
|
||||
typedef struct _AMVPDATAINFO{
|
||||
DWORD dwSize;
|
||||
DWORD dwMicrosecondsPerField;
|
||||
AMVPDIMINFO amvpDimInfo;
|
||||
DWORD dwPictAspectRatioX;
|
||||
DWORD dwPictAspectRatioY;
|
||||
BOOL bEnableDoubleClock;
|
||||
BOOL bEnableVACT;
|
||||
BOOL bDataIsInterlaced;
|
||||
LONG lHalfLinesOdd;
|
||||
BOOL bFieldPolarityInverted;
|
||||
DWORD dwNumLinesInVREF;
|
||||
LONG lHalfLinesEven;
|
||||
DWORD dwReserved1;
|
||||
} AMVPDATAINFO,*LPAMVPDATAINFO;
|
||||
typedef struct _AMVPSIZE{
|
||||
DWORD dwWidth;
|
||||
DWORD dwHeight;
|
||||
} AMVPSIZE,*LPAMVPSIZE;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
|
@ -0,0 +1,11 @@
|
|||
#ifndef _XPTRDEFS_H
|
||||
#define _XPTRDEFS_H
|
||||
#if __GNUC__ >= 3
|
||||
#pragma GCC system_header
|
||||
#endif
|
||||
|
||||
/*--- DirectShow Reference - DirectShow Structures - TIMECODE_SAMPLE Structure */
|
||||
#define ED_DEVCAP_ATN_READ 0x13B7
|
||||
#define ED_DEVCAP_RTC_READ 0x13BA
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue