ReactOS  0.4.14-dev-583-g2a1ba2c
winmm_test.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2002 Francois Gouget
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 WAVE_FORMAT_48M08
20 #define WAVE_FORMAT_48M08 0x00001000 /* 48 kHz, Mono, 8-bit */
21 #define WAVE_FORMAT_48S08 0x00002000 /* 48 kHz, Stereo, 8-bit */
22 #define WAVE_FORMAT_48M16 0x00004000 /* 48 kHz, Mono, 16-bit */
23 #define WAVE_FORMAT_48S16 0x00008000 /* 48 kHz, Stereo, 16-bit */
24 #define WAVE_FORMAT_96M08 0x00010000 /* 96 kHz, Mono, 8-bit */
25 #define WAVE_FORMAT_96S08 0x00020000 /* 96 kHz, Stereo, 8-bit */
26 #define WAVE_FORMAT_96M16 0x00040000 /* 96 kHz, Mono, 16-bit */
27 #define WAVE_FORMAT_96S16 0x00080000 /* 96 kHz, Stereo, 16-bit */
28 #endif
29 
30 #ifndef DRV_QUERYDEVICEINTERFACE
31 #define DRV_QUERYDEVICEINTERFACE (DRV_RESERVED + 12)
32 #endif
33 #ifndef DRV_QUERYDEVICEINTERFACESIZE
34 #define DRV_QUERYDEVICEINTERFACESIZE (DRV_RESERVED + 13)
35 #endif
36 
37 static const unsigned int win_formats[][4] = {
38  {0, 8000, 8, 1},
39  {0, 8000, 8, 2},
40  {0, 8000, 16, 1},
41  {0, 8000, 16, 2},
42  {WAVE_FORMAT_1M08, 11025, 8, 1},
43  {WAVE_FORMAT_1S08, 11025, 8, 2},
44  {WAVE_FORMAT_1M16, 11025, 16, 1},
45  {WAVE_FORMAT_1S16, 11025, 16, 2},
46  {0, 12000, 8, 1},
47  {0, 12000, 8, 2},
48  {0, 12000, 16, 1},
49  {0, 12000, 16, 2},
50  {0, 16000, 8, 1},
51  {0, 16000, 8, 2},
52  {0, 16000, 16, 1},
53  {0, 16000, 16, 2},
54  {WAVE_FORMAT_2M08, 22050, 8, 1},
55  {WAVE_FORMAT_2S08, 22050, 8, 2},
56  {WAVE_FORMAT_2M16, 22050, 16, 1},
57  {WAVE_FORMAT_2S16, 22050, 16, 2},
58  {WAVE_FORMAT_4M08, 44100, 8, 1},
59  {WAVE_FORMAT_4S08, 44100, 8, 2},
60  {WAVE_FORMAT_4M16, 44100, 16, 1},
61  {WAVE_FORMAT_4S16, 44100, 16, 2},
62  {WAVE_FORMAT_48M08, 48000, 8, 1},
63  {WAVE_FORMAT_48S08, 48000, 8, 2},
64  {WAVE_FORMAT_48M16, 48000, 16, 1},
65  {WAVE_FORMAT_48S16, 48000, 16, 2},
66  {WAVE_FORMAT_96M08, 96000, 8, 1},
67  {WAVE_FORMAT_96S08, 96000, 8, 2},
68  {WAVE_FORMAT_96M16, 96000, 16, 1},
69  {WAVE_FORMAT_96S16, 96000, 16, 2}
70 };
71 
72 extern const char* dev_name(int);
73 extern const char* wave_open_flags(DWORD);
74 extern const char* mmsys_error(MMRESULT);
75 extern const char* wave_out_error(MMRESULT);
76 extern const char* get_format_str(WORD format);
77 extern const char* wave_time_format(UINT type);
80 extern DWORD time_to_bytes(LPMMTIME mmtime, LPWAVEFORMATEX pwfx);
#define WAVE_FORMAT_48S16
Definition: winmm_test.h:23
#define WAVE_FORMAT_1M08
Definition: mmsystem.h:206
#define WAVE_FORMAT_96S08
Definition: winmm_test.h:25
#define WAVE_FORMAT_48S08
Definition: winmm_test.h:21
#define WAVE_FORMAT_4M16
Definition: mmsystem.h:216
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
UINT MMRESULT
Definition: mmsystem.h:962
static const unsigned int win_formats[][4]
Definition: winmm_test.h:37
const char * wave_out_error(MMRESULT)
Definition: wave.c:270
DWORD bytes_to_samples(DWORD bytes, LPWAVEFORMATEX pwfx)
Definition: wave.c:461
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
#define WAVE_FORMAT_1S08
Definition: mmsystem.h:207
static unsigned char bytes[4]
Definition: adnsresfilter.c:74
DWORD bytes_to_ms(DWORD bytes, LPWAVEFORMATEX pwfx)
Definition: wave.c:466
#define WAVE_FORMAT_2M08
Definition: mmsystem.h:210
#define WAVE_FORMAT_4S16
Definition: mmsystem.h:217
#define WAVE_FORMAT_2M16
Definition: mmsystem.h:212
#define WAVE_FORMAT_96S16
Definition: winmm_test.h:27
#define WAVE_FORMAT_4S08
Definition: mmsystem.h:215
#define WAVE_FORMAT_48M16
Definition: winmm_test.h:22
DWORD time_to_bytes(LPMMTIME mmtime, LPWAVEFORMATEX pwfx)
Definition: wave.c:471
const char * dev_name(int)
Definition: wave.c:211
#define WAVE_FORMAT_2S16
Definition: mmsystem.h:213
unsigned short WORD
Definition: ntddk_ex.h:93
unsigned long DWORD
Definition: ntddk_ex.h:95
#define WAVE_FORMAT_4M08
Definition: mmsystem.h:214
#define WAVE_FORMAT_1S16
Definition: mmsystem.h:209
const char * wave_time_format(UINT type)
Definition: wave.c:391
#define WAVE_FORMAT_96M08
Definition: winmm_test.h:24
#define WAVE_FORMAT_2S08
Definition: mmsystem.h:211
unsigned int UINT
Definition: ndis.h:50
#define WAVE_FORMAT_1M16
Definition: mmsystem.h:208
#define WAVE_FORMAT_96M16
Definition: winmm_test.h:26
const char * mmsys_error(MMRESULT)
Definition: wave.c:220
const char * get_format_str(WORD format)
Definition: wave.c:408
#define WAVE_FORMAT_48M08
Definition: winmm_test.h:20
const char * wave_open_flags(DWORD)
Definition: wave.c:284