Author: greatlrd
Date: Sun Apr 15 17:49:34 2007
New Revision: 26358
URL:
http://svn.reactos.org/svn/reactos?rev=26358&view=rev
Log:
Find some older works, dxsdk header compatible with dxsdk 2004 dec release. I will clean
up sdk so dx thuse dx header belong to dxsdk will be here. later.
In this folder will contain all header that is compatible with dxsdk 2004 dec. later I
will upgrade this folder file to more resent dxsdk headers.
Added:
trunk/reactos/include/dxsdk/aviriff.h
Added: trunk/reactos/include/dxsdk/aviriff.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/aviriff.h?re…
==============================================================================
--- trunk/reactos/include/dxsdk/aviriff.h (added)
+++ trunk/reactos/include/dxsdk/aviriff.h Sun Apr 15 17:49:34 2007
@@ -1,0 +1,307 @@
+
+
+
+
+#if !defined AVIRIFF_H
+#define AVIRIFF_H
+
+#if !defined NUMELMS
+ #define NUMELMS(aa) (sizeof(aa)/sizeof((aa)[0]))
+#endif
+
+#include <pshpack2.h>
+
+#define FCC(ch4) ((((DWORD)(ch4) & 0xFF) << 24) | (((DWORD)(ch4)
& 0xFF00) << 8) | (((DWORD)(ch4) & 0xFF0000) >> 8) | (((DWORD)(ch4)
& 0xFF000000) >> 24))
+#define RIFFROUND(cb) ((cb) + ((cb)&1))
+#define RIFFNEXT(pChunk) (LPRIFFCHUNK)((LPBYTE)(pChunk) + sizeof(RIFFCHUNK) +
RIFFROUND(((LPRIFFCHUNK)pChunk)->cb))
+#define TIMECODE_RATE_30DROP 0
+#define TIMECODE_SMPTE_BINARY_GROUP 0x07
+#define TIMECODE_SMPTE_COLOR_FRAME 0x08
+#define AVI_INDEX_OF_INDEXES 0x00
+#define AVI_INDEX_OF_CHUNKS 0x01
+#define AVI_INDEX_OF_TIMED_CHUNKS 0x02
+#define AVI_INDEX_OF_SUB_2FIELD 0x03
+#define AVI_INDEX_IS_DATA 0x80
+#define AVI_INDEX_SUB_DEFAULT 0x00
+#define AVI_INDEX_SUB_2FIELD 0x01
+#define STDINDEXSIZE 0x4000
+#define NUMINDEX(wLongsPerEntry) ((STDINDEXSIZE-32)/4/(wLongsPerEntry))
+#define NUMINDEXFILL(wLongsPerEntry) ((STDINDEXSIZE/4) - NUMINDEX(wLongsPerEntry))
+#define Valid_SUPERINDEX(pi) (*(DWORD *)(&((pi)->wLongsPerEntry)) == (4
| (AVI_INDEX_OF_INDEXES << 24)))
+#define AVISTDINDEX_DELTAFRAME ( 0x80000000)
+#define AVISTDINDEX_SIZEMASK (~0x80000000)
+
+#ifndef ckidSTREAMHEADER
+ #define ckidSTREAMHEADER FCC('strh')
+#endif
+
+#ifndef ckidSTREAMFORMAT
+ #define ckidSTREAMFORMAT FCC('strf')
+#endif
+
+#define ckidMAINAVIHEADER FCC('avih')
+#define ckidODML FCC('odml')
+#define ckidAVIEXTHEADER FCC('dmlh')
+#define ckidSTREAMLIST FCC('strl')
+#define ckidAVIOLDINDEX FCC('idx1')
+#define ckidAVISUPERINDEX FCC('indx')
+
+#ifndef TIMECODE_DEFINED
+#define TIMECODE_DEFINED
+ typedef union _timecode
+ {
+ struct
+ {
+ WORD wFrameRate;
+ WORD wFrameFract;
+ LONG cFrames;
+ };
+ DWORDLONG qw;
+ } TIMECODE;
+#endif
+
+
+typedef struct _riffchunk
+{
+ FOURCC fcc;
+ DWORD cb;
+ } RIFFCHUNK, *LPRIFFCHUNK;
+
+typedef struct _rifflist
+{
+ FOURCC fcc;
+ DWORD cb;
+ FOURCC fccListType;
+} RIFFLIST, *LPRIFFLIST;
+
+typedef struct _avimainheader
+{
+ FOURCC fcc;
+ DWORD cb;
+ DWORD dwMicroSecPerFrame;
+ DWORD dwMaxBytesPerSec;
+ DWORD dwPaddingGranularity;
+ DWORD dwFlags;
+ #define AVIF_HASINDEX 0x00000010
+ #define AVIF_MUSTUSEINDEX 0x00000020
+ #define AVIF_ISINTERLEAVED 0x00000100
+ #define AVIF_TRUSTCKTYPE 0x00000800
+ #define AVIF_WASCAPTUREFILE 0x00010000
+ #define AVIF_COPYRIGHTED 0x00020000
+ DWORD dwTotalFrames;
+ DWORD dwInitialFrames;
+ DWORD dwStreams;
+ DWORD dwSuggestedBufferSize;
+ DWORD dwWidth;
+ DWORD dwHeight;
+ DWORD dwReserved[4];
+} AVIMAINHEADER;
+
+typedef struct _aviextheader
+{
+ FOURCC fcc;
+ DWORD cb;
+ DWORD dwGrandFrames;
+ DWORD dwFuture[61];
+} AVIEXTHEADER;
+
+typedef struct _avistreamheader
+{
+ FOURCC fcc;
+ DWORD cb;
+ FOURCC fccType;
+ #ifndef streamtypeVIDEO
+ #define streamtypeVIDEO FCC('vids')
+ #define streamtypeAUDIO FCC('auds')
+ #define streamtypeMIDI FCC('mids')
+ #define streamtypeTEXT FCC('txts')
+ #endif
+
+ FOURCC fccHandler;
+ DWORD dwFlags;
+ #define AVISF_DISABLED 0x00000001
+ #define AVISF_VIDEO_PALCHANGES 0x00010000
+
+ 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;
+
+#pragma warning(disable:4200)
+
+typedef struct _avioldindex
+{
+ FOURCC fcc;
+ DWORD cb;
+ struct _avioldindex_entry
+ {
+ DWORD dwChunkId;
+ DWORD dwFlags;
+
+ #ifndef AVIIF_LIST
+ #define AVIIF_LIST 0x00000001
+ #define AVIIF_KEYFRAME 0x00000010
+ #endif
+
+ #define AVIIF_NO_TIME 0x00000100
+ #define AVIIF_COMPRESSOR 0x0FFF0000
+ DWORD dwOffset;
+ DWORD dwSize;
+ } aIndex[];
+} AVIOLDINDEX;
+
+typedef struct _timecodedata
+{
+ TIMECODE time;
+ DWORD dwSMPTEflags;
+ DWORD dwUser;
+} TIMECODEDATA;
+
+typedef struct _avimetaindex
+{
+ FOURCC fcc;
+ UINT cb;
+ WORD wLongsPerEntry;
+ BYTE bIndexSubType;
+ BYTE bIndexType;
+ DWORD nEntriesInUse;
+ DWORD dwChunkId;
+ DWORD dwReserved[3];
+ DWORD adwIndex[];
+} AVIMETAINDEX;
+
+
+typedef struct _avisuperindex
+{
+ FOURCC fcc;
+ UINT cb;
+ WORD wLongsPerEntry;
+ BYTE bIndexSubType;
+ BYTE bIndexType;
+ DWORD nEntriesInUse;
+ DWORD dwChunkId;
+ DWORD dwReserved[3];
+ struct _avisuperindex_entry
+ {
+ DWORDLONG qwOffset;
+ DWORD dwSize;
+ DWORD dwDuration;
+ } aIndex[NUMINDEX(4)];
+} AVISUPERINDEX;
+
+typedef struct _avistdindex_entry
+{
+ DWORD dwOffset;
+ DWORD dwSize;
+} AVISTDINDEX_ENTRY;
+
+typedef struct _avistdindex
+{
+ FOURCC fcc;
+ UINT cb;
+ WORD wLongsPerEntry;
+ BYTE bIndexSubType;
+ BYTE bIndexType;
+ DWORD nEntriesInUse;
+ DWORD dwChunkId;
+ DWORDLONG qwBaseOffset;
+ DWORD dwReserved_3;
+ AVISTDINDEX_ENTRY aIndex[NUMINDEX(2)];
+} AVISTDINDEX;
+
+
+typedef struct _avitimedindex_entry
+{
+ DWORD dwOffset;
+ DWORD dwSize;
+ DWORD dwDuration;
+} AVITIMEDINDEX_ENTRY;
+
+typedef struct _avitimedindex
+{
+ FOURCC fcc;
+ UINT cb;
+ WORD wLongsPerEntry;
+ BYTE bIndexSubType;
+ BYTE bIndexType;
+ DWORD nEntriesInUse;
+ DWORD dwChunkId;
+ DWORDLONG qwBaseOffset;
+ DWORD dwReserved_3;
+ AVITIMEDINDEX_ENTRY aIndex[NUMINDEX(3)];
+ DWORD adwTrailingFill[NUMINDEXFILL(3)];
+} AVITIMEDINDEX;
+
+typedef struct _avitimecodeindex
+{
+ FOURCC fcc;
+ UINT cb;
+ WORD wLongsPerEntry;
+ BYTE bIndexSubType;
+ BYTE bIndexType;
+ DWORD nEntriesInUse;
+ DWORD dwChunkId;
+ DWORD dwReserved[3];
+ TIMECODEDATA aIndex[NUMINDEX(sizeof(TIMECODEDATA)/sizeof(LONG))];
+} AVITIMECODEINDEX;
+
+
+typedef struct _avitcdlindex_entry
+{
+ DWORD dwTick;
+ TIMECODE time;
+ DWORD dwSMPTEflags;
+ DWORD dwUser;
+ TCHAR szReelId[12];
+} AVITCDLINDEX_ENTRY;
+
+typedef struct _avitcdlindex
+{
+ FOURCC fcc;
+ UINT cb;
+ WORD wLongsPerEntry;
+ BYTE bIndexSubType;
+ BYTE bIndexType;
+ DWORD nEntriesInUse;
+ DWORD dwChunkId;
+ DWORD dwReserved[3];
+ AVITCDLINDEX_ENTRY aIndex[NUMINDEX(7)];
+ DWORD adwTrailingFill[NUMINDEXFILL(7)];
+} AVITCDLINDEX;
+
+typedef struct _avifieldindex_chunk
+{
+ FOURCC fcc;
+ DWORD cb;
+ WORD wLongsPerEntry;
+ BYTE bIndexSubType;
+ BYTE bIndexType;
+ DWORD nEntriesInUse;
+ DWORD dwChunkId;
+ DWORDLONG qwBaseOffset;
+ DWORD dwReserved3;
+ struct _avifieldindex_entry
+ {
+ DWORD dwOffset;
+ DWORD dwSize;
+ DWORD dwOffsetField2;
+ } aIndex[];
+} AVIFIELDINDEX, *PAVIFIELDINDEX;
+
+#include <poppack.h>
+
+#endif