/[cello]/cl-openal/altypes.lisp
ViewVC logotype

Contents of /cl-openal/altypes.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations)
Wed Jun 15 21:08:42 2005 UTC (8 years, 10 months ago) by ktilton
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +1 -0 lines
OSX merge
1 (in-package :cl-openal)
2 #|
3 * OpenAL cross platform audio library
4 * Copyright (C) 1999-2000 by authors.
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
14 *
15 * You should have received a copy of the GNU Library General Public
16 * License along with this library; if not, write to the
17 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 * Boston, MA 02111-1307, USA.
19 * Or go to http://www.gnu.org/copyleft/lgpl.html
20 |#
21
22
23 (dft al-enum #-allegro-v5.0.1 :unsigned-int #+allegro-v5.0.1 :int integer)
24 (dft al-bitfield #-allegro-v5.0.1 :unsigned-int #+allegro-v5.0.1 :int integer)
25
26 (dft al-int :int integer)
27 (dft al-sizei :int integer)
28
29 (dft al-uint #-allegro-v5.0.1 :unsigned-int #+allegro-v5.0.1 :int integer)
30 (dft al-ushort #-allegro-v5.0.1 :unsigned-int #+allegro-v5.0.1 :int integer)
31
32 (dft al-float #+lispworks :lisp-single-float #-lispworks :float single-float)
33 (dft al-clampf #+lispworks :lisp-single-float #-lispworks :float single-float)
34
35 (dft al-double :double double-float)
36 (dft al-clampd :double double-float)
37
38 (dft al-boolean :unsigned-byte #+allegro character #-allegro number)
39 (dft al-byte :byte #+allegro character #-allegro number) ;; typedef signed char GLbyte;
40 (dft al-void :void integer)
41
42 (dft al-short #-allegro-v5.0.1 :short #+allegro-v5.0.1 :int integer)
43 (dft al-ubyte :unsigned-byte #+allegro character #-allegro number)
44
45
46 (dft al-sizei #-allegro-v5.0.1 :unsigned-int #+allegro-v5.0.1 :int integer)
47
48 (dfc al_invalid -1)
49 (dfc al_none 0)
50 (dfc al_false 0)
51 (dfc al_true 1)
52
53
54 #|*
55 * Indicate the type of AL_SOURCE.
56 * Sources can be spatialized
57 |#
58 (dfc al_source_type #x200)
59
60 #|* Indicate source has absolute coordinates. |#
61 (dfc al_source_absolute #x201)
62
63 #|* Indicate Source has listener relative coordinates. |#
64 (dfc al_source_relative #x202)
65
66 #|*
67 * Directional source, inner cone angle, in degrees.
68 * Range: [0-360]
69 * Default: 360
70 |#
71 (dfc al_cone_inner_angle #x1001)
72
73 #|*
74 * Directional source, outer cone angle, in degrees.
75 * Range: [0-360]
76 * Default: 360
77 |#
78 (dfc al_cone_outer_angle #x1002)
79
80 #|*
81 * Specify the pitch to be applied, either at source,
82 * or on mixer results, at listener.
83 * Range: [0.5-2.0]
84 * Default: 1.0
85 |#
86 (dfc al_pitch #x1003)
87
88 #|*
89 * Specify the current location in three dimensional space.
90 * OpenAL, like OpenGL, uses a right handed coordinate system,
91 * where in a frontal default view X (thumb) points right,
92 * Y points up (index finger), and Z points towards the
93 * viewer/camera (middle finger).
94 * To switch from a left handed coordinate system, flip the
95 * sign on the Z coordinate.
96 * Listener position is always in the world coordinate system.
97 |#
98 (dfc al_position #x1004)
99
100 #|* Specify the current direction as forward vector. |#
101 (dfc al_direction #x1005)
102
103 #|* Specify the current velocity in three dimensional space. |#
104 (dfc al_velocity #x1006)
105
106 #|*
107 * Indicate whether source has to loop infinite.
108 * Type: ALboolean
109 * Range: [AL_TRUE, AL_FALSE]
110 * Default: AL_FALSE
111 |#
112 (dfc al_looping #x1007)
113
114 #|*
115 * Indicate the buffer to provide sound samples.
116 * Type: ALuint.
117 * Range: any valid Buffer id.
118 |#
119 (dfc al_buffer #x1009)
120
121 #|*
122 * Indicate the gain (volume amplification) applied.
123 * Type: ALfloat.
124 * Range: ]0.0- ]
125 * A value of 1.0 means un-attenuated/unchanged.
126 * Each division by 2 equals an attenuation of -6dB.
127 * Each multiplicaton with 2 equals an amplification of +6dB.
128 * A value of 0.0 is meaningless with respect to a logarithmic
129 * scale; it is interpreted as zero volume - the channel
130 * is effectively disabled.
131 |#
132 (dfc al_gain #x100a)
133
134 #|*
135 * Indicate minimum source attenuation.
136 * Type: ALfloat
137 * Range: [0.0 - 1.0]
138 |#
139 (dfc al_min_gain #x100d)
140
141 #|*
142 * Indicate maximum source attenuation.
143 * Type: ALfloat
144 * Range: [0.0 - 1.0]
145 |#
146 (dfc al_max_gain #x100e)
147
148 #|*
149 * Specify the current orientation.
150 * Type: ALfv6 (at/up)
151 * Range: N/A
152 |#
153 (dfc al_orientation #x100f)
154
155 #| byte offset into source (in canon format). -1 if source
156 * is not playing. Don't set this, get this.
157 *
158 * Type: ALfloat
159 * Range: [0.0 - ]
160 * Default: 1.0
161 |#
162 (dfc al_reference_distance #x1020)
163
164 #|*
165 * Indicate the rolloff factor for the source.
166 * Type: ALfloat
167 * Range: [0.0 - ]
168 * Default: 1.0
169 |#
170 (dfc al_rolloff_factor #x1021)
171
172 #|*
173 * Indicate the gain (volume amplification) applied.
174 * Type: ALfloat.
175 * Range: ]0.0- ]
176 * A value of 1.0 means un-attenuated/unchanged.
177 * Each division by 2 equals an attenuation of -6dB.
178 * Each multiplicaton with 2 equals an amplification of +6dB.
179 * A value of 0.0 is meaningless with respect to a logarithmic
180 * scale; it is interpreted as zero volume - the channel
181 * is effectively disabled.
182 |#
183 (dfc al_cone_outer_gain #x1022)
184
185 #|*
186 * Specify the maximum distance.
187 * Type: ALfloat
188 * Range: [0.0 - ]
189 |#
190 (dfc al_max_distance #x1023)
191
192 #|*
193 * Specify the channel mask. (Creative)
194 * Type: ALuint
195 * Range: [0 - 255]
196 |#
197 (dfc al_channel_mask #x3000)
198
199 #|*
200 * Source state information
201 |#
202 (dfc al_source_state #x1010)
203 (dfc al_initial #x1011)
204 (dfc al_playing #x1012)
205 (dfc al_paused #x1013)
206 (dfc al_stopped #x1014)
207
208 #|*
209 * Buffer Queue params
210 |#
211 (dfc al_buffers_queued #x1015)
212 (dfc al_buffers_processed #x1016)
213
214 #|* Sound buffers: format specifier. |#
215 (dfc al_format_mono8 #x1100)
216 (dfc al_format_mono16 #x1101)
217 (dfc al_format_stereo8 #x1102)
218 (dfc al_format_stereo16 #x1103)
219
220 #|*
221 * Sound buffers: frequency, in units of Hertz [Hz].
222 * This is the number of samples per second. Half of the
223 * sample frequency marks the maximum significant
224 * frequency component.
225 |#
226 (dfc al_frequency #x2001)
227 (dfc al_bits #x2002)
228 (dfc al_channels #x2003)
229 (dfc al_size #x2004)
230 (dfc al_data #x2005)
231
232 #|*
233 * Buffer state.
234 *
235 * Not supported for public use (yet).
236 |#
237 (dfc al_unused #x2010)
238 (dfc al_pending #x2011)
239 (dfc al_processed #x2012)
240
241 #|* Errors: No Error. |#
242 (dfc al_no_error al_false)
243
244 #|*
245 * Illegal name passed as an argument to an AL call.
246 |#
247 (dfc al_invalid_name #xa001)
248
249 #|*
250 * Illegal enum passed as an argument to an AL call.
251 |#
252 (dfc al_invalid_enum #xa002)
253 #|*
254 * Illegal value passed as an argument to an AL call.
255 * Applies to parameter values, but not to enumerations.
256 |#
257 (dfc al_invalid_value #xa003)
258
259 #|*
260 * A function was called at inappropriate time,
261 * or in an inappropriate way, causing an illegal state.
262 * This can be an incompatible ALenum, object ID,
263 * and/or function.
264 |#
265 (dfc al_invalid_operation #xa004)
266
267 #|*
268 * A function could not be completed,
269 * because there is not enough memory available.
270 |#
271 (dfc al_out_of_memory #xa005)
272
273 #|* Context strings: Vendor Name. |#
274 (dfc al_vendor #xb001)
275 (dfc al_version #xb002)
276 (dfc al_renderer #xb003)
277 (dfc al_extensions #xb004)
278
279 #|* Global tweakage. |#
280
281 #|*
282 * Doppler scale. Default 1.0
283 |#
284 (dfc al_doppler_factor #xc000)
285
286 #|*
287 * Doppler velocity. Default 1.0
288 |#
289 (dfc al_doppler_velocity #xc001)
290
291 #|*
292 * Distance model. Default AL_INVERSE_DISTANCE_CLAMPED
293 |#
294 (dfc al_distance_model #xd000)
295
296 #|* Distance models. |#
297
298 (dfc al_inverse_distance #xd001)
299 (dfc al_inverse_distance_clamped #xd002)
300

  ViewVC Help
Powered by ViewVC 1.1.5