blob: 9bde65d11ac4ace92f4a22a122363d4717e5d7fb [file] [log] [blame]
Michael Günnewiga26a2ca2002-10-10 23:31:13 +00001/*
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 */
18
19#ifndef __AVIFILE_PRIVATE_H
20#define __AVIFILE_PRIVATE_H
21
22#ifndef MAX_AVISTREAMS
23#define MAX_AVISTREAMS 4
24#endif
25
Michael Günnewig4c04e1f2002-10-18 00:24:41 +000026#ifndef comptypeDIB
27#define comptypeDIB mmioFOURCC('D','I','B',' ')
28#endif
29
30#ifndef DIBWIDTHBYTES
31#define WIDTHBYTES(i) (((i+31)&(~31))/8)
32#define DIBWIDTHBYTES(bi) WIDTHBYTES((bi).biWidth * (bi).biBitCount)
33#endif
34
35#define IDS_WAVESTREAMFORMAT 0x0100
36#define IDS_WAVEFILETYPE 0x0101
37#define IDS_VIDEO 0x0189
38#define IDS_AUDIO 0x0190
39#define IDS_AVISTREAMFORMAT 0x0191
40#define IDS_AVIFILETYPE 0x0192
41#define IDS_UNCOMPRESSED 0x0193
42
Michael Günnewiga26a2ca2002-10-10 23:31:13 +000043DEFINE_AVIGUID(CLSID_ICMStream, 0x00020001, 0, 0);
44DEFINE_AVIGUID(CLSID_WAVFile, 0x00020003, 0, 0);
45DEFINE_AVIGUID(CLSID_ACMStream, 0x0002000F, 0, 0);
46
47extern HMODULE AVIFILE_hModule;
48
49extern HRESULT AVIFILE_CreateAVIFile(REFIID riid, LPVOID *ppobj);
50extern HRESULT AVIFILE_CreateWAVFile(REFIID riid, LPVOID *ppobj);
51extern HRESULT AVIFILE_CreateACMStream(REFIID riid, LPVOID *ppobj);
52extern HRESULT AVIFILE_CreateICMStream(REFIID riid, LPVOID *ppobj);
Michael Günnewig4c04e1f2002-10-18 00:24:41 +000053extern PGETFRAME AVIFILE_CreateGetFrame(PAVISTREAM pstream);
54
55extern LPCWSTR AVIFILE_BasenameW(LPCWSTR szFileName);
Michael Günnewiga26a2ca2002-10-10 23:31:13 +000056
57#endif