Chris@69
|
1 /* Copyright (c) 2016 Mark Harris, Jean-Marc Valin */
|
Chris@69
|
2 /*
|
Chris@69
|
3 Redistribution and use in source and binary forms, with or without
|
Chris@69
|
4 modification, are permitted provided that the following conditions
|
Chris@69
|
5 are met:
|
Chris@69
|
6
|
Chris@69
|
7 - Redistributions of source code must retain the above copyright
|
Chris@69
|
8 notice, this list of conditions and the following disclaimer.
|
Chris@69
|
9
|
Chris@69
|
10 - Redistributions in binary form must reproduce the above copyright
|
Chris@69
|
11 notice, this list of conditions and the following disclaimer in the
|
Chris@69
|
12 documentation and/or other materials provided with the distribution.
|
Chris@69
|
13
|
Chris@69
|
14 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
Chris@69
|
15 ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
Chris@69
|
16 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
Chris@69
|
17 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
|
Chris@69
|
18 OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
Chris@69
|
19 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
Chris@69
|
20 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
Chris@69
|
21 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
Chris@69
|
22 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
Chris@69
|
23 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
Chris@69
|
24 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
Chris@69
|
25 */
|
Chris@69
|
26
|
Chris@69
|
27
|
Chris@69
|
28 #ifdef HAVE_CONFIG_H
|
Chris@69
|
29 #include "config.h"
|
Chris@69
|
30 #endif
|
Chris@69
|
31
|
Chris@69
|
32 #include <stdio.h>
|
Chris@69
|
33 #include <stdlib.h>
|
Chris@69
|
34 #include <limits.h>
|
Chris@69
|
35 #include <stdint.h>
|
Chris@69
|
36 #include <math.h>
|
Chris@69
|
37 #include <string.h>
|
Chris@69
|
38 #include <assert.h>
|
Chris@69
|
39 #include "opus_multistream.h"
|
Chris@69
|
40 #include "opus.h"
|
Chris@69
|
41 #include "test_opus_common.h"
|
Chris@69
|
42
|
Chris@69
|
43
|
Chris@69
|
44 static int celt_ec_internal_error(void)
|
Chris@69
|
45 {
|
Chris@69
|
46 OpusMSEncoder *enc;
|
Chris@69
|
47 int err;
|
Chris@69
|
48 unsigned char data[2460];
|
Chris@69
|
49 int streams;
|
Chris@69
|
50 int coupled_streams;
|
Chris@69
|
51 unsigned char mapping[1];
|
Chris@69
|
52
|
Chris@69
|
53 enc = opus_multistream_surround_encoder_create(16000, 1, 1, &streams,
|
Chris@69
|
54 &coupled_streams, mapping, OPUS_APPLICATION_VOIP, &err);
|
Chris@69
|
55 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
56 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
57 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(0));
|
Chris@69
|
58 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
59 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(0));
|
Chris@69
|
60 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(0));
|
Chris@69
|
61 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(0));
|
Chris@69
|
62 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_NARROWBAND));
|
Chris@69
|
63 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_AUTO));
|
Chris@69
|
64 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(8));
|
Chris@69
|
65 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(0));
|
Chris@69
|
66 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(0));
|
Chris@69
|
67 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(OPUS_AUTO));
|
Chris@69
|
68 {
|
Chris@69
|
69 static const short pcm[320] =
|
Chris@69
|
70 {
|
Chris@69
|
71 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
72 0, 0, 0, 0, 0, 0, 1792, 1799, 1799,
|
Chris@69
|
73 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799,
|
Chris@69
|
74 1799, 1799, 1799, 1799, 1799, 0, 25600, 1799, 1799,
|
Chris@69
|
75 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799,
|
Chris@69
|
76 1799, 1799, 1799, 1799, 7, 0, 255, 0, 0,
|
Chris@69
|
77 0, 0, 0, 0, 0, 0, 0, 32767, -1,
|
Chris@69
|
78 0, 0, 0, 100, 0, 16384, 0, 0, 0,
|
Chris@69
|
79 0, 0, 0, 4, 0, 0, -256, 255, 0,
|
Chris@69
|
80 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
81 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
82 0, 0,-32768, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
83 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
84 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
85 0, 0, 0, 0, 128, 0, 0, 0, 0,
|
Chris@69
|
86 0, 0, 0, 0, -256, 0, 0, 32, 0,
|
Chris@69
|
87 0, 0, 0, 0, 0, 0, 4352, 4, 228,
|
Chris@69
|
88 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
89 0, 0, 0, 0, 0, 0, 5632, 0, 0,
|
Chris@69
|
90 0, 0,-32768, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
91 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
92 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
93 0, 0, 0, 256, 0, 0, 0, 0, 0,
|
Chris@69
|
94 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
95 -3944, 10500, 4285, 10459, -6474, 10204, -6539, 11601, -6824,
|
Chris@69
|
96 13385, -7142, 13872,-11553, 13670, -7725, 13463, -6887, 7874,
|
Chris@69
|
97 -5580, 12600, -4964, 12480, 3254, 11741, -4210, 9741, -3155,
|
Chris@69
|
98 7558, -5468, 5431, -1073, 3641, -1304, 0, -1, 343,
|
Chris@69
|
99 26, 0, 0, 150, 0, 0, 0, 0, 0,
|
Chris@69
|
100 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
101 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
102 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
103 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
104 0, 0, 0, 1799, 1799, 1799, 1799, 1799, -2553,
|
Chris@69
|
105 7, 1792, 1799, 1799, 1799, 1799, 1799, 1799, 1799,
|
Chris@69
|
106 1799, 1799, 1799, 1799, -9721
|
Chris@69
|
107 };
|
Chris@69
|
108 err = opus_multistream_encode(enc, pcm, 320, data, 2460);
|
Chris@69
|
109 assert(err > 0);
|
Chris@69
|
110 }
|
Chris@69
|
111 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
112 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
113 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(1));
|
Chris@69
|
114 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
115 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(0));
|
Chris@69
|
116 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(1));
|
Chris@69
|
117 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(10));
|
Chris@69
|
118 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
119 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
120 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(18));
|
Chris@69
|
121 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(1));
|
Chris@69
|
122 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(90));
|
Chris@69
|
123 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(280130));
|
Chris@69
|
124 {
|
Chris@69
|
125 static const short pcm[160] =
|
Chris@69
|
126 {
|
Chris@69
|
127 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
128 -9510, -9510, -9510, -9510, -9510, -9510, -9526, -9510, -9510,
|
Chris@69
|
129 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
130 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
131 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
132 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
133 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
134 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
135 -9510, -9510, -9510, -9510, -9510, 25600, -9510, -9510, -9510,
|
Chris@69
|
136 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
137 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
138 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
139 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
140 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
141 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
142 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
143 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
144 -9510, -9510, -9510, -9510, -9510, -9510, -9510
|
Chris@69
|
145 };
|
Chris@69
|
146 err = opus_multistream_encode(enc, pcm, 160, data, 2460);
|
Chris@69
|
147 assert(err > 0);
|
Chris@69
|
148 }
|
Chris@69
|
149 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
150 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
151 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(1));
|
Chris@69
|
152 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
153 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(0));
|
Chris@69
|
154 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(1));
|
Chris@69
|
155 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(10));
|
Chris@69
|
156 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
157 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
158 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(18));
|
Chris@69
|
159 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(1));
|
Chris@69
|
160 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(90));
|
Chris@69
|
161 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(280130));
|
Chris@69
|
162 {
|
Chris@69
|
163 static const short pcm[160] =
|
Chris@69
|
164 {
|
Chris@69
|
165 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
166 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
167 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
168 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
169 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
170 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
171 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
172 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
173 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
174 -9510, -9494, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
175 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
176 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
177 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
178 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
179 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
180 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
181 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
182 -9510, -9510, -9510, -9510, -9510, -9510, -9510
|
Chris@69
|
183 };
|
Chris@69
|
184 err = opus_multistream_encode(enc, pcm, 160, data, 2460);
|
Chris@69
|
185 assert(err > 0);
|
Chris@69
|
186 }
|
Chris@69
|
187 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
188 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
189 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(1));
|
Chris@69
|
190 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
191 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(0));
|
Chris@69
|
192 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(1));
|
Chris@69
|
193 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(10));
|
Chris@69
|
194 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
195 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
196 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(18));
|
Chris@69
|
197 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(1));
|
Chris@69
|
198 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(90));
|
Chris@69
|
199 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(280130));
|
Chris@69
|
200 {
|
Chris@69
|
201 static const short pcm[160] =
|
Chris@69
|
202 {
|
Chris@69
|
203 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
204 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
205 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
206 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
207 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
208 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
209 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
210 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
211 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
212 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
213 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
214 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
215 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
216 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
217 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9479, -9510,
|
Chris@69
|
218 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
219 -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510, -9510,
|
Chris@69
|
220 -9510, -9510, -9510, -9510, -9510, -9510, -9510
|
Chris@69
|
221 };
|
Chris@69
|
222 err = opus_multistream_encode(enc, pcm, 160, data, 2460);
|
Chris@69
|
223 assert(err > 0);
|
Chris@69
|
224 }
|
Chris@69
|
225 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
226 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
227 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(1));
|
Chris@69
|
228 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
229 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(0));
|
Chris@69
|
230 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(1));
|
Chris@69
|
231 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(10));
|
Chris@69
|
232 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
233 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
234 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(18));
|
Chris@69
|
235 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(1));
|
Chris@69
|
236 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(90));
|
Chris@69
|
237 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(280130));
|
Chris@69
|
238 {
|
Chris@69
|
239 static const short pcm[160] =
|
Chris@69
|
240 {
|
Chris@69
|
241 -9510, -9510, 1799, 1799, 1799, 1799, 1799, 1799, 1799,
|
Chris@69
|
242 1799, 1799, 1799, 1799, 1799, 1799, 1799, 1799, 0,
|
Chris@69
|
243 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
244 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
245 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
246 -256, 255, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
247 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
248 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
249 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
250 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
251 0, 0, 0, 0, 0, 0, 0, 128, 0,
|
Chris@69
|
252 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
253 0, 32, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
254 4352, 4, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
255 0, 0, 0, 0, 148, 0, 0, 0, 0,
|
Chris@69
|
256 5632
|
Chris@69
|
257 };
|
Chris@69
|
258 err = opus_multistream_encode(enc, pcm, 160, data, 2460);
|
Chris@69
|
259 assert(err > 0);
|
Chris@69
|
260 }
|
Chris@69
|
261 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_VOICE));
|
Chris@69
|
262 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
263 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(1));
|
Chris@69
|
264 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
265 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(1));
|
Chris@69
|
266 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(1));
|
Chris@69
|
267 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(0));
|
Chris@69
|
268 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_NARROWBAND));
|
Chris@69
|
269 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_AUTO));
|
Chris@69
|
270 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(12));
|
Chris@69
|
271 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(0));
|
Chris@69
|
272 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(41));
|
Chris@69
|
273 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(21425));
|
Chris@69
|
274 {
|
Chris@69
|
275 static const short pcm[40] =
|
Chris@69
|
276 {
|
Chris@69
|
277 10459, -6474, 10204, -6539, 11601, -6824, 13385, -7142, 13872,
|
Chris@69
|
278 -11553, 13670, -7725, 13463, -6887, 12482, -5580, 12600, -4964,
|
Chris@69
|
279 12480, 3254, 11741, -4210, 9741, -3155, 7558, -5468, 5431,
|
Chris@69
|
280 -1073, 3641, -1304, 0, -1, 343, 26, 0, 0,
|
Chris@69
|
281 0, 0, -256, 226
|
Chris@69
|
282 };
|
Chris@69
|
283 err = opus_multistream_encode(enc, pcm, 40, data, 2460);
|
Chris@69
|
284 assert(err > 0);
|
Chris@69
|
285 /* returns -3 */
|
Chris@69
|
286 }
|
Chris@69
|
287 opus_multistream_encoder_destroy(enc);
|
Chris@69
|
288 return 0;
|
Chris@69
|
289 }
|
Chris@69
|
290
|
Chris@69
|
291 static int mscbr_encode_fail10(void)
|
Chris@69
|
292 {
|
Chris@69
|
293 OpusMSEncoder *enc;
|
Chris@69
|
294 int err;
|
Chris@69
|
295 unsigned char data[627300];
|
Chris@69
|
296 static const unsigned char mapping[255] =
|
Chris@69
|
297 {
|
Chris@69
|
298 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
|
Chris@69
|
299 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
Chris@69
|
300 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
|
Chris@69
|
301 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
|
Chris@69
|
302 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
|
Chris@69
|
303 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,100,101,
|
Chris@69
|
304 102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,
|
Chris@69
|
305 119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,
|
Chris@69
|
306 136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,
|
Chris@69
|
307 153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,
|
Chris@69
|
308 170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,
|
Chris@69
|
309 187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,
|
Chris@69
|
310 204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,
|
Chris@69
|
311 221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,
|
Chris@69
|
312 238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254
|
Chris@69
|
313 };
|
Chris@69
|
314
|
Chris@69
|
315 enc = opus_multistream_encoder_create(8000, 255, 254, 1, mapping,
|
Chris@69
|
316 OPUS_APPLICATION_RESTRICTED_LOWDELAY, &err);
|
Chris@69
|
317 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_VOICE));
|
Chris@69
|
318 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
319 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(0));
|
Chris@69
|
320 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(0));
|
Chris@69
|
321 opus_multistream_encoder_ctl(enc, OPUS_SET_FORCE_CHANNELS(2));
|
Chris@69
|
322 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(1));
|
Chris@69
|
323 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(1));
|
Chris@69
|
324 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(2));
|
Chris@69
|
325 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_NARROWBAND));
|
Chris@69
|
326 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_AUTO));
|
Chris@69
|
327 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(14));
|
Chris@69
|
328 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(0));
|
Chris@69
|
329 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(57));
|
Chris@69
|
330 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(3642675));
|
Chris@69
|
331 {
|
Chris@69
|
332 static const short pcm[20*255] =
|
Chris@69
|
333 {
|
Chris@69
|
334 0
|
Chris@69
|
335 };
|
Chris@69
|
336 err = opus_multistream_encode(enc, pcm, 20, data, 627300);
|
Chris@69
|
337 assert(err > 0);
|
Chris@69
|
338 /* returns -1 */
|
Chris@69
|
339 }
|
Chris@69
|
340 opus_multistream_encoder_destroy(enc);
|
Chris@69
|
341 return 0;
|
Chris@69
|
342 }
|
Chris@69
|
343
|
Chris@69
|
344 static int mscbr_encode_fail(void)
|
Chris@69
|
345 {
|
Chris@69
|
346 OpusMSEncoder *enc;
|
Chris@69
|
347 int err;
|
Chris@69
|
348 unsigned char data[472320];
|
Chris@69
|
349 static const unsigned char mapping[192] =
|
Chris@69
|
350 {
|
Chris@69
|
351 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
|
Chris@69
|
352 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
Chris@69
|
353 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
|
Chris@69
|
354 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
|
Chris@69
|
355 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
|
Chris@69
|
356 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,100,101,
|
Chris@69
|
357 102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,
|
Chris@69
|
358 119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,
|
Chris@69
|
359 136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,
|
Chris@69
|
360 153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,
|
Chris@69
|
361 170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,
|
Chris@69
|
362 187,188,189,190,191
|
Chris@69
|
363 };
|
Chris@69
|
364
|
Chris@69
|
365 enc = opus_multistream_encoder_create(8000, 192, 189, 3, mapping,
|
Chris@69
|
366 OPUS_APPLICATION_RESTRICTED_LOWDELAY, &err);
|
Chris@69
|
367 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
368 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
369 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(0));
|
Chris@69
|
370 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(0));
|
Chris@69
|
371 opus_multistream_encoder_ctl(enc, OPUS_SET_FORCE_CHANNELS(OPUS_AUTO));
|
Chris@69
|
372 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(0));
|
Chris@69
|
373 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(0));
|
Chris@69
|
374 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(0));
|
Chris@69
|
375 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_MEDIUMBAND));
|
Chris@69
|
376 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_AUTO));
|
Chris@69
|
377 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(8));
|
Chris@69
|
378 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(0));
|
Chris@69
|
379 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(0));
|
Chris@69
|
380 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(15360));
|
Chris@69
|
381 {
|
Chris@69
|
382 static const short pcm[20*192] =
|
Chris@69
|
383 {
|
Chris@69
|
384 0
|
Chris@69
|
385 };
|
Chris@69
|
386 err = opus_multistream_encode(enc, pcm, 20, data, 472320);
|
Chris@69
|
387 assert(err > 0);
|
Chris@69
|
388 /* returns -1 */
|
Chris@69
|
389 }
|
Chris@69
|
390 opus_multistream_encoder_destroy(enc);
|
Chris@69
|
391 return 0;
|
Chris@69
|
392 }
|
Chris@69
|
393
|
Chris@69
|
394 static int surround_analysis_uninit(void)
|
Chris@69
|
395 {
|
Chris@69
|
396 OpusMSEncoder *enc;
|
Chris@69
|
397 int err;
|
Chris@69
|
398 unsigned char data[7380];
|
Chris@69
|
399 int streams;
|
Chris@69
|
400 int coupled_streams;
|
Chris@69
|
401 unsigned char mapping[3];
|
Chris@69
|
402
|
Chris@69
|
403 enc = opus_multistream_surround_encoder_create(24000, 3, 1, &streams,
|
Chris@69
|
404 &coupled_streams, mapping, OPUS_APPLICATION_AUDIO, &err);
|
Chris@69
|
405 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_VOICE));
|
Chris@69
|
406 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(1));
|
Chris@69
|
407 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(1));
|
Chris@69
|
408 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(0));
|
Chris@69
|
409 opus_multistream_encoder_ctl(enc, OPUS_SET_FORCE_CHANNELS(OPUS_AUTO));
|
Chris@69
|
410 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(0));
|
Chris@69
|
411 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(0));
|
Chris@69
|
412 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(0));
|
Chris@69
|
413 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_NARROWBAND));
|
Chris@69
|
414 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_BANDWIDTH_NARROWBAND));
|
Chris@69
|
415 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(8));
|
Chris@69
|
416 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(1));
|
Chris@69
|
417 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(84315));
|
Chris@69
|
418 {
|
Chris@69
|
419 static const short pcm[960*3] =
|
Chris@69
|
420 {
|
Chris@69
|
421 -6896, 4901, -6158, 4120, -5164, 3631, -4442, 3153, -4070,
|
Chris@69
|
422 3349, -4577, 4474, -5541, 5058, -6701, 3881, -7933, 1863,
|
Chris@69
|
423 -8041, 697, -6738,-31464, 14330,-12523, 4096, -6130, 29178,
|
Chris@69
|
424 -250,-21252, 10467, 16907, -3359, -6644, 31965, 14607,-21544,
|
Chris@69
|
425 -32497, 24020, 12557,-26926,-18421, -1842, 24587, 19659, 4878,
|
Chris@69
|
426 10954, 23060, 8907,-10215,-16179, 31772,-11825,-15590,-23089,
|
Chris@69
|
427 17173,-25903,-17387, 11733, 4884, 10204,-16476,-14367, 516,
|
Chris@69
|
428 20453,-16898, 20967,-23813, -20, 22011,-17167, 9459, 32499,
|
Chris@69
|
429 -25855, -523, -3883, -390, -4206, 634, -3767, 2325, -2751,
|
Chris@69
|
430 3115, -2392, 2746, -2173, 2317, -1147, 2326, 23142, 11314,
|
Chris@69
|
431 -15350,-24529, 3026, 6146, 2150, 2476, 1105, -830, 1775,
|
Chris@69
|
432 -3425, 3674,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
433 4293,-14023, 3879,-15553, 3158,-16161, 2629, 18433,-12535,
|
Chris@69
|
434 -6645,-20735,-32763,-13824,-20992, 25859, 13052, -8731, 2292,
|
Chris@69
|
435 -3860, 24049, 10225,-19220, 10478,-22294, 22773, 28137, 13816,
|
Chris@69
|
436 30953,-25863,-24598, 16888,-14612,-28942, 20974,-27397,-18944,
|
Chris@69
|
437 -18690, 20991,-16638, 5632,-14330, 28911,-25594, 17408, 29958,
|
Chris@69
|
438 -517,-20984, -1800, 11281, 9977,-21221,-14854, 23840, -9477,
|
Chris@69
|
439 3362,-12805,-22493, 32507, 156, 16384, -1163, 2301, -1874,
|
Chris@69
|
440 4600, -1748, 6950, 16557, 8192, -7372, -1033, -3278, 2806,
|
Chris@69
|
441 20275, 3317, -717, 9792, -767, 9099, -613, 8362, 5027,
|
Chris@69
|
442 7774, 2597, 8549, 5278, 8743, 9343, 6940, 13038, 4826,
|
Chris@69
|
443 14086, 2964, 13215, 1355, 11596, 455, 9850, -519, 10680,
|
Chris@69
|
444 -2287, 12551, -3736, 13639, -4291, 13790, -2722, 14544, -866,
|
Chris@69
|
445 15050, -304, 22833, -1196, 13520, -2063, 13051, -2317, 13066,
|
Chris@69
|
446 -2737, 13773, -2664, 14105, -3447, 13854, 24589, 24672, -5280,
|
Chris@69
|
447 10388, -4933, 7543, -4149, 3654, -1552, 1726, 661, 57,
|
Chris@69
|
448 2922, -751, 3917, 8419, 3840, -5218, 3435, 5540, -1073,
|
Chris@69
|
449 4153, -6656, 1649, -769, -7276,-13072, 6380, -7948, 20717,
|
Chris@69
|
450 18425, 17392, 14335,-18190, -1842, 24587, 19659, 11790, 10954,
|
Chris@69
|
451 23060, 8907,-10215,-16179, 31772,-11825,-15590,-23101, 17173,
|
Chris@69
|
452 -25903,-17387, 11733, 4884, 10192,-16627,-14367, 516, 20453,
|
Chris@69
|
453 -16898, 20967,-23813, -20, 22011,-17167, 9468, 32499,-25607,
|
Chris@69
|
454 -523, -3883, -390, -4206, 634, -3767, 2325, -2751, 3115,
|
Chris@69
|
455 -2392, 2746, -2161, 2317, -1147, 2326, 23142, 11314,-15350,
|
Chris@69
|
456 -29137, 3026,-15056, -491,-15170, -386,-16015, -641,-16505,
|
Chris@69
|
457 -930,-16206, -717,-16175, -2839,-16374, -4558,-16237, -5207,
|
Chris@69
|
458 -15903, -6421, 6373, -1403, 5431, -1073, 3641, -1304, -4495,
|
Chris@69
|
459 -769, -7276, 2856, -7870, 3314, -8730, 3964,-10183, 4011,
|
Chris@69
|
460 -11135, 3421,-11727, 2966,-12360, 2818,-13472, 3660,-13805,
|
Chris@69
|
461 5162,-13478, 6434,-12840, 7335,-12420, 6865,-12349, 5541,
|
Chris@69
|
462 -11965, 5530,-10820, 5132, -9197, 3367, -7745, 1223, -6910,
|
Chris@69
|
463 -433, -6211, -1711, -4958, -1025, -3755, -836, -3292, -1666,
|
Chris@69
|
464 -2661,-10755, 31472,-27906, 31471, 18690, 5617, 16649, 11253,
|
Chris@69
|
465 -22516,-17674,-31990, 3575,-31479, 5883, 26121, 12890, -6612,
|
Chris@69
|
466 12228,-11634, 523, 26136,-21496, 20745,-15868, -4100,-24826,
|
Chris@69
|
467 23282, 22798, 491, -1774, 15075,-27373,-13094, 6417,-29487,
|
Chris@69
|
468 14608, 10185, 16143, 22211, -8436, 4288, -8694, 2375, 3023,
|
Chris@69
|
469 486, 1455, 128, 202, 942, -923, 2068, -1233, -717,
|
Chris@69
|
470 -1042, -2167, 32255, -4632, 310, -4458, -3639, -5258, 2106,
|
Chris@69
|
471 -6857, 2681, -7497, 2765, -6601, 1945, -5219, 19154, -4877,
|
Chris@69
|
472 619, -5719, -1928, -6208, -121, 593, 188, 1558, -4152,
|
Chris@69
|
473 1648, 156, 1604, -3664, -6862, -2851, -5112, -3600, -3747,
|
Chris@69
|
474 -5081, -4428, -5592, 20974,-27397,-18944,-18690, 20991,-17406,
|
Chris@69
|
475 5632,-14330, 28911, 15934, 15934, 15934, 15934, 15934, 15934,
|
Chris@69
|
476 15934, 15934, 15934, 15934, 15934, 15934,-25594, 17408, 29958,
|
Chris@69
|
477 -7173,-16888, 9098, -613, 8362, 675, 7774, 2597, 8549,
|
Chris@69
|
478 5278, 8743, 9375, 6940, 13038, 4826, 14598, 7721,-24308,
|
Chris@69
|
479 -29905,-19703,-17106,-16124, -3287,-26118,-19709,-10769, 24353,
|
Chris@69
|
480 28648, 6946, -1363, 12485, -1187, 26074,-25055, 10004,-24798,
|
Chris@69
|
481 7204, -4581, -9678, 1554, 10553, 3102, 12193, 2443, 11955,
|
Chris@69
|
482 1213, 10689, -1293, 921, -4173, 10709, -6049, 8815, -7128,
|
Chris@69
|
483 8147, -8308, 6847, -2977, 4920,-11447,-22426,-11794, 3514,
|
Chris@69
|
484 -10220, 3430, -7993, 1926, -7072, 327, -7569, -608, -7605,
|
Chris@69
|
485 3695, -6271, -1579, -4877, -1419, -3103, -2197, 128, -3904,
|
Chris@69
|
486 3760, -5401, 4906, -6051, 4250, -6272, 3492, -6343, 3197,
|
Chris@69
|
487 -6397, 4041, -6341, 6255, -6381, 7905, 16504, 0, -6144,
|
Chris@69
|
488 8062, -5606, 8622, -5555, -9, -1, 7423, 0, 1,
|
Chris@69
|
489 238, 5148, 1309, 4700, 2218, 4403, 2573, 3568, 28303,
|
Chris@69
|
490 1758, 3454, -1247, 3434, -4912, 2862, -7844, 1718,-10095,
|
Chris@69
|
491 369,-12631, 128, -3904, 3632, -5401, 4906, -6051, 4250,
|
Chris@69
|
492 -6272, 3492, -6343, 3197, -6397, 4041, -6341, 6255, -6381,
|
Chris@69
|
493 7905, 16504, 0, -6144, 8062, -5606, 8622, -5555, 8439,
|
Chris@69
|
494 -3382, 7398, -1170, 6132, 238, 5148, 1309, 4700, 2218,
|
Chris@69
|
495 4403, 2573, 3568, 2703, 1758, 3454, -1247, 3434, -4912,
|
Chris@69
|
496 2862, -7844, 1718,-10095, 369,-12631, -259,-14632, 234,
|
Chris@69
|
497 -15056, -521,-15170, -386,-16015, -641,-16505, -930,-16206,
|
Chris@69
|
498 -1209,-16146, -2839,-16374, -4558,-16218, -5207,-15903, -6421,
|
Chris@69
|
499 -15615, -6925,-14871, -6149,-13759, -5233,-12844, 18313, -4357,
|
Chris@69
|
500 -5696, 2804, 12992,-22802, -6720, -9770, -7088, -8998, 14330,
|
Chris@69
|
501 -12523, 14843, -6130, 29178, -250,-27396, 10467, 16907, -3359,
|
Chris@69
|
502 -6644, 31965, 14607,-21544,-32497, 24020, 12557,-26926, -173,
|
Chris@69
|
503 -129, -6401, -130,-25089, -3841, -4916, -3048, 224, -237,
|
Chris@69
|
504 -3969, -189, -3529, -535, -3464,-14863,-14907,-14907,-14907,
|
Chris@69
|
505 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
506 -14907,-14395,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
507 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
508 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
509 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
510 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
511 -14907,-14907, 0, 32512,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
512 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
513 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
514 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
515 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
516 -14907,-14907,-14907,-14907,-14907, 9925, -718, 9753, -767,
|
Chris@69
|
517 9099, -613, 8362, 675, 7774, 2597, 8549, 5278, 8743,
|
Chris@69
|
518 9375, 6940, 13038, 4826, 14598, 7721,-24308,-29905,-19703,
|
Chris@69
|
519 -17106,-16124, -3287,-26118,-19709, 0, 24353, 28648, 10274,
|
Chris@69
|
520 -11292,-29665,-16417, 24346, 14553, 18707, 26323, -4596,-17711,
|
Chris@69
|
521 5133, 26328, 13,-31168, 24583, 18404,-28927,-24350, 19453,
|
Chris@69
|
522 28642, 1019,-10777, -3079, 30188, -7686, 27635,-32521,-16384,
|
Chris@69
|
523 12528, -6386, 10986, 23827,-25880,-32752,-23321, 14605, 32231,
|
Chris@69
|
524 780,-13849, 15119, 28647, 4888, -7705, 30750, 64, 0,
|
Chris@69
|
525 32488, 6687,-20758, 19745, -2070,-13792, -6414, 28188, -2821,
|
Chris@69
|
526 -4585, 7168, 7444, 23557,-21998, 13064, 3345, -4086,-28915,
|
Chris@69
|
527 -8694, 32262, 8461, 27387,-12275, 12012, 23563,-18719,-28410,
|
Chris@69
|
528 29144,-22271, -562, -9986, -5434, 12288, 5573,-16642, 32448,
|
Chris@69
|
529 29182, 32705,-30723, 24255,-19716, 18368, -4357, -5696, 2804,
|
Chris@69
|
530 12992,-22802,-22080, -7701, -5183, 486, -3133, -5660, -1083,
|
Chris@69
|
531 16871,-28726,-11029,-30259, -1209,-16146, -2839,-16374, -4558,
|
Chris@69
|
532 -16218,-10523, 20697, -9500, -1316, 5431, -1073, 3641, -1304,
|
Chris@69
|
533 1649, -769, -7276, 2856, -7870, 3314, -8730, 3964,-10183,
|
Chris@69
|
534 4011,-11135, 3421,-11727, 21398, 32767, -1, 32486, -1,
|
Chris@69
|
535 6301,-13071, 6380, -7948, -1, 32767, 240, 14081, -5646,
|
Chris@69
|
536 30973, -3598,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
537 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
538 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
539 -14907,-14907,-14907,-14907, 32767,-14907,-14907,-14907,-14907,
|
Chris@69
|
540 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
541 -14907, 8901, 9375, 6940, 13038, 4826, 14598, 7721,-24308,
|
Chris@69
|
542 -29905,-19703,-17106,-16124, -3287,-26118,-19709,-10769, 24361,
|
Chris@69
|
543 28648, 10274,-11292,-29665,-16417, 24346, 14580, 18707, 26323,
|
Chris@69
|
544 -4440,-17711, 5133, 26328,-14579,-31008, 24583, 18404, 28417,
|
Chris@69
|
545 -24350, 19453, 28642,-32513,-10777, -3079, 30188, -7686, 27635,
|
Chris@69
|
546 -32521,-16384,-20240, -6386, 10986, 23827,-25880,-32752,-23321,
|
Chris@69
|
547 14605, 32231, 780,-13849, 15119, 28647, 4888, -7705,-15074,
|
Chris@69
|
548 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
549 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
550 -14907,-14907,-14907, 8192,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
551 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
552 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
553 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
554 -14907,-14907,-14907,-14897,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
555 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
556 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
557 -15931,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
558 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
559 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
560 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
561 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
562 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
563 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
564 -14907,-14907,-14907,-14907,-14907,-14907, 26121, 12890, 2604,
|
Chris@69
|
565 12228,-11634, 12299, 5573,-16642, 32452, 29182, 32705,-30723,
|
Chris@69
|
566 24255,-19716, 13248,-11779, -5696, 2804, 12992,-27666,-22080,
|
Chris@69
|
567 -7701, -5183, -6682,-31464, 14330,-12523, 14843, -6130, 29178,
|
Chris@69
|
568 -18,-27396, 10467, 16907, -3359, -6644, 31965, 14607,-21544,
|
Chris@69
|
569 -32497, 24020, 12557,-26926,-18421, 706, 24587, 19659, 4878,
|
Chris@69
|
570 10954, 23060, 8907,-10215,-22579, 31772,-11825,-15590,-23089,
|
Chris@69
|
571 17173,-25903,-17387, 3285, 4884, 10204,-16627,-14367, 516,
|
Chris@69
|
572 20453,-16898, 20967,-23815, -20, 22011,-17167, 9468, 32499,
|
Chris@69
|
573 -25607, -523, -3883, -390, -4206, 634, -3767, 2325, -2751,
|
Chris@69
|
574 3115, -2392, 2746, -2173, 2317, -1147, 2326, 23142, 11314,
|
Chris@69
|
575 -15130,-29137, 3026, 6146, 2150, 2476, 1105, -830, 1775,
|
Chris@69
|
576 -3425, 3674, -5287, 4609, -7175, 4922, -9579, 4556,-12007,
|
Chris@69
|
577 4236,-14023, 3879,-15553, 3158,-16161, 2576, 18398,-12535,
|
Chris@69
|
578 -6645,-20735,-32763,-13824,-20992, 25859, 5372, 12040, 13307,
|
Chris@69
|
579 -4355,-30213, -9, -6019, 14061,-31487,-13842, 30449, 15083,
|
Chris@69
|
580 14088, 31205,-18678,-12830, 14090,-26138,-25337,-11541, -3254,
|
Chris@69
|
581 27628,-22270, 30953,-16136,-30745, 20991,-17406, 5632,-14330,
|
Chris@69
|
582 28911,-25594, 17408,-20474, 13041, -8731, 2292, -3860, 24049,
|
Chris@69
|
583 10225,-19220, 10478, -4374, -1199, 148, -330, -74, 593,
|
Chris@69
|
584 188, 1558, -4152, 15984, 15934, 15934, 15934, 15934, 15934,
|
Chris@69
|
585 15934, 15934, 15934, 15934, 15934, 15934, 1598, 156, 1604,
|
Chris@69
|
586 -1163, 2278,-30018,-25821,-21763,-23776, 24066, 9502, 25866,
|
Chris@69
|
587 -25055, 10004,-24798, 7204, -4581, -9678, 1554, 10553, 3102,
|
Chris@69
|
588 12193, 2443, 11955, 1213, 10689, -1293, 921, -4173, 8661,
|
Chris@69
|
589 -6049, 8815,-21221,-14854, 23840, -9477, 8549, 5278, 8743,
|
Chris@69
|
590 9375, 6940, 13038, 4826, 14598, 7721,-24308,-29905,-19703,
|
Chris@69
|
591 -17106,-16124, -3287,-26118,-19709,-10769, 24361, 28648, 10274,
|
Chris@69
|
592 -11292,-29665,-16417, 24346, 14580, 18707, 26323, -4410,-17711,
|
Chris@69
|
593 5133, 26328,-14579,-31008, 24583, 18404, 28417,-24350, 19453,
|
Chris@69
|
594 28642,-32513,-10777, -3079, 30188, -7686, 27635,-32521,-16384,
|
Chris@69
|
595 -20240, -6386, 10986, 23827,-25880,-32752,-23321, 14605, 32231,
|
Chris@69
|
596 780,-13849, 15119, 28647, 4888, -7705, 30750, 64, 0,
|
Chris@69
|
597 32488, 6687,-20758, 19745, -2070, -1, -1, 28, 256,
|
Chris@69
|
598 -4608, 7168, 7444, 23557,-21998, 13064, 3345, -4086,-28915,
|
Chris@69
|
599 -8594, 32262, 8461, 27387,-12275, 12012, 23563,-18719,-28410,
|
Chris@69
|
600 29144,-22271,-32562,-16384, 12528, -6386, 10986, 23827,-25880,
|
Chris@69
|
601 -32752,-23321, 14605, 32231, 780,-13849, 15119, 28647, 4888,
|
Chris@69
|
602 -7705, 30750, 64, 0, 32488, 6687,-20758, 19745, -2070,
|
Chris@69
|
603 -13792, -6414, 28188, -2821, -4585, 7168, 7444, 23557,-21998,
|
Chris@69
|
604 13064, 3345, -4086,-28915, -8694, 32262, 8461, 27387,-12275,
|
Chris@69
|
605 12012, 23563,-18719,-28410, 29144,-22271, -562, -9986, -5434,
|
Chris@69
|
606 12288, -2107,-16643, 32452, 29182, 32705,-30723, 24255,-19716,
|
Chris@69
|
607 18368, -4357, -5696, 2804, 12992,-22802,-22080, -7701, -5183,
|
Chris@69
|
608 486, -3133, -5660, -1083, 16871,-28726,-11029,-30259, -1209,
|
Chris@69
|
609 -16146, -2839,-16374, -4558,-16218,-10523, 20697, -9500, -1316,
|
Chris@69
|
610 5431, -1073, 3641, -1304, 1649, -769, -7276, 2856, -7870,
|
Chris@69
|
611 3314, -8730, 3964,-10183, 4011,-11135, 3421,-11727, 21398,
|
Chris@69
|
612 32767, -1, 32486, -1, -99,-13072, 6380, -7948, 4864,
|
Chris@69
|
613 32767, 17392, 14335, -5646, 30973, -3598,-10299,-14907,-14907,
|
Chris@69
|
614 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
615 -14907,-14907,-14905,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
616 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
617 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
618 -14907,-14907,-14907,-14907,-14907,-19771,-14907,-14907,-14907,
|
Chris@69
|
619 -14907,-14907,-14907,-14907,-14907,-16443,-14907,-14907,-14907,
|
Chris@69
|
620 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
621 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
622 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
623 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
624 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
625 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
626 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
627 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
628 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
629 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
630 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
631 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
632 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
633 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
634 -14907,-14907,-14907,-14907,-15931,-14907,-14907,-14907,-14907,
|
Chris@69
|
635 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
636 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
637 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
638 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
639 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
640 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
641 -14907,-14907,-14907,-14907,-14907,-14907, -1,-14907,-14907,
|
Chris@69
|
642 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
643 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
644 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
645 -14907,-14907, 7877, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
646 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
647 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
648 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
649 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
650 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
651 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
652 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
653 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
654 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
655 7710, 7710, 7710, 7710, 7710, -994, -7276, 2856, -7870,
|
Chris@69
|
656 3314, -8730, 3964,-10183, 4011,-11135, 3421,-11727, 21398,
|
Chris@69
|
657 32767, -1, 32486, -1, -99,-13072, 6380, -7948, 4864,
|
Chris@69
|
658 32767, 17392, 14335, -5646, 30973, -3598,-14907,-14907,-14907,
|
Chris@69
|
659 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
660 -14907,-14907,-14905,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
661 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
662 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
663 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
664 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
665 -14907,-14907, 197, 0,-14977,-14907,-14907,-14907,-14907,
|
Chris@69
|
666 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
667 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
668 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
669 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
670 -14907,-14907,-14907,-14907,-14907,-14907, 12838, 6653, 294,
|
Chris@69
|
671 -29699,-25821,-21763,-23776, 24066, 9502, 25866,-25055, 10004,
|
Chris@69
|
672 -24798, 7204, -4581, -9678, 1554, 10553, 3102, 12193, 2443,
|
Chris@69
|
673 11955, 1213, 10689, -1293, 921, 179, 8448, -6049, 8815,
|
Chris@69
|
674 -7128, 8147, -8308, 6847, -9889, 4920,-11447, 3174,-11794,
|
Chris@69
|
675 3514,-10220, 3430, 16384, 1926, -7072, 327, -7537, -608,
|
Chris@69
|
676 -7605, -1169, -6397, -1579, -4877, -1419, -3103, -2197, 128,
|
Chris@69
|
677 -3904, 3632, -5401, 4906, -6051, 4250, -6272, 3492, -6343,
|
Chris@69
|
678 3197, -6397, 4041, -6341, 6255, -6381, 7905, 16504, 0,
|
Chris@69
|
679 -6144, 8062, -5606, 8622, -5555, 8439, -3382, 7398, -1170,
|
Chris@69
|
680 6132, 238, 5148, 1309, 4700, 2218, 4403, 2573, 3568,
|
Chris@69
|
681 2703, 1758, 3454, -1247, 3434, -4912, 2862, -7844, 1718,
|
Chris@69
|
682 -10095, 369,-12631, -259,-14632, 234,-15056, -491,-16194,
|
Chris@69
|
683 -386,-16015, -641,-16505, -930,-16206, -1209,-16146, -2839,
|
Chris@69
|
684 -16374, -4558,-16218, -5207,-15903, -6421,-15615, -6925,-14871,
|
Chris@69
|
685 -6149,-13759, -5233,-12844, 18313, -4357, -5696, 2804, 12992,
|
Chris@69
|
686 -22802, -6720, -9770, -7088, -8998, 14330,-12523, 14843, -6130,
|
Chris@69
|
687 29178, -250,-27396, 10467, 16907, -3359, -6644, 31965, 14607,
|
Chris@69
|
688 -21544,-32497, 24020, 12557,-26926, -173, -129, -6401, -130,
|
Chris@69
|
689 -25089, -3816, -4916, -3048, -32, -1, -3969, 256, -3529,
|
Chris@69
|
690 -535, -3464,-14863,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
691 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
692 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
693 -1209,-16146, -2839,-16374, -4558,-16218,-10523, 20697, -9500,
|
Chris@69
|
694 -1316, 5431, -1073, 3641, -1304, 1649, -769, -7276, 2856,
|
Chris@69
|
695 -7870, 3314, -8730, 3964,-10183, 4011,-11135, 3421,-11727,
|
Chris@69
|
696 21398, 32767, -1, 32486, -1, 6301,-13071, 6380, -7948,
|
Chris@69
|
697 -1, 32767, 240, 14081, -5646, 30973, -3598,-14907,-14907,
|
Chris@69
|
698 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
699 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
700 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
701 32767,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
702 -14907,-14907,-14907,-14907,-14907,-14907, 8901, 9375, 6940,
|
Chris@69
|
703 13038, 4826, 14598, 7721,-24308,-29905,-19703,-17106,-16124,
|
Chris@69
|
704 -3287,-26118,-19709,-10769, 24361, 28648, 10274,-11292,-29665,
|
Chris@69
|
705 -16417, 24346, 14580, 18707, 26323, -4440,-17711, 5133, 26328,
|
Chris@69
|
706 -14579,-31008, 24583, 18404, 28417,-24350, 19453, 28642,-32513,
|
Chris@69
|
707 -10777, -3079, 30188, -7686, 27635,-32521,-16384,-20240, -6386,
|
Chris@69
|
708 10986, 23827,-25880,-32752,-23321, 14605, 32231, 780,-13849,
|
Chris@69
|
709 15119, 28647, 4888, -7705,-15074,-14907,-14907,-14907,-14907,
|
Chris@69
|
710 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
711 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907, 8192,
|
Chris@69
|
712 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
713 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
714 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
715 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14897,
|
Chris@69
|
716 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
717 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
718 -14907,-14907,-14907,-14907,-14907,-15931,-14907,-14907,-14907,
|
Chris@69
|
719 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
720 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
721 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
722 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
723 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
724 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
725 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
726 -14907,-14907, 26121, 12890, 2604, 12228,-11634, 12299, 5573,
|
Chris@69
|
727 -16642, 32452, 29182, 32705,-30723, 24255,-19716, 13248,-11779,
|
Chris@69
|
728 -5696, 2804, 12992,-27666,-22080, -7701, -5183, -6682,-31464,
|
Chris@69
|
729 14330,-12523, 14843, -6130, 29178, -18,-27396, 10467, 16907,
|
Chris@69
|
730 -3359, -6644, 31965, 14607,-21544,-32497, 24020, 12557,-26926,
|
Chris@69
|
731 -18421, 706, 24587, 19659, 4878, 10954, 23060, 8907,-10215,
|
Chris@69
|
732 -22579, 31772,-11825,-15590,-23089, 17173,-25903,-17387, 3285,
|
Chris@69
|
733 4884, 10204,-16627,-14367, 516, 20453,-16898, 20967,-23815,
|
Chris@69
|
734 -20, 22011,-17167, 9468, 32499,-25607, -523, -3883, -390,
|
Chris@69
|
735 -4206, 634, -3767, 2325, -2751, 3115, -2392, 2746, -2173,
|
Chris@69
|
736 2317, -1147, 2326, 23142, 11314,-15130,-29137, 3026, 6146,
|
Chris@69
|
737 2150, 2476, 1105, -830, 1775, -3425, 3674, -5287, 4609,
|
Chris@69
|
738 -7175, 4922, -9579, 4556,-12007, 4236,-14023, 3879,-15553,
|
Chris@69
|
739 3158,-16161, 2576, 18398,-12535, -6645,-20735,-32763,-13824,
|
Chris@69
|
740 -20992, 25859, 5372, 12040, 13307, -4355,-30213, -9, -6019
|
Chris@69
|
741 };
|
Chris@69
|
742 err = opus_multistream_encode(enc, pcm, 960, data, 7380);
|
Chris@69
|
743 assert(err > 0);
|
Chris@69
|
744 }
|
Chris@69
|
745 opus_multistream_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
746 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR(1));
|
Chris@69
|
747 opus_multistream_encoder_ctl(enc, OPUS_SET_VBR_CONSTRAINT(0));
|
Chris@69
|
748 opus_multistream_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
749 opus_multistream_encoder_ctl(enc, OPUS_SET_FORCE_CHANNELS(OPUS_AUTO));
|
Chris@69
|
750 opus_multistream_encoder_ctl(enc, OPUS_SET_PHASE_INVERSION_DISABLED(1));
|
Chris@69
|
751 opus_multistream_encoder_ctl(enc, OPUS_SET_DTX(1));
|
Chris@69
|
752 opus_multistream_encoder_ctl(enc, OPUS_SET_COMPLEXITY(6));
|
Chris@69
|
753 opus_multistream_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_NARROWBAND));
|
Chris@69
|
754 opus_multistream_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_AUTO));
|
Chris@69
|
755 opus_multistream_encoder_ctl(enc, OPUS_SET_LSB_DEPTH(9));
|
Chris@69
|
756 opus_multistream_encoder_ctl(enc, OPUS_SET_INBAND_FEC(1));
|
Chris@69
|
757 opus_multistream_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(5));
|
Chris@69
|
758 opus_multistream_encoder_ctl(enc, OPUS_SET_BITRATE(775410));
|
Chris@69
|
759 {
|
Chris@69
|
760 static const short pcm[1440*3] =
|
Chris@69
|
761 {
|
Chris@69
|
762 30449, 15083, 14088, 31205,-18678,-12830, 14090,-26138,-25337,
|
Chris@69
|
763 -11541, -3254, 27628,-22270, 30953,-16136,-30745, 20991,-17406,
|
Chris@69
|
764 5632,-14330, 28911,-25594, 17408,-20474, 13041, -8731, 2292,
|
Chris@69
|
765 -3860, 24049, 10225,-19220, 10478, -4374, -1199, 148, -330,
|
Chris@69
|
766 -74, 593, 188, 1558, -4152, 15984, 15934, 15934, 15934,
|
Chris@69
|
767 15934, 15934, 15934, 15934, 15934, 15934, 15934, 15934, 1598,
|
Chris@69
|
768 156, 1604, -1163, 2278,-30018,-25821,-21763,-23776, 24066,
|
Chris@69
|
769 9502, 25866,-25055, 10004,-24798, 7204, -4581, -9678, 1554,
|
Chris@69
|
770 10553, 3102, 12193, 2443, 11955, 1213, 10689, -1293, 921,
|
Chris@69
|
771 -4173, 8661, -6049, 8815,-21221,-14854, 23840, -9477, 8549,
|
Chris@69
|
772 5278, 8743, 9375, 6940, 13038, 4826, 14598, 7721,-24308,
|
Chris@69
|
773 -29905,-19703,-17106,-16124, -3287,-26118,-19709,-10769, 24361,
|
Chris@69
|
774 28648, 10274,-11292,-29665,-16417, 24346, 14580, 18707, 26323,
|
Chris@69
|
775 -4410,-17711, 5133, 26328,-14579,-31008, 24583, 18404, 28417,
|
Chris@69
|
776 -24350, 19453, 28642,-32513,-10777, -3079, 30188, -7686, 27635,
|
Chris@69
|
777 -32521,-16384,-20240, -6386, 10986, 23827,-25880,-32752,-23321,
|
Chris@69
|
778 14605, 32231, 780,-13849, 15119, 28647, 4888, -7705, 30750,
|
Chris@69
|
779 64, 0, 32488, 6687,-20758, 19745, -2070, -1, -1,
|
Chris@69
|
780 28, 256, -4608, 7168, 7444, 23557,-21998, 13064, 3345,
|
Chris@69
|
781 -4086,-28915, -8594, 32262, 8461, 27387,-12275, 12012, 23563,
|
Chris@69
|
782 -18719,-28410, 29144,-22271,-32562,-16384, 12528, -6386, 10986,
|
Chris@69
|
783 23827,-25880,-32752,-23321, 14605, 32231, 780,-13849, 15119,
|
Chris@69
|
784 28647, 4888, -7705, 30750, 64, 0, 32488, 6687,-20758,
|
Chris@69
|
785 19745, -2070,-13792, -6414, 28188, -2821, -4585, 7168, 7444,
|
Chris@69
|
786 23557,-21998, 13064, 3345, -4086,-28915, -8694, 32262, 8461,
|
Chris@69
|
787 -14853,-14907,-14907,-14907,-14907, 32767,-14907,-14907,-14907,
|
Chris@69
|
788 -14907,-14907,-14907,-14907,-14907,-14891,-14907,-14907,-14907,
|
Chris@69
|
789 -14907,-14907, 8901, 9375, 6940, 13038, 4826, 14598, 7721,
|
Chris@69
|
790 -24308,-29905,-19703,-17106,-16124, -3287,-26118,-19709,-10769,
|
Chris@69
|
791 24361, 28648, 10274,-11292,-29665,-16417, 24346, 14580, 18707,
|
Chris@69
|
792 26323, -4440,-17711, 5133, 26328,-14579,-31008, 24583, 18404,
|
Chris@69
|
793 28417,-24350, 19453, 28642,-32513,-10777, -3079, 30188, -7686,
|
Chris@69
|
794 27635,-32521,-16384,-20240, -6386, 10986, 23827,-25880,-32752,
|
Chris@69
|
795 -23321, 14605, 32231, 780,-13849, 15119, 28647, 4888, -7705,
|
Chris@69
|
796 -15074,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
797 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
798 -14907,-14907,-14907,-14907, 8192,-14907,-14907,-14907,-14907,
|
Chris@69
|
799 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
800 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
801 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
802 -14907,-14907,-14907,-14907,-14897,-14907,-14907,-14907,-14907,
|
Chris@69
|
803 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
804 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
805 -14907,-15931,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
806 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
807 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
808 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
809 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
810 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
811 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
812 -14907,-14907,-14907,-14907,-14907,-14907,-14907, 26121, 12890,
|
Chris@69
|
813 2604, 12228,-11634, 12299, 5573,-16642, 32452, 29182, 7710,
|
Chris@69
|
814 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
815 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
816 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
817 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
818 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
819 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
820 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
821 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
822 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
823 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
824 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
825 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
826 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
827 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
828 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
829 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
830 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
831 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
832 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
833 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
834 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
835 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
836 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
837 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710, 7710,
|
Chris@69
|
838 7710,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
839 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
840 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
841 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
842 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
843 -14907,-14907,-14907,-14907,-14907,-14907,-10811,-14907,-14907,
|
Chris@69
|
844 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
845 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
846 -14907,-14907,-14917,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
847 -14907,-14907,-14907,-14907,-14907,-14907,-14938,-14907,-14907,
|
Chris@69
|
848 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
849 -14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,-14907,
|
Chris@69
|
850 -14907,-14907,-14907,-14907, -571, -9986, -58, 12542,-18491,
|
Chris@69
|
851 32507, 12838, 6653, 294, -1, 0,-19968, 18368, -4357,
|
Chris@69
|
852 -5696, 2804, 12998,-22802,-22080, -7701, -5183, 486, -3133,
|
Chris@69
|
853 -5660, -1083, 13799,-28726,-11029, 205,-14848, 32464, -1,
|
Chris@69
|
854 -129,-13072, 6380, -7948, 20717, 18425, 17392, 14335, -5646,
|
Chris@69
|
855 30973, -3598, 7188, -3867, 3055, -4247, 5597, -4011,-26427,
|
Chris@69
|
856 -11,-30418, 7922, 2614, 237, -5839,-27413,-17624,-29716,
|
Chris@69
|
857 -13539, 239, 20991, 18164, -4082,-16647,-27386, 19458, 20224,
|
Chris@69
|
858 4619, 19728, -7409,-18186,-25073, 27627,-23539, -7945,-31464,
|
Chris@69
|
859 14330,-12523,-22021, -7701, -5183, 486, -3133, -5660, -1083,
|
Chris@69
|
860 13799,-28726,-11029, 205,-14848, 32464, -1, -129,-13072,
|
Chris@69
|
861 6380, -7948, 20717, 18425, 17392, 14093, -5646, 30973, -3598,
|
Chris@69
|
862 7188, -3867, 3055, 3689, -5401, 4906, -6051, 4250, -6272,
|
Chris@69
|
863 3492, -6343, 3197, -6397, 4041, -6341, 6255, -6381, 239,
|
Chris@69
|
864 20991, 18164, -4082,-16647,-27386, 19458, 20224, 4619, 19728,
|
Chris@69
|
865 -7409,-18186,-25073, 27627,-23539, -7945,-31464, 14330,-12523,
|
Chris@69
|
866 14843, -6130, 30202, -250,-28420, 10467, 16907, -3359, -6644,
|
Chris@69
|
867 31965, 3343,-11727, 2966,-12616, 3064,-13472, 6732,-12349,
|
Chris@69
|
868 5541,-11965, 5530,-10820, -1912, -3637, 32285, -4607, 310,
|
Chris@69
|
869 -32768, 0, -5258, 2106, -6857, 2681, -5449, -3606, -6717,
|
Chris@69
|
870 -5482, -3606, -1853, 4082, -7631, -9808, -1742, -2851, -5112,
|
Chris@69
|
871 64, -868,-13546,-13365,-13365,-13365,-13365,-13365,-13365,
|
Chris@69
|
872 -13365,-13365,-13365,-13365,-13365,-13365,-13365,-13365,-13365,
|
Chris@69
|
873 -13365,-13365,-13365,-13365,-13365,-13365,-13365,-13365,-13365,
|
Chris@69
|
874 -13365,-13365,-13365,-13365,-13365,-13365,-13365,-13365,-13365,
|
Chris@69
|
875 -13365,-13365,-13365,-13365,-13365,-13365,-13365, 7883, -2316,
|
Chris@69
|
876 9086, -3944, 10500, 4285, 10459, -6474, 10204, -6539, 11601,
|
Chris@69
|
877 -6824, 13385, -7142, 13872, -7457, 13670, -7725, 13463, -6887,
|
Chris@69
|
878 12482, -5580, 12600, -4964, 12480, 3254, 11741, -4210,-24819,
|
Chris@69
|
879 23282, 22798, 491, -1774, -1073, 3641, -1304, 28928, -250,
|
Chris@69
|
880 -27396, 6657, -8961, 22524, 19987, 10231, 1791, 8947,-32763,
|
Chris@69
|
881 -26385,-31227, -792,-30461, 8926, 4866, 27863, 27756, 27756,
|
Chris@69
|
882 27756, 27756, 27756, 27756, 27756, 27756, 5630,-11070,-16136,
|
Chris@69
|
883 20671,-11530, 27328, 8179, 5059,-31503,-24379,-19472, 17863,
|
Chris@69
|
884 -29202, 22986, -23, 8909, 8422, 10450
|
Chris@69
|
885 };
|
Chris@69
|
886 err = opus_multistream_encode(enc, pcm, 1440, data, 7380);
|
Chris@69
|
887 /* reads uninitialized data at src/opus_multistream_encoder.c:293 */
|
Chris@69
|
888 assert(err > 0);
|
Chris@69
|
889 }
|
Chris@69
|
890 opus_multistream_encoder_destroy(enc);
|
Chris@69
|
891 return 0;
|
Chris@69
|
892 }
|
Chris@69
|
893
|
Chris@69
|
894 static int ec_enc_shrink_assert(void)
|
Chris@69
|
895 {
|
Chris@69
|
896 OpusEncoder *enc;
|
Chris@69
|
897 int err;
|
Chris@69
|
898 int data_len;
|
Chris@69
|
899 unsigned char data[2000];
|
Chris@69
|
900 static const short pcm1[960] = { 5140 };
|
Chris@69
|
901 static const short pcm2[2880] =
|
Chris@69
|
902 {
|
Chris@69
|
903 -256,-12033, 0, -2817, 6912, 0, -5359, 5200, 3061,
|
Chris@69
|
904 0, -2903, 5652, -1281,-24656,-14433,-24678, 32,-29793,
|
Chris@69
|
905 2870, 0, 4096, 5120, 5140, -234,-20230,-24673,-24633,
|
Chris@69
|
906 -24673,-24705, 0,-32768,-25444,-25444, 0,-25444,-25444,
|
Chris@69
|
907 156,-20480, -7948, -5920, -7968, -7968, 224, 0, 20480,
|
Chris@69
|
908 11, 20496, 13, 20496, 11,-20480, 2292,-20240, 244,
|
Chris@69
|
909 20480, 11, 20496, 11,-20480, 244,-20240, 7156, 20456,
|
Chris@69
|
910 -246,-20243, 244, 128, 244, 20480, 11, 20496, 11,
|
Chris@69
|
911 -20480, 244,-20256, 244, 20480, 256, 0, -246, 16609,
|
Chris@69
|
912 -176, 0, 29872, -4096, -2888, 516, 2896, 4096, 2896,
|
Chris@69
|
913 -20480, -3852, -2896, -1025,-31056,-14433, 244, 1792, -256,
|
Chris@69
|
914 -12033, 0, -2817, 0, 0, -5359, 5200, 3061, 16,
|
Chris@69
|
915 -2903, 5652, -1281,-24656,-14433,-24678, 32,-29793, 2870,
|
Chris@69
|
916 0, 4096, 5120, 5140, -234,-20230,-24673,-24633,-24673,
|
Chris@69
|
917 -24705, 0,-32768,-25444,-25444, 0,-25444,-25444, 156,
|
Chris@69
|
918 -20480, -7973, -5920, -7968, -7968, 224, 0, 20480, 11,
|
Chris@69
|
919 20496, 11, 20496, 11,-20480, 2292,-20213, 244, 20480,
|
Chris@69
|
920 11, 20496, 11,-24698, -2873, 0, 7, -1, 208,
|
Chris@69
|
921 -256, 244, 0, 4352, 20715, -2796, 11,-22272, 5364,
|
Chris@69
|
922 -234,-20230,-24673,-25913, 8351,-24832, 13963, 11, 0,
|
Chris@69
|
923 16, 5140, 5652, -1281,-24656,-14433,-24673, 32671, 159,
|
Chris@69
|
924 0,-25472,-25444, 156,-25600,-25444,-25444, 0, -2896,
|
Chris@69
|
925 -7968, -7960, -7968, -7968, 0, 0, 2896, 4096, 2896,
|
Chris@69
|
926 4096, 2896, 0, -2896, -4088, -2896, 0, 2896, 0,
|
Chris@69
|
927 -2896, -4096, -2896, 11, 2640, -4609, -2896,-32768, -3072,
|
Chris@69
|
928 0, 2896, 4096, 2896, 0, -2896, -4096, -2896, 0,
|
Chris@69
|
929 80, 1, 2816, 0, 20656, 255,-20480, 116,-18192
|
Chris@69
|
930 };
|
Chris@69
|
931 static const short pcm3[2880] = { 0 };
|
Chris@69
|
932
|
Chris@69
|
933 enc = opus_encoder_create(48000, 1, OPUS_APPLICATION_AUDIO, &err);
|
Chris@69
|
934 opus_encoder_ctl(enc, OPUS_SET_COMPLEXITY(10));
|
Chris@69
|
935 opus_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(6));
|
Chris@69
|
936 opus_encoder_ctl(enc, OPUS_SET_BITRATE(6000));
|
Chris@69
|
937 data_len = opus_encode(enc, pcm1, 960, data, 2000);
|
Chris@69
|
938 assert(data_len > 0);
|
Chris@69
|
939
|
Chris@69
|
940 opus_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_VOICE));
|
Chris@69
|
941 opus_encoder_ctl(enc, OPUS_SET_PREDICTION_DISABLED(1));
|
Chris@69
|
942 opus_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_BANDWIDTH_SUPERWIDEBAND));
|
Chris@69
|
943 opus_encoder_ctl(enc, OPUS_SET_INBAND_FEC(1));
|
Chris@69
|
944 opus_encoder_ctl(enc, OPUS_SET_BITRATE(15600));
|
Chris@69
|
945 data_len = opus_encode(enc, pcm2, 2880, data, 122);
|
Chris@69
|
946 assert(data_len > 0);
|
Chris@69
|
947
|
Chris@69
|
948 opus_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
949 opus_encoder_ctl(enc, OPUS_SET_BITRATE(27000));
|
Chris@69
|
950 data_len = opus_encode(enc, pcm3, 2880, data, 122); /* assertion failure */
|
Chris@69
|
951 assert(data_len > 0);
|
Chris@69
|
952
|
Chris@69
|
953 opus_encoder_destroy(enc);
|
Chris@69
|
954 return 0;
|
Chris@69
|
955 }
|
Chris@69
|
956
|
Chris@69
|
957 static int ec_enc_shrink_assert2(void)
|
Chris@69
|
958 {
|
Chris@69
|
959 OpusEncoder *enc;
|
Chris@69
|
960 int err;
|
Chris@69
|
961 int data_len;
|
Chris@69
|
962 unsigned char data[2000];
|
Chris@69
|
963
|
Chris@69
|
964 enc = opus_encoder_create(48000, 1, OPUS_APPLICATION_AUDIO, &err);
|
Chris@69
|
965 opus_encoder_ctl(enc, OPUS_SET_COMPLEXITY(6));
|
Chris@69
|
966 opus_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_VOICE));
|
Chris@69
|
967 opus_encoder_ctl(enc, OPUS_SET_BANDWIDTH(OPUS_BANDWIDTH_FULLBAND));
|
Chris@69
|
968 opus_encoder_ctl(enc, OPUS_SET_PACKET_LOSS_PERC(26));
|
Chris@69
|
969 opus_encoder_ctl(enc, OPUS_SET_BITRATE(27000));
|
Chris@69
|
970 {
|
Chris@69
|
971 static const short pcm[960] = { 0 };
|
Chris@69
|
972 data_len = opus_encode(enc, pcm, 960, data, 2000);
|
Chris@69
|
973 assert(data_len > 0);
|
Chris@69
|
974 }
|
Chris@69
|
975 opus_encoder_ctl(enc, OPUS_SET_SIGNAL(OPUS_SIGNAL_MUSIC));
|
Chris@69
|
976 {
|
Chris@69
|
977 static const short pcm[480] =
|
Chris@69
|
978 {
|
Chris@69
|
979 32767, 32767, 0, 0, 32767, 32767, 0, 0, 32767, 32767,
|
Chris@69
|
980 -32768, -32768, 0, 0, -32768, -32768, 0, 0, -32768, -32768
|
Chris@69
|
981 };
|
Chris@69
|
982 data_len = opus_encode(enc, pcm, 480, data, 19);
|
Chris@69
|
983 assert(data_len > 0);
|
Chris@69
|
984 }
|
Chris@69
|
985 opus_encoder_destroy(enc);
|
Chris@69
|
986 return 0;
|
Chris@69
|
987 }
|
Chris@69
|
988
|
Chris@69
|
989 static int silk_gain_assert(void)
|
Chris@69
|
990 {
|
Chris@69
|
991 OpusEncoder *enc;
|
Chris@69
|
992 int err;
|
Chris@69
|
993 int data_len;
|
Chris@69
|
994 unsigned char data[1000];
|
Chris@69
|
995 static const short pcm1[160] = { 0 };
|
Chris@69
|
996 static const short pcm2[960] =
|
Chris@69
|
997 {
|
Chris@69
|
998 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
999 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
1000 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
1001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
1002 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
1003 32767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
Chris@69
|
1004 0, 0, 0, 0, 32767
|
Chris@69
|
1005 };
|
Chris@69
|
1006
|
Chris@69
|
1007 enc = opus_encoder_create(8000, 1, OPUS_APPLICATION_AUDIO, &err);
|
Chris@69
|
1008 opus_encoder_ctl(enc, OPUS_SET_COMPLEXITY(3));
|
Chris@69
|
1009 opus_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_NARROWBAND));
|
Chris@69
|
1010 opus_encoder_ctl(enc, OPUS_SET_BITRATE(6000));
|
Chris@69
|
1011 data_len = opus_encode(enc, pcm1, 160, data, 1000);
|
Chris@69
|
1012 assert(data_len > 0);
|
Chris@69
|
1013
|
Chris@69
|
1014 opus_encoder_ctl(enc, OPUS_SET_VBR(0));
|
Chris@69
|
1015 opus_encoder_ctl(enc, OPUS_SET_COMPLEXITY(0));
|
Chris@69
|
1016 opus_encoder_ctl(enc, OPUS_SET_MAX_BANDWIDTH(OPUS_BANDWIDTH_MEDIUMBAND));
|
Chris@69
|
1017 opus_encoder_ctl(enc, OPUS_SET_BITRATE(2867));
|
Chris@69
|
1018 data_len = opus_encode(enc, pcm2, 960, data, 1000);
|
Chris@69
|
1019 assert(data_len > 0);
|
Chris@69
|
1020
|
Chris@69
|
1021 opus_encoder_destroy(enc);
|
Chris@69
|
1022 return 0;
|
Chris@69
|
1023 }
|
Chris@69
|
1024
|
Chris@69
|
1025 void regression_test(void)
|
Chris@69
|
1026 {
|
Chris@69
|
1027 fprintf(stderr, "Running simple tests for bugs that have been fixed previously\n");
|
Chris@69
|
1028 celt_ec_internal_error();
|
Chris@69
|
1029 mscbr_encode_fail10();
|
Chris@69
|
1030 mscbr_encode_fail();
|
Chris@69
|
1031 surround_analysis_uninit();
|
Chris@69
|
1032 ec_enc_shrink_assert();
|
Chris@69
|
1033 ec_enc_shrink_assert2();
|
Chris@69
|
1034 silk_gain_assert();
|
Chris@69
|
1035 }
|