annotate libaf/control.h @ 27319:09cf111f68b8

Revert to previous dependency checking behavior. Take included header files into account when generating dependency files. This has problems when header files are removed or renamed, but does not silently miscompile files.
author diego
date Sat, 26 Jul 2008 18:36:48 +0000
parents 8db4448bf26c
children 72d0b1444141
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25551
diff changeset
1 #ifndef MPLAYER_CONTROL_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25551
diff changeset
2 #define MPLAYER_CONTROL_H
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
3
26182
8db4448bf26c Add missing header #include to fix 'make checkheaders'.
diego
parents: 26029
diff changeset
4 #include <sys/types.h>
8db4448bf26c Add missing header #include to fix 'make checkheaders'.
diego
parents: 26029
diff changeset
5
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
6 /*********************************************
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
7 // Control info struct.
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
8 //
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
9 // This struct is the argument in a info call to a filter.
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
10 */
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
11
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
12 // Argument types
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
13 #define AF_CONTROL_TYPE_BOOL (0x0<<0)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
14 #define AF_CONTROL_TYPE_CHAR (0x1<<0)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
15 #define AF_CONTROL_TYPE_INT (0x2<<0)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
16 #define AF_CONTROL_TYPE_FLOAT (0x3<<0)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
17 #define AF_CONTROL_TYPE_STRUCT (0x4<<0)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
18 #define AF_CONTROL_TYPE_SPECIAL (0x5<<0) // a pointer to a function for example
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
19 #define AF_CONTROL_TYPE_MASK (0x7<<0)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
20 // Argument geometry
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
21 #define AF_CONTROL_GEOM_SCALAR (0x0<<3)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
22 #define AF_CONTROL_GEOM_ARRAY (0x1<<3)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
23 #define AF_CONTROL_GEOM_MATRIX (0x2<<3)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
24 #define AF_CONTROL_GEOM_MASK (0x3<<3)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
25 // Argument properties
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
26 #define AF_CONTROL_PROP_READ (0x0<<5) // The argument can be read
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
27 #define AF_CONTROL_PROP_WRITE (0x1<<5) // The argument can be written
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
28 #define AF_CONTROL_PROP_SAVE (0x2<<5) // Can be saved
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
29 #define AF_CONTROL_PROP_RUNTIME (0x4<<5) // Acessable during execution
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
30 #define AF_CONTROL_PROP_CHANNEL (0x8<<5) // Argument is set per channel
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
31 #define AF_CONTROL_PROP_MASK (0xF<<5)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
32
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
33 typedef struct af_control_info_s{
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
34 int def; // Control enumrification
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
35 char* name; // Name of argument
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
36 char* info; // Description of what it does
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
37 int flags; // Flags as defined above
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
38 float max; // Max and min value
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
39 float min; // (only aplicable on float and int)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
40 int xdim; // 1st dimension
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
41 int ydim; // 2nd dimension (=0 for everything except matrix)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
42 size_t sz; // Size of argument in bytes
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
43 int ch; // Channel number (for future use)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
44 void* arg; // Data (for future use)
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
45 }af_control_info_t;
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
46
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
47
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
48 /*********************************************
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
49 // Extended control used with arguments that operates on only one
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
50 // channel at the time
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
51 */
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
52 typedef struct af_control_ext_s{
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
53 void* arg; // Argument
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
54 int ch; // Chanel number
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
55 }af_control_ext_t;
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
56
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
57 /*********************************************
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
58 // Control parameters
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
59 */
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
60
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
61 /* The control system is divided into 3 levels
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
62 mandatory calls - all filters must answer to all of these
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
63 optional calls - are optional
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
64 filter specific calls - applies only to some filters
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
65 */
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
66
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
67 #define AF_CONTROL_MANDATORY 0x10000000
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
68 #define AF_CONTROL_OPTIONAL 0x20000000
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
69 #define AF_CONTROL_FILTER_SPECIFIC 0x40000000
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
70
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
71 // MANDATORY CALLS
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
72
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
73 /* Reinitialize filter. The optional argument contains the new
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
74 configuration in form of a af_data_t struct. If the filter does not
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
75 support the new format the struct should be changed and AF_FALSE
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
76 should be returned. If the incoming and outgoing data streams are
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
77 identical the filter can return AF_DETACH. This will remove the
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
78 filter. */
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
79 #define AF_CONTROL_REINIT 0x00000100 | AF_CONTROL_MANDATORY
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
80
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
81 // OPTIONAL CALLS
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
82
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
83 /* Called just after creation with the af_cfg for the stream in which
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
84 the filter resides as input parameter this call can be used by the
7993
ea0680d87f3f Changing the behavour of the commandline parameter -af to conform with -vop. Adding new commanline parameter -af-adv for advanced af options. Adding changes to volume control to support commandline parameters.
anders
parents: 7745
diff changeset
85 filter to initialize itself */
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
86 #define AF_CONTROL_POST_CREATE 0x00000100 | AF_CONTROL_OPTIONAL
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
87
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
88 // Called just before destruction of a filter
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
89 #define AF_CONTROL_PRE_DESTROY 0x00000200 | AF_CONTROL_OPTIONAL
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
90
7993
ea0680d87f3f Changing the behavour of the commandline parameter -af to conform with -vop. Adding new commanline parameter -af-adv for advanced af options. Adding changes to volume control to support commandline parameters.
anders
parents: 7745
diff changeset
91 /* Commandline parameters. If there were any commandline parameters
ea0680d87f3f Changing the behavour of the commandline parameter -af to conform with -vop. Adding new commanline parameter -af-adv for advanced af options. Adding changes to volume control to support commandline parameters.
anders
parents: 7745
diff changeset
92 for this specific filter, they will be given as a char* in the
ea0680d87f3f Changing the behavour of the commandline parameter -af to conform with -vop. Adding new commanline parameter -af-adv for advanced af options. Adding changes to volume control to support commandline parameters.
anders
parents: 7745
diff changeset
93 argument */
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
94 #define AF_CONTROL_COMMAND_LINE 0x00000300 | AF_CONTROL_OPTIONAL
7993
ea0680d87f3f Changing the behavour of the commandline parameter -af to conform with -vop. Adding new commanline parameter -af-adv for advanced af options. Adding changes to volume control to support commandline parameters.
anders
parents: 7745
diff changeset
95
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
96
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
97 // FILTER SPECIFIC CALLS
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
98
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
99 // Basic operations: These can be ored with any of the below calls
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
100 // Set argument
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
101 #define AF_CONTROL_SET 0x00000000
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
102 // Get argument
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
103 #define AF_CONTROL_GET 0x00000001
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
104 // Get info about the control, i.e fill in everything except argument
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
105 #define AF_CONTROL_INFO 0x00000002
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
106
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
107 // Resample
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
108
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
109 // Set output rate in resample
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
110 #define AF_CONTROL_RESAMPLE_RATE 0x00000100 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
111
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
112 // Enable sloppy resampling
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
113 #define AF_CONTROL_RESAMPLE_SLOPPY 0x00000200 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
114
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
115 // Set resampling accuracy
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
116 #define AF_CONTROL_RESAMPLE_ACCURACY 0x00000300 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
117
14335
8380694ba14f af_bits2fmt and af_str2fmt_short, also removed the extra FORMAT_BPS control in format.c
alex
parents: 13550
diff changeset
118 // Format
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
119
14335
8380694ba14f af_bits2fmt and af_str2fmt_short, also removed the extra FORMAT_BPS control in format.c
alex
parents: 13550
diff changeset
120 #define AF_CONTROL_FORMAT_FMT 0x00000400 | AF_CONTROL_FILTER_SPECIFIC
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
121
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
122 // Channels
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
123
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
124 // Set number of output channels in channels
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
125 #define AF_CONTROL_CHANNELS 0x00000600 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
126
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
127 // Set number of channel routes
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
128 #define AF_CONTROL_CHANNELS_ROUTES 0x00000700 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
129
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
130 // Set channel routing pair, arg is int[2] and ch is used
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
131 #define AF_CONTROL_CHANNELS_ROUTING 0x00000800 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
132
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
133 // Set nuber of channel routing pairs, arg is int*
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
134 #define AF_CONTROL_CHANNELS_NR 0x00000900 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
135
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
136 // Set make af_channels into a router
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
137 #define AF_CONTROL_CHANNELS_ROUTER 0x00000A00 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
138
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
139 // Volume
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
140
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
141 // Turn volume control on and off, arg is int*
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
142 #define AF_CONTROL_VOLUME_ON_OFF 0x00000B00 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
143
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
144 // Turn soft clipping of the volume on and off, arg is binary
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
145 #define AF_CONTROL_VOLUME_SOFTCLIP 0x00000C00 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
146
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
147 // Set volume level, arg is a float* with the volume for all the channels
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
148 #define AF_CONTROL_VOLUME_LEVEL 0x00000D00 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
149
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
150 // Probed power level for all channels, arg is a float*
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
151 #define AF_CONTROL_VOLUME_PROBE 0x00000E00 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
152
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
153 // Maximum probed power level for all channels, arg is a float*
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
154 #define AF_CONTROL_VOLUME_PROBE_MAX 0x00000F00 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
155
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
156 // Compressor/expander
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
157
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
158 // Turn compressor/expander on and off
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
159 #define AF_CONTROL_COMP_ON_OFF 0x00001000 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
160
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
161 // Compression/expansion threshold [dB]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
162 #define AF_CONTROL_COMP_THRESH 0x00001100 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
163
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
164 // Compression/expansion attack time [ms]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
165 #define AF_CONTROL_COMP_ATTACK 0x00001200 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
166
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
167 // Compression/expansion release time [ms]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
168 #define AF_CONTROL_COMP_RELEASE 0x00001300 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
169
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
170 // Compression/expansion gain level [dB]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
171 #define AF_CONTROL_COMP_RATIO 0x00001400 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
172
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
173 // Noise gate
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
174
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
175 // Turn noise gate on an off
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
176 #define AF_CONTROL_GATE_ON_OFF 0x00001500 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
177
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
178 // Noise gate threshold [dB]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
179 #define AF_CONTROL_GATE_THRESH 0x00001600 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
180
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
181 // Noise gate attack time [ms]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
182 #define AF_CONTROL_GATE_ATTACK 0x00001700 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
183
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
184 // Noise gate release time [ms]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
185 #define AF_CONTROL_GATE_RELEASE 0x00001800 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
186
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
187 // Noise gate release range level [dB]
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
188 #define AF_CONTROL_GATE_RANGE 0x00001900 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
189
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
190 // Pan
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
191
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
192 // Pan levels, arg is a control_ext with a float*
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
193 #define AF_CONTROL_PAN_LEVEL 0x00001A00 | AF_CONTROL_FILTER_SPECIFIC
7745
1d3a3dc1f488 Adding volume control and moving control() call parameters to a seperate file
anders
parents:
diff changeset
194
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
195 // Number of outputs from pan, arg is int*
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
196 #define AF_CONTROL_PAN_NOUT 0x00001B00 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
197
23551
63d9b7032bf3 Add AF_CONTROL_PAN_BALANCE control
zuxy
parents: 18611
diff changeset
198 // Balance, arg is float*; range -1 (left) to 1 (right), 0 center
63d9b7032bf3 Add AF_CONTROL_PAN_BALANCE control
zuxy
parents: 18611
diff changeset
199 #define AF_CONTROL_PAN_BALANCE 0x00002500 | AF_CONTROL_FILTER_SPECIFIC
8073
c0e556f9986b Adding equalizer filter + some cosmetics
anders
parents: 7993
diff changeset
200
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
201 // Set equalizer gain, arg is a control_ext with a float*
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
202 #define AF_CONTROL_EQUALIZER_GAIN 0x00001C00 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
203
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
204
8832
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
205 // Delay length in ms, arg is a control_ext with a float*
8607
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
206 #define AF_CONTROL_DELAY_LEN 0x00001D00 | AF_CONTROL_FILTER_SPECIFIC
d6f40a06867b Changes includes:
anders
parents: 8073
diff changeset
207
8073
c0e556f9986b Adding equalizer filter + some cosmetics
anders
parents: 7993
diff changeset
208
8832
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
209 // Subwoofer
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
210
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
211 // Channel number which to insert the filtered data, arg in int*
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
212 #define AF_CONTROL_SUB_CH 0x00001E00 | AF_CONTROL_FILTER_SPECIFIC
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
213
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
214 // Cutoff frequency [Hz] for lowpass filter, arg is float*
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
215 #define AF_CONTROL_SUB_FC 0x00001F00 | AF_CONTROL_FILTER_SPECIFIC
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
216
a1578b329cc0 Adding sub-woofer filter, use this filter to add a sub channel to the audio stream
anders
parents: 8607
diff changeset
217
10892
2167ac4c1d72 Adding filter for exporting audio data to visual effect applications
anders
parents: 8832
diff changeset
218 // Export
2167ac4c1d72 Adding filter for exporting audio data to visual effect applications
anders
parents: 8832
diff changeset
219 #define AF_CONTROL_EXPORT_SZ 0x00002000 | AF_CONTROL_FILTER_SPECIFIC
2167ac4c1d72 Adding filter for exporting audio data to visual effect applications
anders
parents: 8832
diff changeset
220
13550
81e62cbe57d9 reimplementation of the pl_extrastereo and pl_volnorm plugins
alex
parents: 10892
diff changeset
221
81e62cbe57d9 reimplementation of the pl_extrastereo and pl_volnorm plugins
alex
parents: 10892
diff changeset
222 // ExtraStereo Multiplier
81e62cbe57d9 reimplementation of the pl_extrastereo and pl_volnorm plugins
alex
parents: 10892
diff changeset
223 #define AF_CONTROL_ES_MUL 0x00002100 | AF_CONTROL_FILTER_SPECIFIC
81e62cbe57d9 reimplementation of the pl_extrastereo and pl_volnorm plugins
alex
parents: 10892
diff changeset
224
14749
ab617c2e24d3 filter for adding a center channel, adding a high pass filter would be nice
alex
parents: 14335
diff changeset
225
ab617c2e24d3 filter for adding a center channel, adding a high pass filter would be nice
alex
parents: 14335
diff changeset
226 // Center
ab617c2e24d3 filter for adding a center channel, adding a high pass filter would be nice
alex
parents: 14335
diff changeset
227
ab617c2e24d3 filter for adding a center channel, adding a high pass filter would be nice
alex
parents: 14335
diff changeset
228 // Channel number which to inster the filtered data, arg in int*
ab617c2e24d3 filter for adding a center channel, adding a high pass filter would be nice
alex
parents: 14335
diff changeset
229 #define AF_CONTROL_CENTER_CH 0x00002200 | AF_CONTROL_FILTER_SPECIFIC
ab617c2e24d3 filter for adding a center channel, adding a high pass filter would be nice
alex
parents: 14335
diff changeset
230
18082
0aa3fef68422 very simple filter which can remove a sine at a specified frequency, usefull to get rid of the 50/60hz noise on ultra crappy equipment
michael
parents: 14749
diff changeset
231
18611
1c2f694d5232 Rename sinesupress to sinesuppress, including af_sinesupress.c file rename.
corey
parents: 18082
diff changeset
232 // SineSuppress
18082
0aa3fef68422 very simple filter which can remove a sine at a specified frequency, usefull to get rid of the 50/60hz noise on ultra crappy equipment
michael
parents: 14749
diff changeset
233 #define AF_CONTROL_SS_FREQ 0x00002300 | AF_CONTROL_FILTER_SPECIFIC
0aa3fef68422 very simple filter which can remove a sine at a specified frequency, usefull to get rid of the 50/60hz noise on ultra crappy equipment
michael
parents: 14749
diff changeset
234 #define AF_CONTROL_SS_DECAY 0x00002400 | AF_CONTROL_FILTER_SPECIFIC
0aa3fef68422 very simple filter which can remove a sine at a specified frequency, usefull to get rid of the 50/60hz noise on ultra crappy equipment
michael
parents: 14749
diff changeset
235
24896
8133163bd1dd Add audio filter scaletempo
uau
parents: 23551
diff changeset
236 #define AF_CONTROL_PLAYBACK_SPEED 0x00002500 | AF_CONTROL_FILTER_SPECIFIC
8133163bd1dd Add audio filter scaletempo
uau
parents: 23551
diff changeset
237 #define AF_CONTROL_SCALETEMPO_AMOUNT 0x00002600 | AF_CONTROL_FILTER_SPECIFIC
8133163bd1dd Add audio filter scaletempo
uau
parents: 23551
diff changeset
238
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25551
diff changeset
239 #endif /* MPLAYER_CONTROL_H */