1 |
#ifndef _FILTER_H_ |
#ifndef _FILTER_H_ |
2 |
#define _FILTER_H_ |
#define _FILTER_H_ |
3 |
|
|
4 |
#include "..\..\xvidcore\src\xvid.h" |
#include <xvid.h> |
5 |
#include "IXvidDecoder.h" |
#include "IXvidDecoder.h" |
6 |
|
|
7 |
|
#ifdef _DEBUG |
8 |
|
#include <stdio.h> /* vsprintf */ |
9 |
|
#define DPRINTF_BUF_SZ 1024 |
10 |
|
static __inline void |
11 |
|
DPRINTF(char *fmt, ...) |
12 |
|
{ |
13 |
|
va_list args; |
14 |
|
char buf[DPRINTF_BUF_SZ]; |
15 |
|
|
16 |
#define DEBUG(X) |
va_start(args, fmt); |
17 |
// OutputDebugString(X) |
vsprintf(buf, fmt, args); |
18 |
|
OutputDebugString(buf); |
19 |
|
} |
20 |
|
#else |
21 |
|
static __inline void |
22 |
|
DPRINTF(char *fmt, ...) { } |
23 |
|
#endif |
24 |
|
|
25 |
#define XVID_NAME_L L"XviD MPEG-4 Video Decoder" |
#define XVID_NAME_L L"XviD MPEG-4 Video Decoder" |
26 |
|
|
28 |
|
|
29 |
#define FOURCC_XVID mmioFOURCC('X','V','I','D') |
#define FOURCC_XVID mmioFOURCC('X','V','I','D') |
30 |
#define FOURCC_DIVX mmioFOURCC('D','I','V','X') |
#define FOURCC_DIVX mmioFOURCC('D','I','V','X') |
31 |
|
#define FOURCC_DX50 mmioFOURCC('D','X','5','0') |
32 |
|
|
33 |
/* --- media uids --- */ |
/* --- media uids --- */ |
34 |
|
|
35 |
DEFINE_GUID(CLSID_XVID, |
DEFINE_GUID(CLSID_XVID, mmioFOURCC('x','v','i','d'), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
36 |
0x64697678, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
DEFINE_GUID(CLSID_XVID_UC, mmioFOURCC('X','V','I','D'), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
37 |
|
DEFINE_GUID(CLSID_DIVX, mmioFOURCC('d','i','v','x'), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
38 |
DEFINE_GUID(CLSID_XVID_UC, |
DEFINE_GUID(CLSID_DIVX_UC, mmioFOURCC('D','I','V','X'), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
39 |
0x44495658, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
DEFINE_GUID(CLSID_DX50, mmioFOURCC('d','x','5','0'), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
40 |
|
DEFINE_GUID(CLSID_DX50_UC, mmioFOURCC('D','X','5','0'), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
|
DEFINE_GUID(CLSID_DIVX, |
|
|
0x78766964, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
|
|
|
|
|
DEFINE_GUID(CLSID_DIVX_UC, |
|
|
0x58564944, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); |
|
41 |
|
|
42 |
|
|
43 |
class CXvidDecoder : public CVideoTransformFilter, public IXvidDecoder, public ISpecifyPropertyPages |
class CXvidDecoder : public CVideoTransformFilter, public IXvidDecoder, public ISpecifyPropertyPages |