source: trunk/src/winmm/mixeros2.h@ 8488

Last change on this file since 8488 was 8485, checked in by sandervl, 23 years ago

more mixer updates

File size: 3.2 KB
Line 
1/* $Id: mixeros2.h,v 1.4 2002-05-24 18:02:48 sandervl Exp $ */
2
3/*
4 * Mixer multimedia
5 *
6 * Copyright 2002 Sander van Leeuwen (sandervl@xs4all.nl)
7 *
8 *
9 * Project Odin Software License can be found in LICENSE.TXT
10 *
11 */
12
13#ifndef __WINMM_OS2MIXER_H__
14#define __WINMM_OS2MIXER_H__
15
16#define MIXER_MAX_VOLUME 100
17
18#define MIX_CTRL_MIX_OUT_LINE 0
19#define MIX_CTRL_VOL_OUT_LINE 1
20#define MIX_CTRL_MUTE_OUT_LINE 2
21#define MIX_CTRL_VOL_IN_L_MONO 3
22#define MIX_CTRL_MUTE_IN_L_MONO 4
23#define MIX_CTRL_VOL_IN_L_PHONE 5
24#define MIX_CTRL_MUTE_IN_L_PHONE 6
25#define MIX_CTRL_VOL_IN_L_MIC 7
26#define MIX_CTRL_MUTE_IN_L_MIC 8
27#define MIX_CTRL_BOOST_IN_L_MIC 9
28#define MIX_CTRL_VOL_IN_L_LINE 10
29#define MIX_CTRL_MUTE_IN_L_LINE 11
30#define MIX_CTRL_VOL_IN_L_CD 12
31#define MIX_CTRL_MUTE_IN_L_CD 13
32#define MIX_CTRL_VOL_IN_L_SPDIF 14
33#define MIX_CTRL_MUTE_IN_L_SPDIF 15
34#define MIX_CTRL_VOL_OUT_SPDIF 16
35#define MIX_CTRL_MUTE_OUT_SPDIF 17
36#define MIX_CTRL_VOL_IN_L_VIDEO 18
37#define MIX_CTRL_MUTE_IN_L_VIDEO 19
38#define MIX_CTRL_VOL_IN_L_AUX 20
39#define MIX_CTRL_MUTE_IN_L_AUX 21
40#define MIX_CTRL_VOL_IN_L_PCM 22
41#define MIX_CTRL_MUTE_IN_L_PCM 23
42#define MIX_CTRL_VOL_IN_L_WAVETABLE 24
43#define MIX_CTRL_MUTE_IN_L_WAVETABLE 25
44#define MIX_CTRL_VOL_IN_L_MIDI 26
45#define MIX_CTRL_MUTE_IN_L_MIDI 27
46#define MIX_CTRL_OUT_L_3DCENTER 28
47#define MIX_CTRL_OUT_L_3DDEPTH 29
48#define MIX_CTRL_OUT_L_TREBLE 30
49#define MIX_CTRL_OUT_L_BASS 31
50#define MIX_CTRL_MUX_IN_W_SRC 32
51#define MIX_CTRL_VOL_IN_W_MONO 33
52#define MIX_CTRL_VOL_IN_W_PHONE 34
53#define MIX_CTRL_VOL_IN_W_MIC 35
54#define MIX_CTRL_VOL_IN_W_LINE 36
55#define MIX_CTRL_VOL_IN_W_CD 37
56#define MIX_CTRL_VOL_IN_W_SPDIF 38
57#define MIX_CTRL_VOL_IN_W_VIDEO 39
58#define MIX_CTRL_VOL_IN_W_AUX 40
59#define MIX_CTRL_VOL_IN_W_PCM 41
60#define MIX_CTRL_VOL_IN_W_WAVETABLE 42
61#define MIX_CTRL_VOL_IN_W_MIDI 43
62#define MIX_CTRL_MAX 44
63
64#define MIXER_SRC_MONOIN 0
65#define MIXER_SRC_PHONE 1
66#define MIXER_SRC_MIC 2
67#define MIXER_SRC_LINE 3
68#define MIXER_SRC_CD 4
69#define MIXER_SRC_SPDIF 5
70#define MIXER_SRC_VIDEO 6
71#define MIXER_SRC_AUX 7
72#define MIXER_SRC_PCM 8
73#define MIXER_SRC_WAVETABLE 9
74#define MIXER_SRC_MIDI 10
75#define MIXER_SRC_MAX 11
76
77//max controls connected to a source line
78#define MAX_SOURCE_CONTROLS 8
79
80#define MIXER_DEST_LINEOUT 0
81#define MIXER_DEST_WAVEIN 1
82#define MIXER_DEST_SPDIFOUT 2
83#define MIXER_DEST_MAX 3
84
85#define MAX_MIXER_LINES (MIXER_SRC_MAX+MIXER_DEST_MAX)
86
87#ifdef __cplusplus
88extern "C" {
89#endif
90
91BOOL OSLibMixerOpen();
92void OSLibMixerClose();
93
94BOOL OSLibMixIsControlPresent(DWORD dwControl);
95BOOL OSLibMixSetVolume(DWORD dwControl, BOOL fMute, DWORD dwVolLeft, DWORD dwVolRight);
96BOOL OSLibMixGetVolume(DWORD dwControl, BOOL *pfMute, DWORD *pdwVolLeft, DWORD *pdwVolRight);
97BOOL OSLibMixSetRecSource(DWORD dwRecSrc, DWORD dwVolL, DWORD dwVolR);
98BOOL OSLibMixGetRecSource(DWORD *pdwRecSrc, DWORD *pdwVolL, DWORD *pdwVolR);
99BOOL OSLibMixIsRecSourcePresent(DWORD dwRecSrc);
100
101#ifdef __cplusplus
102}
103#endif
104
105#endif //__WINMM_OS2MIXER_H__
Note: See TracBrowser for help on using the repository browser.