ReactOS 0.4.17-dev-806-gffa4164
avifile_private.h
Go to the documentation of this file.
1/*
2 * Copyright 2002 Michael Günnewig
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#ifndef __AVIFILE_PRIVATE_H
20#define __AVIFILE_PRIVATE_H
21
22#include <windef.h>
23#include <winuser.h>
24
25#ifndef MAX_AVISTREAMS
26#define MAX_AVISTREAMS 8
27#endif
28
29#ifndef DIBWIDTHBYTES
30#define WIDTHBYTES(i) (((i+31)&(~31))/8)
31#define DIBWIDTHBYTES(bi) WIDTHBYTES((bi).biWidth * (bi).biBitCount)
32#endif
33
34#ifndef DIBPTR
35#define DIBPTR(lp) ((LPBYTE)(lp) + (lp)->biSize + \
36 (lp)->biClrUsed * sizeof(RGBQUAD))
37#endif
38
39#define IDD_SAVEOPTIONS 0x0100
40#define IDC_INTERLEAVE 0x0110
41#define IDC_INTERLEAVEEVERY 0x0111
42#define IDC_STREAM 0x0112
43#define IDC_OPTIONS 0x0113
44#define IDC_FORMATTEXT 0x0114
45
46#define IDS_WAVESTREAMFORMAT 0x0100
47#define IDS_WAVEFILETYPE 0x0101
48#define IDS_ALLMULTIMEDIA 0x0184
49#define IDS_ALLFILES 0x0185
50#define IDS_VIDEO 0x0189
51#define IDS_AUDIO 0x0190
52#define IDS_AVIFILETYPE 0x0192
53#define IDS_UNCOMPRESSED 0x0193
54
55DEFINE_AVIGUID(CLSID_ICMStream, 0x00020001, 0, 0);
56DEFINE_AVIGUID(CLSID_WAVFile, 0x00020003, 0, 0);
57DEFINE_AVIGUID(CLSID_ACMStream, 0x0002000F, 0, 0);
58
60
62extern HRESULT AVIFILE_CreateWAVFile(IUnknown *outer_unk, REFIID riid, void **ret_iface);
66extern PAVIFILE AVIFILE_CreateAVITempFile(int nStreams, const PAVISTREAM *ppStreams);
67
68extern LPCWSTR AVIFILE_BasenameW(LPCWSTR szFileName);
70
71#endif
HRESULT AVIFILE_CreateWAVFile(IUnknown *outer_unk, REFIID riid, void **ret_iface)
Definition: wavfile.c:978
LPCWSTR AVIFILE_BasenameW(LPCWSTR szFileName)
Definition: factory.c:157
PGETFRAME AVIFILE_CreateGetFrame(PAVISTREAM pstream)
Definition: getframe.c:488
HRESULT AVIFILE_CreateACMStream(REFIID riid, LPVOID *ppobj)
Definition: acmstream.c:698
HRESULT WINAPI avifil32_DllGetClassObject(REFCLSID pclsid, REFIID piid, LPVOID *ppv)
HRESULT AVIFILE_CreateICMStream(REFIID riid, LPVOID *ppobj)
Definition: icmstream.c:727
HRESULT AVIFILE_CreateAVIFile(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppobj)
HMODULE AVIFILE_hModule
Definition: factory.c:39
PAVIFILE AVIFILE_CreateAVITempFile(int nStreams, const PAVISTREAM *ppStreams)
Definition: tmpfile.c:220
INT nStreams
Definition: api.c:60
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define REFIID
Definition: guiddef.h:118
#define REFCLSID
Definition: guiddef.h:117
const uint16_t * LPCWSTR
Definition: typedefs.h:57
#define DEFINE_AVIGUID(name, l, w1, w2)
Definition: vfw.h:1136
struct IGetFrame * PGETFRAME
Definition: vfw.h:40
#define WINAPI
Definition: msvc.h:6