]> gitweb.factorcode.org Git - factor.git/blob - basis/windows/directx/xapofx/xapofx.factor
fdbaef1fddc5f220ca89684dc48a7956861cdf83
[factor.git] / basis / windows / directx / xapofx / xapofx.factor
1 USING: alien.c-types alien.syntax classes.struct windows.com
2 windows.directx windows.ole32 windows.types ;
3 IN: windows.directx.xapofx
4
5 LIBRARY: xapofx
6
7 CONSTANT: FXEQ_MIN_FRAMERATE 22000
8 CONSTANT: FXEQ_MAX_FRAMERATE 48000
9
10 CONSTANT: FXEQ_MIN_FREQUENCY_CENTER       20.0
11 CONSTANT: FXEQ_MAX_FREQUENCY_CENTER       20000.0
12 CONSTANT: FXEQ_DEFAULT_FREQUENCY_CENTER_0 100.0
13 CONSTANT: FXEQ_DEFAULT_FREQUENCY_CENTER_1 800.0
14 CONSTANT: FXEQ_DEFAULT_FREQUENCY_CENTER_2 2000.0
15 CONSTANT: FXEQ_DEFAULT_FREQUENCY_CENTER_3 10000.0
16
17 CONSTANT: FXEQ_MIN_GAIN     0.126
18 CONSTANT: FXEQ_MAX_GAIN     7.94
19 CONSTANT: FXEQ_DEFAULT_GAIN 1.0
20
21 CONSTANT: FXEQ_MIN_BANDWIDTH     0.1
22 CONSTANT: FXEQ_MAX_BANDWIDTH     2.0
23 CONSTANT: FXEQ_DEFAULT_BANDWIDTH 1.0
24
25 CONSTANT: FXMASTERINGLIMITER_MIN_RELEASE     1
26 CONSTANT: FXMASTERINGLIMITER_MAX_RELEASE     20
27 CONSTANT: FXMASTERINGLIMITER_DEFAULT_RELEASE 6
28
29 CONSTANT: FXMASTERINGLIMITER_MIN_LOUDNESS     1
30 CONSTANT: FXMASTERINGLIMITER_MAX_LOUDNESS     1800
31 CONSTANT: FXMASTERINGLIMITER_DEFAULT_LOUDNESS 1000
32
33 CONSTANT: FXREVERB_MIN_DIFFUSION     0.0
34 CONSTANT: FXREVERB_MAX_DIFFUSION     1.0
35 CONSTANT: FXREVERB_DEFAULT_DIFFUSION 0.9
36
37 CONSTANT: FXREVERB_MIN_ROOMSIZE     0.0001
38 CONSTANT: FXREVERB_MAX_ROOMSIZE     1.0
39 CONSTANT: FXREVERB_DEFAULT_ROOMSIZE 0.6
40
41 CONSTANT: FXECHO_MIN_WETDRYMIX     0.0
42 CONSTANT: FXECHO_MAX_WETDRYMIX     1.0
43 CONSTANT: FXECHO_DEFAULT_WETDRYMIX 0.5
44
45 CONSTANT: FXECHO_MIN_FEEDBACK     0.0
46 CONSTANT: FXECHO_MAX_FEEDBACK     1.0
47 CONSTANT: FXECHO_DEFAULT_FEEDBACK 0.5
48
49 CONSTANT: FXECHO_MIN_DELAY     1.0
50 CONSTANT: FXECHO_MAX_DELAY     2000.0
51 CONSTANT: FXECHO_DEFAULT_DELAY 500.0
52
53 STRUCT: FXEQ_PARAMETERS
54     { FrequencyCenter0 float }
55     { Gain0            float }
56     { Bandwidth0       float }
57     { FrequencyCenter1 float }
58     { Gain1            float }
59     { Bandwidth1       float }
60     { FrequencyCenter2 float }
61     { Gain2            float }
62     { Bandwidth2       float }
63     { FrequencyCenter3 float }
64     { Gain3            float }
65     { Bandwidth3       float } ;
66
67 STRUCT: FXMASTERINGLIMITER_PARAMETERS
68     { Release  UINT32 }
69     { Loudness UINT32 } ;
70
71 STRUCT: FXREVERB_PARAMETERS
72     { Diffusion float }
73     { RoomSize  float } ;
74
75 STRUCT: FXECHO_PARAMETERS
76     { WetDryMix float }
77     { Feedback  float }
78     { Delay     float } ;
79
80 FUNCTION: HRESULT CreateFX ( REFCLSID clsid, IUnknown** pEffect ) ;