-
Notifications
You must be signed in to change notification settings - Fork 0
/
fmod_common.js
659 lines (655 loc) · 26.4 KB
/
fmod_common.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
const {
e,
ref,
Struct,
Func,
ArrayType,
en
} = require('./api');
e.FMOD_VERSION = 0x00020208;
e.FMOD_DEBUG_LEVEL_NONE = 0x00000000;
e.FMOD_DEBUG_LEVEL_ERROR = 0x00000001;
e.FMOD_DEBUG_LEVEL_WARNING = 0x00000002;
e.FMOD_DEBUG_LEVEL_LOG = 0x00000004;
e.FMOD_DEBUG_TYPE_MEMORY = 0x00000100;
e.FMOD_DEBUG_TYPE_FILE = 0x00000200;
e.FMOD_DEBUG_TYPE_CODEC = 0x00000400;
e.FMOD_DEBUG_TYPE_TRACE = 0x00000800;
e.FMOD_DEBUG_DISPLAY_TIMESTAMPS = 0x00010000;
e.FMOD_DEBUG_DISPLAY_LINENUMBERS = 0x00020000;
e.FMOD_DEBUG_DISPLAY_THREAD = 0x00040000;
e.FMOD_MEMORY_NORMAL = 0x00000000;
e.FMOD_MEMORY_STREAM_FILE = 0x00000001;
e.FMOD_MEMORY_STREAM_DECODE = 0x00000002;
e.FMOD_MEMORY_SAMPLEDATA = 0x00000004;
e.FMOD_MEMORY_DSP_BUFFER = 0x00000008;
e.FMOD_MEMORY_PLUGIN = 0x00000010;
e.FMOD_MEMORY_PERSISTENT = 0x00200000;
e.FMOD_MEMORY_ALL = 0xFFFFFFFF;
e.FMOD_INIT_NORMAL = 0x00000000;
e.FMOD_INIT_STREAM_FROM_UPDATE = 0x00000001;
e.FMOD_INIT_MIX_FROM_UPDATE = 0x00000002;
e.FMOD_INIT_3D_RIGHTHANDED = 0x00000004;
e.FMOD_INIT_CLIP_OUTPUT = 0x00000008;
e.FMOD_INIT_CHANNEL_LOWPASS = 0x00000100;
e.FMOD_INIT_CHANNEL_DISTANCEFILTER = 0x00000200;
e.FMOD_INIT_PROFILE_ENABLE = 0x00010000;
e.FMOD_INIT_VOL0_BECOMES_VIRTUAL = 0x00020000;
e.FMOD_INIT_GEOMETRY_USECLOSEST = 0x00040000;
e.FMOD_INIT_PREFER_DOLBY_DOWNMIX = 0x00080000;
e.FMOD_INIT_THREAD_UNSAFE = 0x00100000;
e.FMOD_INIT_PROFILE_METER_ALL = 0x00200000;
e.FMOD_INIT_MEMORY_TRACKING = 0x00400000;
e.FMOD_DRIVER_STATE_CONNECTED = 0x00000001;
e.FMOD_DRIVER_STATE_DEFAULT = 0x00000002;
e.FMOD_TIMEUNIT_MS = 0x00000001;
e.FMOD_TIMEUNIT_PCM = 0x00000002;
e.FMOD_TIMEUNIT_PCMBYTES = 0x00000004;
e.FMOD_TIMEUNIT_RAWBYTES = 0x00000008;
e.FMOD_TIMEUNIT_PCMFRACTION = 0x00000010;
e.FMOD_TIMEUNIT_MODORDER = 0x00000100;
e.FMOD_TIMEUNIT_MODROW = 0x00000200;
e.FMOD_TIMEUNIT_MODPATTERN = 0x00000400;
e.FMOD_SYSTEM_CALLBACK_DEVICELISTCHANGED = 0x00000001;
e.FMOD_SYSTEM_CALLBACK_DEVICELOST = 0x00000002;
e.FMOD_SYSTEM_CALLBACK_MEMORYALLOCATIONFAILED = 0x00000004;
e.FMOD_SYSTEM_CALLBACK_THREADCREATED = 0x00000008;
e.FMOD_SYSTEM_CALLBACK_BADDSPCONNECTION = 0x00000010;
e.FMOD_SYSTEM_CALLBACK_PREMIX = 0x00000020;
e.FMOD_SYSTEM_CALLBACK_POSTMIX = 0x00000040;
e.FMOD_SYSTEM_CALLBACK_ERROR = 0x00000080;
e.FMOD_SYSTEM_CALLBACK_MIDMIX = 0x00000100;
e.FMOD_SYSTEM_CALLBACK_THREADDESTROYED = 0x00000200;
e.FMOD_SYSTEM_CALLBACK_PREUPDATE = 0x00000400;
e.FMOD_SYSTEM_CALLBACK_POSTUPDATE = 0x00000800;
e.FMOD_SYSTEM_CALLBACK_RECORDLISTCHANGED = 0x00001000;
e.FMOD_SYSTEM_CALLBACK_BUFFEREDNOMIX = 0x00002000;
e.FMOD_SYSTEM_CALLBACK_DEVICEREINITIALIZE = 0x00004000;
e.FMOD_SYSTEM_CALLBACK_OUTPUTUNDERRUN = 0x00008000;
e.FMOD_SYSTEM_CALLBACK_ALL = 0xFFFFFFFF;
e.FMOD_DEFAULT = 0x00000000;
e.FMOD_LOOP_OFF = 0x00000001;
e.FMOD_LOOP_NORMAL = 0x00000002;
e.FMOD_LOOP_BIDI = 0x00000004;
e.FMOD_2D = 0x00000008;
e.FMOD_3D = 0x00000010;
e.FMOD_CREATESTREAM = 0x00000080;
e.FMOD_CREATESAMPLE = 0x00000100;
e.FMOD_CREATECOMPRESSEDSAMPLE = 0x00000200;
e.FMOD_OPENUSER = 0x00000400;
e.FMOD_OPENMEMORY = 0x00000800;
e.FMOD_OPENMEMORY_POINT = 0x10000000;
e.FMOD_OPENRAW = 0x00001000;
e.FMOD_OPENONLY = 0x00002000;
e.FMOD_ACCURATETIME = 0x00004000;
e.FMOD_MPEGSEARCH = 0x00008000;
e.FMOD_NONBLOCKING = 0x00010000;
e.FMOD_UNIQUE = 0x00020000;
e.FMOD_3D_HEADRELATIVE = 0x00040000;
e.FMOD_3D_WORLDRELATIVE = 0x00080000;
e.FMOD_3D_INVERSEROLLOFF = 0x00100000;
e.FMOD_3D_LINEARROLLOFF = 0x00200000;
e.FMOD_3D_LINEARSQUAREROLLOFF = 0x00400000;
e.FMOD_3D_INVERSETAPEREDROLLOFF = 0x00800000;
e.FMOD_3D_CUSTOMROLLOFF = 0x04000000;
e.FMOD_3D_IGNOREGEOMETRY = 0x40000000;
e.FMOD_IGNORETAGS = 0x02000000;
e.FMOD_LOWMEM = 0x08000000;
e.FMOD_VIRTUAL_PLAYFROMSTART = 0x80000000;
e.FMOD_CHANNELMASK_FRONT_LEFT = 0x00000001;
e.FMOD_CHANNELMASK_FRONT_RIGHT = 0x00000002;
e.FMOD_CHANNELMASK_FRONT_CENTER = 0x00000004;
e.FMOD_CHANNELMASK_LOW_FREQUENCY = 0x00000008;
e.FMOD_CHANNELMASK_SURROUND_LEFT = 0x00000010;
e.FMOD_CHANNELMASK_SURROUND_RIGHT = 0x00000020;
e.FMOD_CHANNELMASK_BACK_LEFT = 0x00000040;
e.FMOD_CHANNELMASK_BACK_RIGHT = 0x00000080;
e.FMOD_CHANNELMASK_BACK_CENTER = 0x00000100;
e.FMOD_CHANNELMASK_MONO = (e.FMOD_CHANNELMASK_FRONT_LEFT);
e.FMOD_CHANNELMASK_STEREO = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT);
e.FMOD_CHANNELMASK_LRC = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT | e.FMOD_CHANNELMASK_FRONT_CENTER);
e.FMOD_CHANNELMASK_QUAD = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT | e.FMOD_CHANNELMASK_SURROUND_LEFT | e.FMOD_CHANNELMASK_SURROUND_RIGHT);
e.FMOD_CHANNELMASK_SURROUND = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT | e.FMOD_CHANNELMASK_FRONT_CENTER | e.FMOD_CHANNELMASK_SURROUND_LEFT | e.FMOD_CHANNELMASK_SURROUND_RIGHT);
e.FMOD_CHANNELMASK_5POINT1 = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT | e.FMOD_CHANNELMASK_FRONT_CENTER | e.FMOD_CHANNELMASK_LOW_FREQUENCY | e.FMOD_CHANNELMASK_SURROUND_LEFT | e.FMOD_CHANNELMASK_SURROUND_RIGHT);
e.FMOD_CHANNELMASK_5POINT1_REARS = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT | e.FMOD_CHANNELMASK_FRONT_CENTER | e.FMOD_CHANNELMASK_LOW_FREQUENCY | e.FMOD_CHANNELMASK_BACK_LEFT | e.FMOD_CHANNELMASK_BACK_RIGHT);
e.FMOD_CHANNELMASK_7POINT0 = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT | e.FMOD_CHANNELMASK_FRONT_CENTER | e.FMOD_CHANNELMASK_SURROUND_LEFT | e.FMOD_CHANNELMASK_SURROUND_RIGHT | e.FMOD_CHANNELMASK_BACK_LEFT | e.FMOD_CHANNELMASK_BACK_RIGHT);
e.FMOD_CHANNELMASK_7POINT1 = (e.FMOD_CHANNELMASK_FRONT_LEFT | e.FMOD_CHANNELMASK_FRONT_RIGHT | e.FMOD_CHANNELMASK_FRONT_CENTER | e.FMOD_CHANNELMASK_LOW_FREQUENCY | e.FMOD_CHANNELMASK_SURROUND_LEFT | e.FMOD_CHANNELMASK_SURROUND_RIGHT | e.FMOD_CHANNELMASK_BACK_LEFT | e.FMOD_CHANNELMASK_BACK_RIGHT);
e.FMOD_PORT_INDEX_NONE = 0xFFFFFFFFFFFFFFFF;
e.FMOD_PORT_INDEX_FLAG_VR_CONTROLLER = 0x1000000000000000;
e.FMOD_THREAD_PRIORITY_PLATFORM_MIN = (-32 * 1024);
e.FMOD_THREAD_PRIORITY_PLATFORM_MAX = (32 * 1024);
e.FMOD_THREAD_PRIORITY_DEFAULT = (e.FMOD_THREAD_PRIORITY_PLATFORM_MIN - 1);
e.FMOD_THREAD_PRIORITY_LOW = (e.FMOD_THREAD_PRIORITY_PLATFORM_MIN - 2);
e.FMOD_THREAD_PRIORITY_MEDIUM = (e.FMOD_THREAD_PRIORITY_PLATFORM_MIN - 3);
e.FMOD_THREAD_PRIORITY_HIGH = (e.FMOD_THREAD_PRIORITY_PLATFORM_MIN - 4);
e.FMOD_THREAD_PRIORITY_VERY_HIGH = (e.FMOD_THREAD_PRIORITY_PLATFORM_MIN - 5);
e.FMOD_THREAD_PRIORITY_EXTREME = (e.FMOD_THREAD_PRIORITY_PLATFORM_MIN - 6);
e.FMOD_THREAD_PRIORITY_CRITICAL = (e.FMOD_THREAD_PRIORITY_PLATFORM_MIN - 7);
e.FMOD_THREAD_PRIORITY_MIXER = e.FMOD_THREAD_PRIORITY_EXTREME;
e.FMOD_THREAD_PRIORITY_FEEDER = e.FMOD_THREAD_PRIORITY_CRITICAL;
e.FMOD_THREAD_PRIORITY_STREAM = e.FMOD_THREAD_PRIORITY_VERY_HIGH;
e.FMOD_THREAD_PRIORITY_FILE = e.FMOD_THREAD_PRIORITY_HIGH;
e.FMOD_THREAD_PRIORITY_NONBLOCKING = e.FMOD_THREAD_PRIORITY_HIGH;
e.FMOD_THREAD_PRIORITY_RECORD = e.FMOD_THREAD_PRIORITY_HIGH;
e.FMOD_THREAD_PRIORITY_GEOMETRY = e.FMOD_THREAD_PRIORITY_LOW;
e.FMOD_THREAD_PRIORITY_PROFILER = e.FMOD_THREAD_PRIORITY_MEDIUM;
e.FMOD_THREAD_PRIORITY_STUDIO_UPDATE = e.FMOD_THREAD_PRIORITY_MEDIUM;
e.FMOD_THREAD_PRIORITY_STUDIO_LOAD_BANK = e.FMOD_THREAD_PRIORITY_MEDIUM;
e.FMOD_THREAD_PRIORITY_STUDIO_LOAD_SAMPLE = e.FMOD_THREAD_PRIORITY_MEDIUM;
e.FMOD_THREAD_PRIORITY_CONVOLUTION1 = e.FMOD_THREAD_PRIORITY_VERY_HIGH;
e.FMOD_THREAD_PRIORITY_CONVOLUTION2 = e.FMOD_THREAD_PRIORITY_VERY_HIGH;
e.FMOD_THREAD_STACK_SIZE_DEFAULT = 0;
e.FMOD_THREAD_STACK_SIZE_MIXER = (80 * 1024);
e.FMOD_THREAD_STACK_SIZE_FEEDER = (16 * 1024);
e.FMOD_THREAD_STACK_SIZE_STREAM = (96 * 1024);
e.FMOD_THREAD_STACK_SIZE_FILE = (64 * 1024);
e.FMOD_THREAD_STACK_SIZE_NONBLOCKING = (112 * 1024);
e.FMOD_THREAD_STACK_SIZE_RECORD = (16 * 1024);
e.FMOD_THREAD_STACK_SIZE_GEOMETRY = (48 * 1024);
e.FMOD_THREAD_STACK_SIZE_PROFILER = (128 * 1024);
e.FMOD_THREAD_STACK_SIZE_STUDIO_UPDATE = (96 * 1024);
e.FMOD_THREAD_STACK_SIZE_STUDIO_LOAD_BANK = (96 * 1024);
e.FMOD_THREAD_STACK_SIZE_STUDIO_LOAD_SAMPLE = (96 * 1024);
e.FMOD_THREAD_STACK_SIZE_CONVOLUTION1 = (16 * 1024);
e.FMOD_THREAD_STACK_SIZE_CONVOLUTION2 = (16 * 1024);
e.FMOD_THREAD_AFFINITY_GROUP_DEFAULT = 0x4000000000000000;
e.FMOD_THREAD_AFFINITY_GROUP_A = 0x4000000000000001;
e.FMOD_THREAD_AFFINITY_GROUP_B = 0x4000000000000002;
e.FMOD_THREAD_AFFINITY_GROUP_C = 0x4000000000000003;
e.FMOD_THREAD_AFFINITY_MIXER = e.FMOD_THREAD_AFFINITY_GROUP_A;
e.FMOD_THREAD_AFFINITY_FEEDER = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_STREAM = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_FILE = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_NONBLOCKING = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_RECORD = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_GEOMETRY = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_PROFILER = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_STUDIO_UPDATE = e.FMOD_THREAD_AFFINITY_GROUP_B;
e.FMOD_THREAD_AFFINITY_STUDIO_LOAD_BANK = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_STUDIO_LOAD_SAMPLE = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_CONVOLUTION1 = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_CONVOLUTION2 = e.FMOD_THREAD_AFFINITY_GROUP_C;
e.FMOD_THREAD_AFFINITY_CORE_ALL = 0;
e.FMOD_THREAD_AFFINITY_CORE_0 = (1 << 0);
e.FMOD_THREAD_AFFINITY_CORE_1 = (1 << 1);
e.FMOD_THREAD_AFFINITY_CORE_2 = (1 << 2);
e.FMOD_THREAD_AFFINITY_CORE_3 = (1 << 3);
e.FMOD_THREAD_AFFINITY_CORE_4 = (1 << 4);
e.FMOD_THREAD_AFFINITY_CORE_5 = (1 << 5);
e.FMOD_THREAD_AFFINITY_CORE_6 = (1 << 6);
e.FMOD_THREAD_AFFINITY_CORE_7 = (1 << 7);
e.FMOD_THREAD_AFFINITY_CORE_8 = (1 << 8);
e.FMOD_THREAD_AFFINITY_CORE_9 = (1 << 9);
e.FMOD_THREAD_AFFINITY_CORE_10 = (1 << 10);
e.FMOD_THREAD_AFFINITY_CORE_11 = (1 << 11);
e.FMOD_THREAD_AFFINITY_CORE_12 = (1 << 12);
e.FMOD_THREAD_AFFINITY_CORE_13 = (1 << 13);
e.FMOD_THREAD_AFFINITY_CORE_14 = (1 << 14);
e.FMOD_THREAD_AFFINITY_CORE_15 = (1 << 15);
e.FMOD_PRESET_OFF = [1000, 7, 11, 5000, 100, 100, 100, 250, 0, 20, 96, -80.0];
e.FMOD_PRESET_GENERIC = [1500, 7, 11, 5000, 83, 100, 100, 250, 0, 14500, 96, -8.0];
e.FMOD_PRESET_PADDEDCELL = [170, 1, 2, 5000, 10, 100, 100, 250, 0, 160, 84, -7.8];
e.FMOD_PRESET_ROOM = [400, 2, 3, 5000, 83, 100, 100, 250, 0, 6050, 88, -9.4];
e.FMOD_PRESET_BATHROOM = [1500, 7, 11, 5000, 54, 100, 60, 250, 0, 2900, 83, 0.5];
e.FMOD_PRESET_LIVINGROOM = [500, 3, 4, 5000, 10, 100, 100, 250, 0, 160, 58, -19.0];
e.FMOD_PRESET_STONEROOM = [2300, 12, 17, 5000, 64, 100, 100, 250, 0, 7800, 71, -8.5];
e.FMOD_PRESET_AUDITORIUM = [4300, 20, 30, 5000, 59, 100, 100, 250, 0, 5850, 64, -11.7];
e.FMOD_PRESET_CONCERTHALL = [3900, 20, 29, 5000, 70, 100, 100, 250, 0, 5650, 80, -9.8];
e.FMOD_PRESET_CAVE = [2900, 15, 22, 5000, 100, 100, 100, 250, 0, 20000, 59, -11.3];
e.FMOD_PRESET_ARENA = [7200, 20, 30, 5000, 33, 100, 100, 250, 0, 4500, 80, -9.6];
e.FMOD_PRESET_HANGAR = [10000, 20, 30, 5000, 23, 100, 100, 250, 0, 3400, 72, -7.4];
e.FMOD_PRESET_CARPETTEDHALLWAY = [300, 2, 30, 5000, 10, 100, 100, 250, 0, 500, 56, -24.0];
e.FMOD_PRESET_HALLWAY = [1500, 7, 11, 5000, 59, 100, 100, 250, 0, 7800, 87, -5.5];
e.FMOD_PRESET_STONECORRIDOR = [270, 13, 20, 5000, 79, 100, 100, 250, 0, 9000, 86, -6.0];
e.FMOD_PRESET_ALLEY = [1500, 7, 11, 5000, 86, 100, 100, 250, 0, 8300, 80, -9.8];
e.FMOD_PRESET_FOREST = [1500, 162, 88, 5000, 54, 79, 100, 250, 0, 760, 94, -12.3];
e.FMOD_PRESET_CITY = [1500, 7, 11, 5000, 67, 50, 100, 250, 0, 4050, 66, -26.0];
e.FMOD_PRESET_MOUNTAINS = [1500, 300, 100, 5000, 21, 27, 100, 250, 0, 1220, 82, -24.0];
e.FMOD_PRESET_QUARRY = [1500, 61, 25, 5000, 83, 100, 100, 250, 0, 3400, 100, -5.0];
e.FMOD_PRESET_PLAIN = [1500, 179, 100, 5000, 50, 21, 100, 250, 0, 1670, 65, -28.0];
e.FMOD_PRESET_PARKINGLOT = [1700, 8, 12, 5000, 100, 100, 100, 250, 0, 20000, 56, -19.5];
e.FMOD_PRESET_SEWERPIPE = [2800, 14, 21, 5000, 14, 80, 60, 250, 0, 3400, 66, 1.2];
e.FMOD_PRESET_UNDERWATER = [1500, 7, 11, 5000, 10, 100, 100, 250, 0, 500, 92, 7.0];
e.FMOD_MAX_CHANNEL_WIDTH = 32;
e.FMOD_MAX_SYSTEMS = 8;
e.FMOD_MAX_LISTENERS = 8;
e.FMOD_REVERB_MAXINSTANCES = 4;
e.FMOD_THREAD_TYPE_MIXER = en(0);
e.FMOD_THREAD_TYPE_FEEDER = en();
e.FMOD_THREAD_TYPE_STREAM = en();
e.FMOD_THREAD_TYPE_FILE = en();
e.FMOD_THREAD_TYPE_NONBLOCKING = en();
e.FMOD_THREAD_TYPE_RECORD = en();
e.FMOD_THREAD_TYPE_GEOMETRY = en();
e.FMOD_THREAD_TYPE_PROFILER = en();
e.FMOD_THREAD_TYPE_STUDIO_UPDATE = en();
e.FMOD_THREAD_TYPE_STUDIO_LOAD_BANK = en();
e.FMOD_THREAD_TYPE_STUDIO_LOAD_SAMPLE = en();
e.FMOD_THREAD_TYPE_CONVOLUTION1 = en();
e.FMOD_THREAD_TYPE_CONVOLUTION2 = en();
e.FMOD_THREAD_TYPE_MAX = en();
e.FMOD_THREAD_TYPE_FORCEINT = en(65536);
e.FMOD_OK = en(0);
e.FMOD_ERR_BADCOMMAND = en();
e.FMOD_ERR_CHANNEL_ALLOC = en();
e.FMOD_ERR_CHANNEL_STOLEN = en();
e.FMOD_ERR_DMA = en();
e.FMOD_ERR_DSP_CONNECTION = en();
e.FMOD_ERR_DSP_DONTPROCESS = en();
e.FMOD_ERR_DSP_FORMAT = en();
e.FMOD_ERR_DSP_INUSE = en();
e.FMOD_ERR_DSP_NOTFOUND = en();
e.FMOD_ERR_DSP_RESERVED = en();
e.FMOD_ERR_DSP_SILENCE = en();
e.FMOD_ERR_DSP_TYPE = en();
e.FMOD_ERR_FILE_BAD = en();
e.FMOD_ERR_FILE_COULDNOTSEEK = en();
e.FMOD_ERR_FILE_DISKEJECTED = en();
e.FMOD_ERR_FILE_EOF = en();
e.FMOD_ERR_FILE_ENDOFDATA = en();
e.FMOD_ERR_FILE_NOTFOUND = en();
e.FMOD_ERR_FORMAT = en();
e.FMOD_ERR_HEADER_MISMATCH = en();
e.FMOD_ERR_HTTP = en();
e.FMOD_ERR_HTTP_ACCESS = en();
e.FMOD_ERR_HTTP_PROXY_AUTH = en();
e.FMOD_ERR_HTTP_SERVER_ERROR = en();
e.FMOD_ERR_HTTP_TIMEOUT = en();
e.FMOD_ERR_INITIALIZATION = en();
e.FMOD_ERR_INITIALIZED = en();
e.FMOD_ERR_INTERNAL = en();
e.FMOD_ERR_INVALID_FLOAT = en();
e.FMOD_ERR_INVALID_HANDLE = en();
e.FMOD_ERR_INVALID_PARAM = en();
e.FMOD_ERR_INVALID_POSITION = en();
e.FMOD_ERR_INVALID_SPEAKER = en();
e.FMOD_ERR_INVALID_SYNCPOINT = en();
e.FMOD_ERR_INVALID_THREAD = en();
e.FMOD_ERR_INVALID_VECTOR = en();
e.FMOD_ERR_MAXAUDIBLE = en();
e.FMOD_ERR_MEMORY = en();
e.FMOD_ERR_MEMORY_CANTPOINT = en();
e.FMOD_ERR_NEEDS3D = en();
e.FMOD_ERR_NEEDSHARDWARE = en();
e.FMOD_ERR_NET_CONNECT = en();
e.FMOD_ERR_NET_SOCKET_ERROR = en();
e.FMOD_ERR_NET_URL = en();
e.FMOD_ERR_NET_WOULD_BLOCK = en();
e.FMOD_ERR_NOTREADY = en();
e.FMOD_ERR_OUTPUT_ALLOCATED = en();
e.FMOD_ERR_OUTPUT_CREATEBUFFER = en();
e.FMOD_ERR_OUTPUT_DRIVERCALL = en();
e.FMOD_ERR_OUTPUT_FORMAT = en();
e.FMOD_ERR_OUTPUT_INIT = en();
e.FMOD_ERR_OUTPUT_NODRIVERS = en();
e.FMOD_ERR_PLUGIN = en();
e.FMOD_ERR_PLUGIN_MISSING = en();
e.FMOD_ERR_PLUGIN_RESOURCE = en();
e.FMOD_ERR_PLUGIN_VERSION = en();
e.FMOD_ERR_RECORD = en();
e.FMOD_ERR_REVERB_CHANNELGROUP = en();
e.FMOD_ERR_REVERB_INSTANCE = en();
e.FMOD_ERR_SUBSOUNDS = en();
e.FMOD_ERR_SUBSOUND_ALLOCATED = en();
e.FMOD_ERR_SUBSOUND_CANTMOVE = en();
e.FMOD_ERR_TAGNOTFOUND = en();
e.FMOD_ERR_TOOMANYCHANNELS = en();
e.FMOD_ERR_TRUNCATED = en();
e.FMOD_ERR_UNIMPLEMENTED = en();
e.FMOD_ERR_UNINITIALIZED = en();
e.FMOD_ERR_UNSUPPORTED = en();
e.FMOD_ERR_VERSION = en();
e.FMOD_ERR_EVENT_ALREADY_LOADED = en();
e.FMOD_ERR_EVENT_LIVEUPDATE_BUSY = en();
e.FMOD_ERR_EVENT_LIVEUPDATE_MISMATCH = en();
e.FMOD_ERR_EVENT_LIVEUPDATE_TIMEOUT = en();
e.FMOD_ERR_EVENT_NOTFOUND = en();
e.FMOD_ERR_STUDIO_UNINITIALIZED = en();
e.FMOD_ERR_STUDIO_NOT_LOADED = en();
e.FMOD_ERR_INVALID_STRING = en();
e.FMOD_ERR_ALREADY_LOCKED = en();
e.FMOD_ERR_NOT_LOCKED = en();
e.FMOD_ERR_RECORD_DISCONNECTED = en();
e.FMOD_ERR_TOOMANYSAMPLES = en();
e.FMOD_RESULT_FORCEINT = en(65536);
e.FMOD_CHANNELCONTROL_CHANNEL = en(0);
e.FMOD_CHANNELCONTROL_CHANNELGROUP = en();
e.FMOD_CHANNELCONTROL_MAX = en();
e.FMOD_CHANNELCONTROL_FORCEINT = en(65536);
e.FMOD_OUTPUTTYPE_AUTODETECT = en(0);
e.FMOD_OUTPUTTYPE_UNKNOWN = en();
e.FMOD_OUTPUTTYPE_NOSOUND = en();
e.FMOD_OUTPUTTYPE_WAVWRITER = en();
e.FMOD_OUTPUTTYPE_NOSOUND_NRT = en();
e.FMOD_OUTPUTTYPE_WAVWRITER_NRT = en();
e.FMOD_OUTPUTTYPE_WASAPI = en();
e.FMOD_OUTPUTTYPE_ASIO = en();
e.FMOD_OUTPUTTYPE_PULSEAUDIO = en();
e.FMOD_OUTPUTTYPE_ALSA = en();
e.FMOD_OUTPUTTYPE_COREAUDIO = en();
e.FMOD_OUTPUTTYPE_AUDIOTRACK = en();
e.FMOD_OUTPUTTYPE_OPENSL = en();
e.FMOD_OUTPUTTYPE_AUDIOOUT = en();
e.FMOD_OUTPUTTYPE_AUDIO3D = en();
e.FMOD_OUTPUTTYPE_WEBAUDIO = en();
e.FMOD_OUTPUTTYPE_NNAUDIO = en();
e.FMOD_OUTPUTTYPE_WINSONIC = en();
e.FMOD_OUTPUTTYPE_AAUDIO = en();
e.FMOD_OUTPUTTYPE_AUDIOWORKLET = en();
e.FMOD_OUTPUTTYPE_MAX = en();
e.FMOD_OUTPUTTYPE_FORCEINT = en(65536);
e.FMOD_DEBUG_MODE_TTY = en(0);
e.FMOD_DEBUG_MODE_FILE = en();
e.FMOD_DEBUG_MODE_CALLBACK = en();
e.FMOD_DEBUG_MODE_FORCEINT = en(65536);
e.FMOD_SPEAKERMODE_DEFAULT = en(0);
e.FMOD_SPEAKERMODE_RAW = en();
e.FMOD_SPEAKERMODE_MONO = en();
e.FMOD_SPEAKERMODE_STEREO = en();
e.FMOD_SPEAKERMODE_QUAD = en();
e.FMOD_SPEAKERMODE_SURROUND = en();
e.FMOD_SPEAKERMODE_5POINT1 = en();
e.FMOD_SPEAKERMODE_7POINT1 = en();
e.FMOD_SPEAKERMODE_7POINT1POINT4 = en();
e.FMOD_SPEAKERMODE_MAX = en();
e.FMOD_SPEAKERMODE_FORCEINT = en(65536);
e.FMOD_SPEAKER_NONE = en(-1);
e.FMOD_SPEAKER_FRONT_LEFT = en(0);
e.FMOD_SPEAKER_FRONT_RIGHT = en();
e.FMOD_SPEAKER_FRONT_CENTER = en();
e.FMOD_SPEAKER_LOW_FREQUENCY = en();
e.FMOD_SPEAKER_SURROUND_LEFT = en();
e.FMOD_SPEAKER_SURROUND_RIGHT = en();
e.FMOD_SPEAKER_BACK_LEFT = en();
e.FMOD_SPEAKER_BACK_RIGHT = en();
e.FMOD_SPEAKER_TOP_FRONT_LEFT = en();
e.FMOD_SPEAKER_TOP_FRONT_RIGHT = en();
e.FMOD_SPEAKER_TOP_BACK_LEFT = en();
e.FMOD_SPEAKER_TOP_BACK_RIGHT = en();
e.FMOD_SPEAKER_MAX = en();
e.FMOD_SPEAKER_FORCEINT = en(65536);
e.FMOD_CHANNELORDER_DEFAULT = en(0);
e.FMOD_CHANNELORDER_WAVEFORMAT = en();
e.FMOD_CHANNELORDER_PROTOOLS = en();
e.FMOD_CHANNELORDER_ALLMONO = en();
e.FMOD_CHANNELORDER_ALLSTEREO = en();
e.FMOD_CHANNELORDER_ALSA = en();
e.FMOD_CHANNELORDER_MAX = en();
e.FMOD_CHANNELORDER_FORCEINT = en(65536);
e.FMOD_PLUGINTYPE_OUTPUT = en(0);
e.FMOD_PLUGINTYPE_CODEC = en();
e.FMOD_PLUGINTYPE_DSP = en();
e.FMOD_PLUGINTYPE_MAX = en();
e.FMOD_PLUGINTYPE_FORCEINT = en(65536);
e.FMOD_SOUND_TYPE_UNKNOWN = en(0);
e.FMOD_SOUND_TYPE_AIFF = en();
e.FMOD_SOUND_TYPE_ASF = en();
e.FMOD_SOUND_TYPE_DLS = en();
e.FMOD_SOUND_TYPE_FLAC = en();
e.FMOD_SOUND_TYPE_FSB = en();
e.FMOD_SOUND_TYPE_IT = en();
e.FMOD_SOUND_TYPE_MIDI = en();
e.FMOD_SOUND_TYPE_MOD = en();
e.FMOD_SOUND_TYPE_MPEG = en();
e.FMOD_SOUND_TYPE_OGGVORBIS = en();
e.FMOD_SOUND_TYPE_PLAYLIST = en();
e.FMOD_SOUND_TYPE_RAW = en();
e.FMOD_SOUND_TYPE_S3M = en();
e.FMOD_SOUND_TYPE_USER = en();
e.FMOD_SOUND_TYPE_WAV = en();
e.FMOD_SOUND_TYPE_XM = en();
e.FMOD_SOUND_TYPE_XMA = en();
e.FMOD_SOUND_TYPE_AUDIOQUEUE = en();
e.FMOD_SOUND_TYPE_AT9 = en();
e.FMOD_SOUND_TYPE_VORBIS = en();
e.FMOD_SOUND_TYPE_MEDIA_FOUNDATION = en();
e.FMOD_SOUND_TYPE_MEDIACODEC = en();
e.FMOD_SOUND_TYPE_FADPCM = en();
e.FMOD_SOUND_TYPE_OPUS = en();
e.FMOD_SOUND_TYPE_MAX = en();
e.FMOD_SOUND_TYPE_FORCEINT = en(65536);
e.FMOD_SOUND_FORMAT_NONE = en(0);
e.FMOD_SOUND_FORMAT_PCM8 = en();
e.FMOD_SOUND_FORMAT_PCM16 = en();
e.FMOD_SOUND_FORMAT_PCM24 = en();
e.FMOD_SOUND_FORMAT_PCM32 = en();
e.FMOD_SOUND_FORMAT_PCMFLOAT = en();
e.FMOD_SOUND_FORMAT_BITSTREAM = en();
e.FMOD_SOUND_FORMAT_MAX = en();
e.FMOD_SOUND_FORMAT_FORCEINT = en(65536);
e.FMOD_OPENSTATE_READY = en(0);
e.FMOD_OPENSTATE_LOADING = en();
e.FMOD_OPENSTATE_ERROR = en();
e.FMOD_OPENSTATE_CONNECTING = en();
e.FMOD_OPENSTATE_BUFFERING = en();
e.FMOD_OPENSTATE_SEEKING = en();
e.FMOD_OPENSTATE_PLAYING = en();
e.FMOD_OPENSTATE_SETPOSITION = en();
e.FMOD_OPENSTATE_MAX = en();
e.FMOD_OPENSTATE_FORCEINT = en(65536);
e.FMOD_SOUNDGROUP_BEHAVIOR_FAIL = en(0);
e.FMOD_SOUNDGROUP_BEHAVIOR_MUTE = en();
e.FMOD_SOUNDGROUP_BEHAVIOR_STEALLOWEST = en();
e.FMOD_SOUNDGROUP_BEHAVIOR_MAX = en();
e.FMOD_SOUNDGROUP_BEHAVIOR_FORCEINT = en(65536);
e.FMOD_CHANNELCONTROL_CALLBACK_END = en(0);
e.FMOD_CHANNELCONTROL_CALLBACK_VIRTUALVOICE = en();
e.FMOD_CHANNELCONTROL_CALLBACK_SYNCPOINT = en();
e.FMOD_CHANNELCONTROL_CALLBACK_OCCLUSION = en();
e.FMOD_CHANNELCONTROL_CALLBACK_MAX = en();
e.FMOD_CHANNELCONTROL_CALLBACK_FORCEINT = en(65536);
e.FMOD_CHANNELCONTROL_DSP_HEAD = en(-1);
e.FMOD_CHANNELCONTROL_DSP_FADER = en(-2);
e.FMOD_CHANNELCONTROL_DSP_TAIL = en(-3);
e.FMOD_CHANNELCONTROL_DSP_FORCEINT = en(65536);
e.FMOD_ERRORCALLBACK_INSTANCETYPE_NONE = en(0);
e.FMOD_ERRORCALLBACK_INSTANCETYPE_SYSTEM = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_CHANNEL = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_CHANNELGROUP = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_CHANNELCONTROL = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_SOUND = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_SOUNDGROUP = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_DSP = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_DSPCONNECTION = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_GEOMETRY = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_REVERB3D = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_SYSTEM = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_EVENTDESCRIPTION = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_EVENTINSTANCE = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_PARAMETERINSTANCE = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_BUS = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_VCA = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_BANK = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_COMMANDREPLAY = en();
e.FMOD_ERRORCALLBACK_INSTANCETYPE_FORCEINT = en(65536);
e.FMOD_DSP_RESAMPLER_DEFAULT = en(0);
e.FMOD_DSP_RESAMPLER_NOINTERP = en();
e.FMOD_DSP_RESAMPLER_LINEAR = en();
e.FMOD_DSP_RESAMPLER_CUBIC = en();
e.FMOD_DSP_RESAMPLER_SPLINE = en();
e.FMOD_DSP_RESAMPLER_MAX = en();
e.FMOD_DSP_RESAMPLER_FORCEINT = en(65536);
e.FMOD_DSPCONNECTION_TYPE_STANDARD = en(0);
e.FMOD_DSPCONNECTION_TYPE_SIDECHAIN = en();
e.FMOD_DSPCONNECTION_TYPE_SEND = en();
e.FMOD_DSPCONNECTION_TYPE_SEND_SIDECHAIN = en();
e.FMOD_DSPCONNECTION_TYPE_MAX = en();
e.FMOD_DSPCONNECTION_TYPE_FORCEINT = en(65536);
e.FMOD_TAGTYPE_UNKNOWN = en(0);
e.FMOD_TAGTYPE_ID3V1 = en();
e.FMOD_TAGTYPE_ID3V2 = en();
e.FMOD_TAGTYPE_VORBISCOMMENT = en();
e.FMOD_TAGTYPE_SHOUTCAST = en();
e.FMOD_TAGTYPE_ICECAST = en();
e.FMOD_TAGTYPE_ASF = en();
e.FMOD_TAGTYPE_MIDI = en();
e.FMOD_TAGTYPE_PLAYLIST = en();
e.FMOD_TAGTYPE_FMOD = en();
e.FMOD_TAGTYPE_USER = en();
e.FMOD_TAGTYPE_MAX = en();
e.FMOD_TAGTYPE_FORCEINT = en(65536);
e.FMOD_TAGDATATYPE_BINARY = en(0);
e.FMOD_TAGDATATYPE_INT = en();
e.FMOD_TAGDATATYPE_FLOAT = en();
e.FMOD_TAGDATATYPE_STRING = en();
e.FMOD_TAGDATATYPE_STRING_UTF16 = en();
e.FMOD_TAGDATATYPE_STRING_UTF16BE = en();
e.FMOD_TAGDATATYPE_STRING_UTF8 = en();
e.FMOD_TAGDATATYPE_MAX = en();
e.FMOD_TAGDATATYPE_FORCEINT = en(65536);
e.FMOD_PORT_TYPE_MUSIC = en(0);
e.FMOD_PORT_TYPE_COPYRIGHT_MUSIC = en();
e.FMOD_PORT_TYPE_VOICE = en();
e.FMOD_PORT_TYPE_CONTROLLER = en();
e.FMOD_PORT_TYPE_PERSONAL = en();
e.FMOD_PORT_TYPE_VIBRATION = en();
e.FMOD_PORT_TYPE_AUX = en();
e.FMOD_PORT_TYPE_MAX = en();
e.FMOD_PORT_TYPE_FORCEINT = en(65536);
e.FMOD_DEBUG_CALLBACK = Func('int', ['int', 'string', 'int', 'string', 'string']);
e.FMOD_SYSTEM_CALLBACK = Func('int', ['void*', 'Uint', 'void*', 'void*', 'void*']);
e.FMOD_CHANNELCONTROL_CALLBACK = Func('int', ['void*', 'int', 'int', 'void*', 'void*']);
e.FMOD_SOUND_NONBLOCK_CALLBACK = Func('int', ['void*', 'int']);
e.FMOD_SOUND_PCMREAD_CALLBACK = Func('int', ['void*', 'void*', 'Uint']);
e.FMOD_SOUND_PCMSETPOS_CALLBACK = Func('int', ['void*', 'int', 'Uint', 'Uint']);
e.FMOD_FILE_OPEN_CALLBACK = Func('int', ['string', 'Uint*', 'void**', 'void*']);
e.FMOD_FILE_CLOSE_CALLBACK = Func('int', ['void*', 'void*']);
e.FMOD_FILE_READ_CALLBACK = Func('int', ['void*', 'void*', 'Uint', 'Uint*', 'void*']);
e.FMOD_FILE_SEEK_CALLBACK = Func('int', ['void*', 'Uint', 'void*']);
e.FMOD_FILE_ASYNCREAD_CALLBACK = Func('int', ['void*', 'void*']);
e.FMOD_FILE_ASYNCCANCEL_CALLBACK = Func('int', ['void*', 'void*']);
e.FMOD_FILE_ASYNCDONE_FUNC = Func('void', ['void*', 'int']);
e.FMOD_MEMORY_ALLOC_CALLBACK = Func('void*', ['Uint', 'Uint', 'string']);
e.FMOD_MEMORY_REALLOC_CALLBACK = Func('void*', ['void*', 'Uint', 'Uint', 'string']);
e.FMOD_MEMORY_FREE_CALLBACK = Func('void', ['void*', 'Uint', 'string']);
e.FMOD_3D_ROLLOFF_CALLBACK = Func('float', ['void*', 'float']);
e.FMOD_ASYNCREADINFO = Struct({
handle: 'void*',
offset: 'Uint',
sizebytes: 'Uint',
priority: 'int',
userdata: 'void*',
buffer: 'void*',
bytesread: 'Uint',
done: e.FMOD_FILE_ASYNCDONE_FUNC
});
e.FMOD_VECTOR = Struct({
x: 'float',
y: 'float',
z: 'float'
});
e.FMOD_3D_ATTRIBUTES = Struct({
position: e.FMOD_VECTOR,
velocity: e.FMOD_VECTOR,
forward: e.FMOD_VECTOR,
up: e.FMOD_VECTOR
});
e.FMOD_GUID = Struct({
Data1: 'Uint',
Data2: 'Ushort',
Data3: 'Ushort',
Data4: ArrayType('Uchar', 8)
});
e.FMOD_PLUGINLIST = Struct({
type: 'int',
description: 'void*'
});
e.FMOD_ADVANCEDSETTINGS = Struct({
cbSize: 'int',
maxMPEGCodecs: 'int',
maxADPCMCodecs: 'int',
maxXMACodecs: 'int',
maxVorbisCodecs: 'int',
maxAT9Codecs: 'int',
maxFADPCMCodecs: 'int',
maxPCMCodecs: 'int',
ASIONumChannels: 'int',
ASIOChannelList: ref.refType('string'),
ASIOSpeakerList: 'int*',
vol0virtualvol: 'float',
defaultDecodeBufferSize: 'Uint',
profilePort: 'Ushort',
geometryMaxFadeTime: 'Uint',
distanceFilterCenterFreq: 'float',
reverb3Dinstance: 'int',
DSPBufferPoolSize: 'int',
resamplerMethod: 'int',
randomSeed: 'Uint',
maxConvolutionThreads: 'int',
maxOpusCodecs: 'int'
});
e.FMOD_TAG = Struct({
type: 'int',
datatype: 'int',
name: 'string',
data: 'void*',
datalen: 'Uint',
updated: 'int'
});
e.FMOD_CREATESOUNDEXINFO = Struct({
cbsize: 'int',
length: 'Uint',
fileoffset: 'Uint',
numchannels: 'int',
defaultfrequency: 'int',
format: 'int',
decodebuffersize: 'Uint',
initialsubsound: 'int',
numsubsounds: 'int',
inclusionlist: 'int*',
inclusionlistnum: 'int',
pcmreadcallback: e.FMOD_SOUND_PCMREAD_CALLBACK,
pcmsetposcallback: e.FMOD_SOUND_PCMSETPOS_CALLBACK,
nonblockcallback: e.FMOD_SOUND_NONBLOCK_CALLBACK,
dlsname: 'string',
encryptionkey: 'string',
maxpolyphony: 'int',
userdata: 'void*',
suggestedsoundtype: 'int',
fileuseropen: e.FMOD_FILE_OPEN_CALLBACK,
fileuserclose: e.FMOD_FILE_CLOSE_CALLBACK,
fileuserread: e.FMOD_FILE_READ_CALLBACK,
fileuserseek: e.FMOD_FILE_SEEK_CALLBACK,
fileuserasyncread: e.FMOD_FILE_ASYNCREAD_CALLBACK,
fileuserasynccancel: e.FMOD_FILE_ASYNCCANCEL_CALLBACK,
fileuserdata: 'void*',
filebuffersize: 'int',
channelorder: 'int',
initialsoundgroup: 'void*',
initialseekposition: 'Uint',
initialseekpostype: 'Uint',
ignoresetfilesystem: 'int',
audioqueuepolicy: 'Uint',
minmidigranularity: 'Uint',
nonblockthreadid: 'int',
fsbguid: ref.refType(e.FMOD_GUID)
});
e.FMOD_REVERB_PROPERTIES = Struct({
DecayTime: 'float',
EarlyDelay: 'float',
LateDelay: 'float',
HFReference: 'float',
HFDecayRatio: 'float',
Diffusion: 'float',
Density: 'float',
LowShelfFrequency: 'float',
LowShelfGain: 'float',
HighCut: 'float',
EarlyLateMix: 'float',
WetLevel: 'float'
});
e.FMOD_ERRORCALLBACK_INFO = Struct({
result: 'int',
instancetype: 'int',
instance: 'void*',
functionname: 'string',
functionparams: 'string'
});
e.FMOD_CPU_USAGE = Struct({
dsp: 'float',
stream: 'float',
geometry: 'float',
update: 'float',
convolution1: 'float',
convolution2: 'float'
});