gosu 0.7.45 → 0.7.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. data/COPYING +6 -11
  2. data/Gosu/{ButtonsWin.hpp → Buttons.hpp} +91 -4
  3. data/Gosu/ButtonsMac.hpp +91 -4
  4. data/Gosu/Graphics.hpp +10 -0
  5. data/Gosu/ImageData.hpp +1 -0
  6. data/Gosu/Input.hpp +2 -3
  7. data/Gosu/Version.hpp +2 -2
  8. data/Gosu/Window.hpp +1 -1
  9. data/GosuImpl/Audio/AudioToolboxFile.hpp +4 -0
  10. data/GosuImpl/Graphics/BitmapApple.mm +5 -11
  11. data/GosuImpl/Graphics/ClipRectStack.hpp +2 -2
  12. data/GosuImpl/Graphics/Common.hpp +1 -1
  13. data/GosuImpl/Graphics/DrawOpQueue.hpp +30 -29
  14. data/GosuImpl/Graphics/Graphics.cpp +2 -3
  15. data/GosuImpl/Graphics/TextMac.cpp +9 -5
  16. data/GosuImpl/Graphics/TextTouch.mm +8 -4
  17. data/GosuImpl/Graphics/Texture.cpp +4 -1
  18. data/GosuImpl/InputMac.mm +24 -45
  19. data/GosuImpl/InputX.cpp +25 -39
  20. data/GosuImpl/RubyGosu.swg +11 -0
  21. data/GosuImpl/RubyGosu_wrap.cxx +109 -40
  22. data/GosuImpl/RubyGosu_wrap.h +1 -1
  23. data/GosuImpl/TextInputWin.cpp +1 -1
  24. data/GosuImpl/TextInputX.cpp +3 -1
  25. data/GosuImpl/WinMain.cpp +3 -4
  26. data/GosuImpl/WindowMac.mm +83 -73
  27. data/GosuImpl/WindowWin.cpp +65 -58
  28. data/dependencies/libogg/AUTHORS +4 -0
  29. data/dependencies/libogg/CHANGES +70 -0
  30. data/dependencies/libogg/COPYING +28 -0
  31. data/dependencies/libogg/include/ogg/ogg.h +209 -0
  32. data/dependencies/libogg/include/ogg/os_types.h +147 -0
  33. data/dependencies/libogg/src/bitwise.c +857 -0
  34. data/dependencies/libogg/src/framing.c +2089 -0
  35. data/dependencies/libvorbis/AUTHORS +3 -0
  36. data/dependencies/libvorbis/CHANGES +126 -0
  37. data/dependencies/libvorbis/COPYING +28 -0
  38. data/dependencies/libvorbis/include/vorbis/codec.h +243 -0
  39. data/dependencies/libvorbis/include/vorbis/vorbisenc.h +436 -0
  40. data/dependencies/libvorbis/include/vorbis/vorbisfile.h +206 -0
  41. data/dependencies/libvorbis/lib/analysis.c +120 -0
  42. data/dependencies/libvorbis/lib/backends.h +144 -0
  43. data/dependencies/libvorbis/lib/barkmel.c +64 -0
  44. data/dependencies/libvorbis/lib/bitrate.c +253 -0
  45. data/dependencies/libvorbis/lib/bitrate.h +59 -0
  46. data/dependencies/libvorbis/lib/block.c +1046 -0
  47. data/dependencies/libvorbis/lib/books/coupled/res_books_51.h +12257 -0
  48. data/dependencies/libvorbis/lib/books/coupled/res_books_stereo.h +15783 -0
  49. data/dependencies/libvorbis/lib/books/floor/floor_books.h +1547 -0
  50. data/dependencies/libvorbis/lib/books/uncoupled/res_books_uncoupled.h +7758 -0
  51. data/dependencies/libvorbis/lib/codebook.c +479 -0
  52. data/dependencies/libvorbis/lib/codebook.h +119 -0
  53. data/dependencies/libvorbis/lib/codec_internal.h +167 -0
  54. data/dependencies/libvorbis/lib/envelope.c +375 -0
  55. data/dependencies/libvorbis/lib/envelope.h +80 -0
  56. data/dependencies/libvorbis/lib/floor0.c +222 -0
  57. data/dependencies/libvorbis/lib/floor1.c +1099 -0
  58. data/dependencies/libvorbis/lib/highlevel.h +58 -0
  59. data/dependencies/libvorbis/lib/info.c +664 -0
  60. data/dependencies/libvorbis/lib/lookup.c +94 -0
  61. data/dependencies/libvorbis/lib/lookup.h +32 -0
  62. data/dependencies/libvorbis/lib/lookup_data.h +192 -0
  63. data/dependencies/libvorbis/lib/lpc.c +160 -0
  64. data/dependencies/libvorbis/lib/lpc.h +29 -0
  65. data/dependencies/libvorbis/lib/lsp.c +456 -0
  66. data/dependencies/libvorbis/lib/lsp.h +28 -0
  67. data/dependencies/libvorbis/lib/mapping0.c +816 -0
  68. data/dependencies/libvorbis/lib/masking.h +785 -0
  69. data/dependencies/libvorbis/lib/mdct.c +563 -0
  70. data/dependencies/libvorbis/lib/mdct.h +71 -0
  71. data/dependencies/libvorbis/lib/misc.h +57 -0
  72. data/dependencies/libvorbis/lib/modes/floor_all.h +260 -0
  73. data/dependencies/libvorbis/lib/modes/psych_11.h +51 -0
  74. data/dependencies/libvorbis/lib/modes/psych_16.h +133 -0
  75. data/dependencies/libvorbis/lib/modes/psych_44.h +642 -0
  76. data/dependencies/libvorbis/lib/modes/psych_8.h +101 -0
  77. data/dependencies/libvorbis/lib/modes/residue_16.h +163 -0
  78. data/dependencies/libvorbis/lib/modes/residue_44.h +292 -0
  79. data/dependencies/libvorbis/lib/modes/residue_44p51.h +451 -0
  80. data/dependencies/libvorbis/lib/modes/residue_44u.h +318 -0
  81. data/dependencies/libvorbis/lib/modes/residue_8.h +109 -0
  82. data/dependencies/libvorbis/lib/modes/setup_11.h +143 -0
  83. data/dependencies/libvorbis/lib/modes/setup_16.h +153 -0
  84. data/dependencies/libvorbis/lib/modes/setup_22.h +128 -0
  85. data/dependencies/libvorbis/lib/modes/setup_32.h +132 -0
  86. data/dependencies/libvorbis/lib/modes/setup_44.h +117 -0
  87. data/dependencies/libvorbis/lib/modes/setup_44p51.h +74 -0
  88. data/dependencies/libvorbis/lib/modes/setup_44u.h +74 -0
  89. data/dependencies/libvorbis/lib/modes/setup_8.h +149 -0
  90. data/dependencies/libvorbis/lib/modes/setup_X.h +225 -0
  91. data/dependencies/libvorbis/lib/os.h +186 -0
  92. data/dependencies/libvorbis/lib/psy.c +1203 -0
  93. data/dependencies/libvorbis/lib/psy.h +154 -0
  94. data/dependencies/libvorbis/lib/psytune.c +524 -0
  95. data/dependencies/libvorbis/lib/registry.c +45 -0
  96. data/dependencies/libvorbis/lib/registry.h +32 -0
  97. data/dependencies/libvorbis/lib/res0.c +889 -0
  98. data/dependencies/libvorbis/lib/scales.h +90 -0
  99. data/dependencies/libvorbis/lib/sharedbook.c +579 -0
  100. data/dependencies/libvorbis/lib/smallft.c +1255 -0
  101. data/dependencies/libvorbis/lib/smallft.h +34 -0
  102. data/dependencies/libvorbis/lib/synthesis.c +184 -0
  103. data/dependencies/libvorbis/lib/tone.c +54 -0
  104. data/dependencies/libvorbis/lib/vorbisenc.c +1215 -0
  105. data/dependencies/libvorbis/lib/vorbisfile.c +2337 -0
  106. data/dependencies/libvorbis/lib/window.c +2135 -0
  107. data/dependencies/libvorbis/lib/window.h +26 -0
  108. data/dependencies/ogg_vorbis.license +28 -0
  109. data/lib/gosu/swig_patches.rb +2 -2
  110. data/linux/extconf.rb +17 -3
  111. metadata +96 -17
  112. data/Gosu/ButtonsX.hpp +0 -141
  113. data/GosuImpl/Audio/AudioSDL.cpp +0 -315
