annotate mixer.h @ 35909:bc57212092a8

configure: Set CPPFLAGS to enable commonly used system features MPlayer relies on POSIX, XOPEN and C99 features being available. However, the necessary CPPFLAGS to enable those features are not set explicitly; they are just used in some configure tests. Set flags for these features explicitly in order to ensure they are always available.
author diego
date Sun, 17 Mar 2013 22:47:46 +0000
parents c1a3f1bbba26
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
30429
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
1 /*
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
2 * This file is part of MPlayer.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
3 *
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
4 * MPlayer is free software; you can redistribute it and/or modify
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
5 * it under the terms of the GNU General Public License as published by
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
7 * (at your option) any later version.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
8 *
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
9 * MPlayer is distributed in the hope that it will be useful,
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
12 * GNU General Public License for more details.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
13 *
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
14 * You should have received a copy of the GNU General Public License along
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
17 */
c1a3f1bbba26 Add license header to all top-level files missing them.
diego
parents: 28051
diff changeset
18
23934
88bed2131f19 Identifiers starting with underscores are reserved.
diego
parents: 23568
diff changeset
19 #ifndef MPLAYER_MIXER_H
88bed2131f19 Identifiers starting with underscores are reserved.
diego
parents: 23568
diff changeset
20 #define MPLAYER_MIXER_H
441
c4b4e2aac9de ups, I missed'em..
gabucino
parents:
diff changeset
21
12672
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
22 #include "libaf/af.h"
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
23 #include "libao2/audio_out.h"
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
24
441
c4b4e2aac9de ups, I missed'em..
gabucino
parents:
diff changeset
25 extern char * mixer_device;
11837
4e8f8efb6906 add option to select mixer channel
attila
parents: 6311
diff changeset
26 extern char * mixer_channel;
13933
75b84965d137 allow forcing of software volume control and setting maximum amplification.
reimar
parents: 12672
diff changeset
27 extern int soft_vol;
75b84965d137 allow forcing of software volume control and setting maximum amplification.
reimar
parents: 12672
diff changeset
28 extern float soft_vol_max;
441
c4b4e2aac9de ups, I missed'em..
gabucino
parents:
diff changeset
29
12672
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
30 typedef struct mixer_s {
25913
21a1dc062bc5 ao_functions_t should be const, part 1
reimar
parents: 23934
diff changeset
31 const ao_functions_t *audio_out;
12672
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
32 af_stream_t *afilter;
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
33 int volstep;
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
34 int muted;
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
35 float last_l, last_r;
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
36 } mixer_t;
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
37
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
38 void mixer_getvolume(mixer_t *mixer, float *l, float *r);
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
39 void mixer_setvolume(mixer_t *mixer, float l, float r);
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
40 void mixer_incvolume(mixer_t *mixer);
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
41 void mixer_decvolume(mixer_t *mixer);
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
42 void mixer_getbothvolume(mixer_t *mixer, float *b);
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
43 void mixer_mute(mixer_t *mixer);
23568
519e42b716aa The audio balance feature implemented with af_pan.
zuxy
parents: 13933
diff changeset
44 void mixer_getbalance(mixer_t *mixer, float *bal);
519e42b716aa The audio balance feature implemented with af_pan.
zuxy
parents: 13933
diff changeset
45 void mixer_setbalance(mixer_t *mixer, float bal);
441
c4b4e2aac9de ups, I missed'em..
gabucino
parents:
diff changeset
46
28051
9e739bdb049c Get rid of pointless 'extern' keywords.
diego
parents: 25913
diff changeset
47 //void mixer_setbothvolume(int v);
12672
9709ce101949 New 'Mixer API' with ability to change volume through libaf (this part was written by Reimar Doffinger) and lesser global variables
alex
parents: 11837
diff changeset
48 #define mixer_setbothvolume(m, v) mixer_setvolume(m, v, v)
441
c4b4e2aac9de ups, I missed'em..
gabucino
parents:
diff changeset
49
23934
88bed2131f19 Identifiers starting with underscores are reserved.
diego
parents: 23568
diff changeset
50 #endif /* MPLAYER_MIXER_H */