@@ -0,0 +1,71 @@
1
+ /********************************************************************
2
+ * *
3
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
4
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
5
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
7
+ * *
8
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
9
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
10
+ * *
11
+ ********************************************************************
12
+
13
+ function: modified discrete cosine transform prototypes
14
+ last mod: $Id: mdct.h 16227 2009-07-08 06:58:46Z xiphmont $
15
+
16
+ ********************************************************************/
17
+
18
+ #ifndef _OGG_mdct_H_
19
+ #define _OGG_mdct_H_
20
+
21
+ #include "vorbis/codec.h"
22
+
23
+
24
+
25
+
26
+
27
+ /*#define MDCT_INTEGERIZED <- be warned there could be some hurt left here*/
28
+ #ifdef MDCT_INTEGERIZED
29
+
30
+ #define DATA_TYPE int
31
+ #define REG_TYPE register int
32
+ #define TRIGBITS 14
33
+ #define cPI3_8 6270
34
+ #define cPI2_8 11585
35
+ #define cPI1_8 15137
36
+
37
+ #define FLOAT_CONV(x) ((int)((x)*(1<<TRIGBITS)+.5))
38
+ #define MULT_NORM(x) ((x)>>TRIGBITS)
39
+ #define HALVE(x) ((x)>>1)
40
+
41
+ #else
42
+
43
+ #define DATA_TYPE float
44
+ #define REG_TYPE float
45
+ #define cPI3_8 .38268343236508977175F
46
+ #define cPI2_8 .70710678118654752441F
47
+ #define cPI1_8 .92387953251128675613F
48
+
49
+ #define FLOAT_CONV(x) (x)
50
+ #define MULT_NORM(x) (x)
51
+ #define HALVE(x) ((x)*.5f)
52
+
53
+ #endif
54
+
55
+
56
+ typedef struct {
57
+ int n;
58
+ int log2n;
59
+
60
+ DATA_TYPE *trig;
61
+ int *bitrev;
62
+
63
+ DATA_TYPE scale;
64
+ } mdct_lookup;
65
+
66
+ extern void mdct_init(mdct_lookup *lookup,int n);
67
+ extern void mdct_clear(mdct_lookup *l);
68
+ extern void mdct_forward(mdct_lookup *init, DATA_TYPE *in, DATA_TYPE *out);
69
+ extern void mdct_backward(mdct_lookup *init, DATA_TYPE *in, DATA_TYPE *out);
70
+
71
+ #endif
@@ -0,0 +1,57 @@
1
+ /********************************************************************
2
+ * *
3
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
4
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
5
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
7
+ * *
8
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
9
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
10
+ * *
11
+ ********************************************************************
12
+
13
+ function: miscellaneous prototypes
14
+ last mod: $Id: misc.h 16227 2009-07-08 06:58:46Z xiphmont $
15
+
16
+ ********************************************************************/
17
+
18
+ #ifndef _V_RANDOM_H_
19
+ #define _V_RANDOM_H_
20
+ #include "vorbis/codec.h"
21
+
22
+ extern void *_vorbis_block_alloc(vorbis_block *vb,long bytes);
23
+ extern void _vorbis_block_ripcord(vorbis_block *vb);
24
+
25
+ #ifdef ANALYSIS
26
+ extern int analysis_noisy;
27
+ extern void _analysis_output(char *base,int i,float *v,int n,int bark,int dB,
28
+ ogg_int64_t off);
29
+ extern void _analysis_output_always(char *base,int i,float *v,int n,int bark,int dB,
30
+ ogg_int64_t off);
31
+ #endif
32
+
33
+ #ifdef DEBUG_MALLOC
34
+
35
+ #define _VDBG_GRAPHFILE "malloc.m"
36
+ #undef _VDBG_GRAPHFILE
37
+ extern void *_VDBG_malloc(void *ptr,long bytes,char *file,long line);
38
+ extern void _VDBG_free(void *ptr,char *file,long line);
39
+
40
+ #ifndef MISC_C
41
+ #undef _ogg_malloc
42
+ #undef _ogg_calloc
43
+ #undef _ogg_realloc
44
+ #undef _ogg_free
45
+
46
+ #define _ogg_malloc(x) _VDBG_malloc(NULL,(x),__FILE__,__LINE__)
47
+ #define _ogg_calloc(x,y) _VDBG_malloc(NULL,(x)*(y),__FILE__,__LINE__)
48
+ #define _ogg_realloc(x,y) _VDBG_malloc((x),(y),__FILE__,__LINE__)
49
+ #define _ogg_free(x) _VDBG_free((x),__FILE__,__LINE__)
50
+ #endif
51
+ #endif
52
+
53
+ #endif
54
+
55
+
56
+
57
+
@@ -0,0 +1,260 @@
1
+ /********************************************************************
2
+ * *
3
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
4
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
5
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
7
+ * *
8
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
9
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
10
+ * *
11
+ ********************************************************************
12
+
13
+ function: key floor settings
14
+ last mod: $Id: floor_all.h 17050 2010-03-26 01:34:42Z xiphmont $
15
+
16
+ ********************************************************************/
17
+
18
+ #include "vorbis/codec.h"
19
+ #include "backends.h"
20
+ #include "books/floor/floor_books.h"
21
+
22
+ static const static_codebook*const _floor_128x4_books[]={
23
+ &_huff_book_line_128x4_class0,
24
+ &_huff_book_line_128x4_0sub0,
25
+ &_huff_book_line_128x4_0sub1,
26
+ &_huff_book_line_128x4_0sub2,
27
+ &_huff_book_line_128x4_0sub3,
28
+ };
29
+ static const static_codebook*const _floor_256x4_books[]={
30
+ &_huff_book_line_256x4_class0,
31
+ &_huff_book_line_256x4_0sub0,
32
+ &_huff_book_line_256x4_0sub1,
33
+ &_huff_book_line_256x4_0sub2,
34
+ &_huff_book_line_256x4_0sub3,
35
+ };
36
+ static const static_codebook*const _floor_128x7_books[]={
37
+ &_huff_book_line_128x7_class0,
38
+ &_huff_book_line_128x7_class1,
39
+
40
+ &_huff_book_line_128x7_0sub1,
41
+ &_huff_book_line_128x7_0sub2,
42
+ &_huff_book_line_128x7_0sub3,
43
+ &_huff_book_line_128x7_1sub1,
44
+ &_huff_book_line_128x7_1sub2,
45
+ &_huff_book_line_128x7_1sub3,
46
+ };
47
+ static const static_codebook*const _floor_256x7_books[]={
48
+ &_huff_book_line_256x7_class0,
49
+ &_huff_book_line_256x7_class1,
50
+
51
+ &_huff_book_line_256x7_0sub1,
52
+ &_huff_book_line_256x7_0sub2,
53
+ &_huff_book_line_256x7_0sub3,
54
+ &_huff_book_line_256x7_1sub1,
55
+ &_huff_book_line_256x7_1sub2,
56
+ &_huff_book_line_256x7_1sub3,
57
+ };
58
+ static const static_codebook*const _floor_128x11_books[]={
59
+ &_huff_book_line_128x11_class1,
60
+ &_huff_book_line_128x11_class2,
61
+ &_huff_book_line_128x11_class3,
62
+
63
+ &_huff_book_line_128x11_0sub0,
64
+ &_huff_book_line_128x11_1sub0,
65
+ &_huff_book_line_128x11_1sub1,
66
+ &_huff_book_line_128x11_2sub1,
67
+ &_huff_book_line_128x11_2sub2,
68
+ &_huff_book_line_128x11_2sub3,
69
+ &_huff_book_line_128x11_3sub1,
70
+ &_huff_book_line_128x11_3sub2,
71
+ &_huff_book_line_128x11_3sub3,
72
+ };
73
+ static const static_codebook*const _floor_128x17_books[]={
74
+ &_huff_book_line_128x17_class1,
75
+ &_huff_book_line_128x17_class2,
76
+ &_huff_book_line_128x17_class3,
77
+
78
+ &_huff_book_line_128x17_0sub0,
79
+ &_huff_book_line_128x17_1sub0,
80
+ &_huff_book_line_128x17_1sub1,
81
+ &_huff_book_line_128x17_2sub1,
82
+ &_huff_book_line_128x17_2sub2,
83
+ &_huff_book_line_128x17_2sub3,
84
+ &_huff_book_line_128x17_3sub1,
85
+ &_huff_book_line_128x17_3sub2,
86
+ &_huff_book_line_128x17_3sub3,
87
+ };
88
+ static const static_codebook*const _floor_256x4low_books[]={
89
+ &_huff_book_line_256x4low_class0,
90
+ &_huff_book_line_256x4low_0sub0,
91
+ &_huff_book_line_256x4low_0sub1,
92
+ &_huff_book_line_256x4low_0sub2,
93
+ &_huff_book_line_256x4low_0sub3,
94
+ };
95
+ static const static_codebook*const _floor_1024x27_books[]={
96
+ &_huff_book_line_1024x27_class1,
97
+ &_huff_book_line_1024x27_class2,
98
+ &_huff_book_line_1024x27_class3,
99
+ &_huff_book_line_1024x27_class4,
100
+
101
+ &_huff_book_line_1024x27_0sub0,
102
+ &_huff_book_line_1024x27_1sub0,
103
+ &_huff_book_line_1024x27_1sub1,
104
+ &_huff_book_line_1024x27_2sub0,
105
+ &_huff_book_line_1024x27_2sub1,
106
+ &_huff_book_line_1024x27_3sub1,
107
+ &_huff_book_line_1024x27_3sub2,
108
+ &_huff_book_line_1024x27_3sub3,
109
+ &_huff_book_line_1024x27_4sub1,
110
+ &_huff_book_line_1024x27_4sub2,
111
+ &_huff_book_line_1024x27_4sub3,
112
+ };
113
+ static const static_codebook*const _floor_2048x27_books[]={
114
+ &_huff_book_line_2048x27_class1,
115
+ &_huff_book_line_2048x27_class2,
116
+ &_huff_book_line_2048x27_class3,
117
+ &_huff_book_line_2048x27_class4,
118
+
119
+ &_huff_book_line_2048x27_0sub0,
120
+ &_huff_book_line_2048x27_1sub0,
121
+ &_huff_book_line_2048x27_1sub1,
122
+ &_huff_book_line_2048x27_2sub0,
123
+ &_huff_book_line_2048x27_2sub1,
124
+ &_huff_book_line_2048x27_3sub1,
125
+ &_huff_book_line_2048x27_3sub2,
126
+ &_huff_book_line_2048x27_3sub3,
127
+ &_huff_book_line_2048x27_4sub1,
128
+ &_huff_book_line_2048x27_4sub2,
129
+ &_huff_book_line_2048x27_4sub3,
130
+ };
131
+
132
+ static const static_codebook*const _floor_512x17_books[]={
133
+ &_huff_book_line_512x17_class1,
134
+ &_huff_book_line_512x17_class2,
135
+ &_huff_book_line_512x17_class3,
136
+
137
+ &_huff_book_line_512x17_0sub0,
138
+ &_huff_book_line_512x17_1sub0,
139
+ &_huff_book_line_512x17_1sub1,
140
+ &_huff_book_line_512x17_2sub1,
141
+ &_huff_book_line_512x17_2sub2,
142
+ &_huff_book_line_512x17_2sub3,
143
+ &_huff_book_line_512x17_3sub1,
144
+ &_huff_book_line_512x17_3sub2,
145
+ &_huff_book_line_512x17_3sub3,
146
+ };
147
+
148
+ static const static_codebook*const _floor_Xx0_books[]={
149
+ 0
150
+ };
151
+
152
+ static const static_codebook*const *const _floor_books[11]={
153
+ _floor_128x4_books,
154
+ _floor_256x4_books,
155
+ _floor_128x7_books,
156
+ _floor_256x7_books,
157
+ _floor_128x11_books,
158
+ _floor_128x17_books,
159
+ _floor_256x4low_books,
160
+ _floor_1024x27_books,
161
+ _floor_2048x27_books,
162
+ _floor_512x17_books,
163
+ _floor_Xx0_books,
164
+ };
165
+
166
+ static const vorbis_info_floor1 _floor[11]={
167
+ /* 0: 128 x 4 */
168
+ {
169
+ 1,{0},{4},{2},{0},
170
+ {{1,2,3,4}},
171
+ 4,{0,128, 33,8,16,70},
172
+
173
+ 60,30,500, 1.,18., 128
174
+ },
175
+ /* 1: 256 x 4 */
176
+ {
177
+ 1,{0},{4},{2},{0},
178
+ {{1,2,3,4}},
179
+ 4,{0,256, 66,16,32,140},
180
+
181
+ 60,30,500, 1.,18., 256
182
+ },
183
+ /* 2: 128 x 7 */
184
+ {
185
+ 2,{0,1},{3,4},{2,2},{0,1},
186
+ {{-1,2,3,4},{-1,5,6,7}},
187
+ 4,{0,128, 14,4,58, 2,8,28,90},
188
+
189
+ 60,30,500, 1.,18., 128
190
+ },
191
+ /* 3: 256 x 7 */
192
+ {
193
+ 2,{0,1},{3,4},{2,2},{0,1},
194
+ {{-1,2,3,4},{-1,5,6,7}},
195
+ 4,{0,256, 28,8,116, 4,16,56,180},
196
+
197
+ 60,30,500, 1.,18., 256
198
+ },
199
+ /* 4: 128 x 11 */
200
+ {
201
+ 4,{0,1,2,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
202
+ {{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
203
+
204
+ 2,{0,128, 8,33, 4,16,70, 2,6,12, 23,46,90},
205
+
206
+ 60,30,500, 1,18., 128
207
+ },
208
+ /* 5: 128 x 17 */
209
+ {
210
+ 6,{0,1,1,2,3,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
211
+ {{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
212
+ 2,{0,128, 12,46, 4,8,16, 23,33,70, 2,6,10, 14,19,28, 39,58,90},
213
+
214
+ 60,30,500, 1,18., 128
215
+ },
216
+ /* 6: 256 x 4 (low bitrate version) */
217
+ {
218
+ 1,{0},{4},{2},{0},
219
+ {{1,2,3,4}},
220
+ 4,{0,256, 66,16,32,140},
221
+
222
+ 60,30,500, 1.,18., 256
223
+ },
224
+ /* 7: 1024 x 27 */
225
+ {
226
+ 8,{0,1,2,2,3,3,4,4},{3,4,3,4,3},{0,1,1,2,2},{-1,0,1,2,3},
227
+ {{4},{5,6},{7,8},{-1,9,10,11},{-1,12,13,14}},
228
+ 2,{0,1024, 93,23,372, 6,46,186,750, 14,33,65, 130,260,556,
229
+ 3,10,18,28, 39,55,79,111, 158,220,312, 464,650,850},
230
+
231
+ 60,30,500, 3,18., 1024
232
+ },
233
+ /* 8: 2048 x 27 */
234
+ {
235
+ 8,{0,1,2,2,3,3,4,4},{3,4,3,4,3},{0,1,1,2,2},{-1,0,1,2,3},
236
+ {{4},{5,6},{7,8},{-1,9,10,11},{-1,12,13,14}},
237
+ 2,{0,2048, 186,46,744, 12,92,372,1500, 28,66,130, 260,520,1112,
238
+ 6,20,36,56, 78,110,158,222, 316,440,624, 928,1300,1700},
239
+
240
+ 60,30,500, 3,18., 2048
241
+ },
242
+ /* 9: 512 x 17 */
243
+ {
244
+ 6,{0,1,1,2,3,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
245
+ {{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
246
+ 2,{0,512, 46,186, 16,33,65, 93,130,278,
247
+ 7,23,39, 55,79,110, 156,232,360},
248
+
249
+ 60,30,500, 1,18., 512
250
+ },
251
+
252
+ /* 10: X x 0 (LFE floor; edge posts only) */
253
+ {
254
+ 0,{0}, {0},{0},{-1},
255
+ {{-1}},
256
+ 2,{0,12},
257
+ 60,30,500, 1.,18., 10
258
+ },
259
+
260
+ };
@@ -0,0 +1,51 @@
1
+ /********************************************************************
2
+ * *
3
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
4
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
5
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
7
+ * *
8
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
9
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
10
+ * *
11
+ ********************************************************************
12
+
13
+ function: 11kHz settings
14
+ last mod: $Id: psych_11.h 16227 2009-07-08 06:58:46Z xiphmont $
15
+
16
+ ********************************************************************/
17
+
18
+ static const double _psy_lowpass_11[3]={4.5,5.5,30.,};
19
+
20
+ static const att3 _psy_tone_masteratt_11[3]={
21
+ {{ 30, 25, 12}, 0, 0}, /* 0 */
22
+ {{ 30, 25, 12}, 0, 0}, /* 0 */
23
+ {{ 20, 0, -14}, 0, 0}, /* 0 */
24
+ };
25
+
26
+ static const vp_adjblock _vp_tonemask_adj_11[3]={
27
+ /* adjust for mode zero */
28
+ /* 63 125 250 500 1 2 4 8 16 */
29
+ {{-20,-20,-20,-20,-20,-16,-10, 0, 0, 0, 0,10, 2, 0,99,99,99}}, /* 0 */
30
+ {{-20,-20,-20,-20,-20,-16,-10, 0, 0, 0, 0, 5, 0, 0,99,99,99}}, /* 1 */
31
+ {{-20,-20,-20,-20,-20,-16,-10, 0, 0, 0, 0, 0, 0, 0,99,99,99}}, /* 2 */
32
+ };
33
+
34
+
35
+ static const noise3 _psy_noisebias_11[3]={
36
+ /* 63 125 250 500 1k 2k 4k 8k 16k*/
37
+ {{{-10,-10,-10,-10, -5, -5, -5, 0, 4, 10, 10, 12, 12, 12, 99, 99, 99},
38
+ {-15,-15,-15,-15,-10,-10, -5, 0, 0, 4, 4, 5, 5, 10, 99, 99, 99},
39
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10, -6, -8, -8, -6, -6, 99, 99, 99}}},
40
+
41
+ {{{-10,-10,-10,-10, -5, -5, -5, 0, 4, 10, 10, 12, 12, 12, 99, 99, 99},
42
+ {-15,-15,-15,-15,-10,-10, -5, -5, -5, 0, 0, 0, 0, 0, 99, 99, 99},
43
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10, -6, -8, -8, -6, -6, 99, 99, 99}}},
44
+
45
+ {{{-15,-15,-15,-15,-15,-12,-10, -8, 0, 2, 4, 4, 5, 5, 99, 99, 99},
46
+ {-30,-30,-30,-30,-26,-22,-20,-14,-12,-12,-10,-10,-10,-10, 99, 99, 99},
47
+ {-30,-30,-30,-30,-26,-26,-26,-26,-26,-26,-26,-26,-26,-24, 99, 99, 99}}},
48
+ };
49
+
50
+ static const double _noise_thresh_11[3]={ .3,.5,.5 };
51
+
@@ -0,0 +1,133 @@
1
+ /********************************************************************
2
+ * *
3
+ * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. *
4
+ * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS *
5
+ * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
6
+ * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
7
+ * *
8
+ * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2009 *
9
+ * by the Xiph.Org Foundation http://www.xiph.org/ *
10
+ * *
11
+ ********************************************************************
12
+
13
+ function: 16kHz settings
14
+ last mod: $Id: psych_16.h 16227 2009-07-08 06:58:46Z xiphmont $
15
+
16
+ ********************************************************************/
17
+
18
+ /* stereo mode by base quality level */
19
+ static const adj_stereo _psy_stereo_modes_16[4]={
20
+ /* 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */
21
+ {{ 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
22
+ { 6, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4},
23
+ { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 4, 4},
24
+ { 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99}},
25
+ {{ 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
26
+ { 6, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4},
27
+ { 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 4, 4, 4, 4, 4},
28
+ { 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99}},
29
+ {{ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
30
+ { 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3},
31
+ { 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4},
32
+ { 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99}},
33
+ {{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
34
+ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
35
+ { 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8},
36
+ { 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99}},
37
+ };
38
+
39
+ static const double _psy_lowpass_16[4]={6.5,8,30.,99.};
40
+
41
+ static const att3 _psy_tone_masteratt_16[4]={
42
+ {{ 30, 25, 12}, 0, 0}, /* 0 */
43
+ {{ 25, 22, 12}, 0, 0}, /* 0 */
44
+ {{ 20, 12, 0}, 0, 0}, /* 0 */
45
+ {{ 15, 0, -14}, 0, 0}, /* 0 */
46
+ };
47
+
48
+ static const vp_adjblock _vp_tonemask_adj_16[4]={
49
+ /* adjust for mode zero */
50
+ /* 63 125 250 500 1 2 4 8 16 */
51
+ {{-20,-20,-20,-20,-20,-16,-10, 0, 0, 0, 0,10, 0, 0, 0, 0, 0}}, /* 0 */
52
+ {{-20,-20,-20,-20,-20,-16,-10, 0, 0, 0, 0,10, 0, 0, 0, 0, 0}}, /* 1 */
53
+ {{-20,-20,-20,-20,-20,-16,-10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}}, /* 2 */
54
+ {{-30,-30,-30,-30,-30,-26,-20,-10, -5, 0, 0, 0, 0, 0, 0, 0, 0}}, /* 2 */
55
+ };
56
+
57
+
58
+ static const noise3 _psy_noisebias_16_short[4]={
59
+ /* 63 125 250 500 1k 2k 4k 8k 16k*/
60
+ {{{-15,-15,-15,-15,-15,-10,-10,-5, 4, 10, 10, 10, 10, 12, 12, 14, 20},
61
+ {-15,-15,-15,-15,-15,-10,-10, -5, 0, 0, 4, 5, 5, 6, 8, 8, 15},
62
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10, -6, -8, -8, -6, -6, -6, -6, -6}}},
63
+
64
+ {{{-15,-15,-15,-15,-15,-10,-10,-5, 4, 6, 6, 6, 6, 8, 10, 12, 20},
65
+ {-15,-15,-15,-15,-15,-15,-15,-10, -5, -5, -5, 4, 5, 6, 8, 8, 15},
66
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10,-10,-10,-10,-10,-10,-10,-10,-10}}},
67
+
68
+ {{{-15,-15,-15,-15,-15,-12,-10, -8, 0, 2, 4, 4, 5, 5, 5, 8, 12},
69
+ {-20,-20,-20,-20,-16,-12,-20,-14,-10,-10, -8, 0, 0, 0, 0, 2, 5},
70
+ {-30,-30,-30,-30,-26,-26,-26,-26,-26,-26,-26,-26,-26,-24,-20,-20,-20}}},
71
+
72
+ {{{-15,-15,-15,-15,-15,-12,-10, -8, -5, -5, -5, -5, -5, 0, 0, 0, 6},
73
+ {-30,-30,-30,-30,-26,-22,-20,-14,-12,-12,-10,-10,-10,-10,-10,-10, -6},
74
+ {-30,-30,-30,-30,-26,-26,-26,-26,-26,-26,-26,-26,-26,-24,-20,-20,-20}}},
75
+ };
76
+
77
+ static const noise3 _psy_noisebias_16_impulse[4]={
78
+ /* 63 125 250 500 1k 2k 4k 8k 16k*/
79
+ {{{-15,-15,-15,-15,-15,-10,-10,-5, 4, 10, 10, 10, 10, 12, 12, 14, 20},
80
+ {-15,-15,-15,-15,-15,-10,-10, -5, 0, 0, 4, 5, 5, 6, 8, 8, 15},
81
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10, -6, -8, -8, -6, -6, -6, -6, -6}}},
82
+
83
+ {{{-15,-15,-15,-15,-15,-10,-10,-5, 4, 4, 4, 4, 5, 5, 6, 8, 15},
84
+ {-15,-15,-15,-15,-15,-15,-15,-10, -5, -5, -5, 0, 0, 0, 0, 4, 10},
85
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10,-10,-10,-10,-10,-10,-10,-10,-10}}},
86
+
87
+ {{{-15,-15,-15,-15,-15,-12,-10, -8, 0, 0, 0, 0, 0, 0, 0, 4, 10},
88
+ {-20,-20,-20,-20,-16,-12,-20,-14,-10,-10,-10,-10,-10,-10,-10, -7, -5},
89
+ {-30,-30,-30,-30,-26,-26,-26,-26,-26,-26,-26,-26,-26,-24,-20,-20,-20}}},
90
+
91
+ {{{-15,-15,-15,-15,-15,-12,-10, -8, -5, -5, -5, -5, -5, 0, 0, 0, 6},
92
+ {-30,-30,-30,-30,-26,-22,-20,-18,-18,-18,-20,-20,-20,-20,-20,-20,-16},
93
+ {-30,-30,-30,-30,-26,-26,-26,-26,-26,-26,-26,-26,-26,-24,-20,-20,-20}}},
94
+ };
95
+
96
+ static const noise3 _psy_noisebias_16[4]={
97
+ /* 63 125 250 500 1k 2k 4k 8k 16k*/
98
+ {{{-10,-10,-10,-10, -5, -5, -5, 0, 4, 6, 8, 8, 10, 10, 10, 14, 20},
99
+ {-10,-10,-10,-10,-10, -5, -2, -2, 0, 0, 0, 4, 5, 6, 8, 8, 15},
100
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10, -6, -8, -8, -6, -6, -6, -6, -6}}},
101
+
102
+ {{{-10,-10,-10,-10, -5, -5, -5, 0, 4, 6, 6, 6, 6, 8, 10, 12, 20},
103
+ {-15,-15,-15,-15,-15,-10, -5, -5, 0, 0, 0, 4, 5, 6, 8, 8, 15},
104
+ {-30,-30,-30,-30,-30,-24,-20,-14,-10, -6, -8, -8, -6, -6, -6, -6, -6}}},
105
+
106
+ {{{-15,-15,-15,-15,-15,-12,-10, -8, 0, 2, 4, 4, 5, 5, 5, 8, 12},
107
+ {-20,-20,-20,-20,-16,-12,-20,-10, -5, -5, 0, 0, 0, 0, 0, 2, 5},
108
+ {-30,-30,-30,-30,-26,-26,-26,-26,-26,-26,-26,-26,-26,-24,-20,-20,-20}}},
109
+
110
+ {{{-15,-15,-15,-15,-15,-12,-10, -8, -5, -5, -5, -5, -5, 0, 0, 0, 6},
111
+ {-30,-30,-30,-30,-26,-22,-20,-14,-12,-12,-10,-10,-10,-10,-10,-10, -6},
112
+ {-30,-30,-30,-30,-26,-26,-26,-26,-26,-26,-26,-26,-26,-24,-20,-20,-20}}},
113
+ };
114
+
115
+ static const noiseguard _psy_noiseguards_16[4]={
116
+ {10,10,-1},
117
+ {10,10,-1},
118
+ {20,20,-1},
119
+ {20,20,-1},
120
+ };
121
+
122
+ static const double _noise_thresh_16[4]={ .3,.5,.5,.5 };
123
+
124
+ static const int _noise_start_16[3]={ 256,256,9999 };
125
+ static const int _noise_part_16[4]={ 8,8,8,8 };
126
+
127
+ static const int _psy_ath_floater_16[4]={
128
+ -100,-100,-100,-105,
129
+ };
130
+
131
+ static const int _psy_ath_abs_16[4]={
132
+ -130,-130,-130,-140,
133
+ };