spandsp  3.0.0
v34_probe_signals.h
1 /* THIS FILE WAS AUTOMATICALLY GENERATED - ANY MODIFICATIONS MADE TO THIS
2  FILE MAY BE OVERWRITTEN DURING FUTURE BUILDS OF THE SOFTWARE */
3 
4 static const struct
5 {
6  int32_t phase_rate;
7  int32_t starting_phase;
8 } line_probe[] =
9 {
10  {0x04CCCCCC, 0x00000000},
11  {0x09999999, 0x80000000},
12  {0x0E666666, 0x00000000},
13  {0x13333333, 0x00000000},
14  {0x18000000, 0x00000000},
15  {0x21999999, 0x00000000},
16  {0x2B333333, 0x00000000},
17  {0x30000000, 0x00000000},
18  {0x34CCCCCC, 0x80000000},
19  {0x3E666666, 0x00000000},
20  {0x43333333, 0x00000000},
21  {0x48000000, 0x80000000},
22  {0x51999999, 0x00000000},
23  {0x56666666, 0x80000000},
24  {0x5B333333, 0x00000000},
25  {0x60000000, 0x80000000},
26  {0x64CCCCCC, 0x80000000},
27  {0x69999999, 0x80000000},
28  {0x6E666666, 0x80000000},
29  {0x73333333, 0x00000000},
30  {0x78000000, 0x00000000}
31 };
32 
33 #define LINE_PROBE_SAMPLES 160
34 
35 #if defined(SPANDSP_USE_FIXED_POINTx)
36 static const int16_t line_probe_samples[LINE_PROBE_SAMPLES] =
37 #else
38 static const float line_probe_samples[LINE_PROBE_SAMPLES] =
39 #endif
40 {
41  LINE_PROBE_SCALE( 24903.28f),
42  LINE_PROBE_SCALE( 24514.95f),
43  LINE_PROBE_SCALE( 1310.90f),
44  LINE_PROBE_SCALE(-16258.72f),
45  LINE_PROBE_SCALE( 9817.84f),
46  LINE_PROBE_SCALE(-24025.86f),
47  LINE_PROBE_SCALE( 8281.32f),
48  LINE_PROBE_SCALE( -6871.09f),
49  LINE_PROBE_SCALE( -1708.98f),
50  LINE_PROBE_SCALE( 7508.05f),
51  LINE_PROBE_SCALE(-21770.92f),
52  LINE_PROBE_SCALE( 22231.72f),
53  LINE_PROBE_SCALE( 15049.83f),
54  LINE_PROBE_SCALE( 19801.68f),
55  LINE_PROBE_SCALE(-16424.84f),
56  LINE_PROBE_SCALE( 5252.57f),
57  LINE_PROBE_SCALE( 22274.17f),
58  LINE_PROBE_SCALE( 14530.10f),
59  LINE_PROBE_SCALE(-19975.32f),
60  LINE_PROBE_SCALE( -3076.90f),
61  LINE_PROBE_SCALE( 1458.80f),
62  LINE_PROBE_SCALE(-23447.22f),
63  LINE_PROBE_SCALE( 19443.63f),
64  LINE_PROBE_SCALE( 2000.17f),
65  LINE_PROBE_SCALE(-22319.84f),
66  LINE_PROBE_SCALE( -8546.17f),
67  LINE_PROBE_SCALE(-17045.09f),
68  LINE_PROBE_SCALE(-22641.13f),
69  LINE_PROBE_SCALE( -7647.30f),
70  LINE_PROBE_SCALE(-18923.08f),
71  LINE_PROBE_SCALE(-11525.04f),
72  LINE_PROBE_SCALE( 22730.19f),
73  LINE_PROBE_SCALE(-11137.09f),
74  LINE_PROBE_SCALE(-13550.21f),
75  LINE_PROBE_SCALE( 8957.77f),
76  LINE_PROBE_SCALE(-23987.32f),
77  LINE_PROBE_SCALE( 5328.12f),
78  LINE_PROBE_SCALE( 20795.55f),
79  LINE_PROBE_SCALE( 16732.44f),
80  LINE_PROBE_SCALE(-17855.91f),
81  LINE_PROBE_SCALE( 9961.31f),
82  LINE_PROBE_SCALE( 17258.87f),
83  LINE_PROBE_SCALE( 22939.52f),
84  LINE_PROBE_SCALE( -6971.65f),
85  LINE_PROBE_SCALE(-10695.69f),
86  LINE_PROBE_SCALE( 13711.92f),
87  LINE_PROBE_SCALE(-18119.58f),
88  LINE_PROBE_SCALE( 15541.35f),
89  LINE_PROBE_SCALE(-22274.17f),
90  LINE_PROBE_SCALE( 1702.23f),
91  LINE_PROBE_SCALE( -5479.98f),
92  LINE_PROBE_SCALE(-11407.13f),
93  LINE_PROBE_SCALE( 21227.27f),
94  LINE_PROBE_SCALE( 25013.07f),
95  LINE_PROBE_SCALE( 25168.02f),
96  LINE_PROBE_SCALE( 13430.54f),
97  LINE_PROBE_SCALE(-18701.18f),
98  LINE_PROBE_SCALE( 6183.88f),
99  LINE_PROBE_SCALE(-13160.21f),
100  LINE_PROBE_SCALE( -8287.47f),
101  LINE_PROBE_SCALE( 8502.51f),
102  LINE_PROBE_SCALE(-15974.55f),
103  LINE_PROBE_SCALE( 18099.42f),
104  LINE_PROBE_SCALE(-23453.54f),
105  LINE_PROBE_SCALE( 11137.09f),
106  LINE_PROBE_SCALE( 18037.90f),
107  LINE_PROBE_SCALE( 21093.02f),
108  LINE_PROBE_SCALE( -4873.47f),
109  LINE_PROBE_SCALE( -8707.18f),
110  LINE_PROBE_SCALE( 22003.29f),
111  LINE_PROBE_SCALE( 18853.32f),
112  LINE_PROBE_SCALE( -7950.18f),
113  LINE_PROBE_SCALE(-17037.87f),
114  LINE_PROBE_SCALE( 11000.25f),
115  LINE_PROBE_SCALE(-24223.48f),
116  LINE_PROBE_SCALE( 6126.40f),
117  LINE_PROBE_SCALE( 15472.35f),
118  LINE_PROBE_SCALE(-20246.24f),
119  LINE_PROBE_SCALE(-13154.89f),
120  LINE_PROBE_SCALE(-11026.84f),
121  LINE_PROBE_SCALE(-24903.28f),
122  LINE_PROBE_SCALE(-11026.84f),
123  LINE_PROBE_SCALE(-13154.89f),
124  LINE_PROBE_SCALE(-20246.24f),
125  LINE_PROBE_SCALE( 15472.35f),
126  LINE_PROBE_SCALE( 6126.40f),
127  LINE_PROBE_SCALE(-24223.48f),
128  LINE_PROBE_SCALE( 11000.25f),
129  LINE_PROBE_SCALE(-17037.87f),
130  LINE_PROBE_SCALE( -7950.18f),
131  LINE_PROBE_SCALE( 18853.32f),
132  LINE_PROBE_SCALE( 22003.29f),
133  LINE_PROBE_SCALE( -8707.18f),
134  LINE_PROBE_SCALE( -4873.47f),
135  LINE_PROBE_SCALE( 21093.02f),
136  LINE_PROBE_SCALE( 18037.90f),
137  LINE_PROBE_SCALE( 11137.09f),
138  LINE_PROBE_SCALE(-23453.54f),
139  LINE_PROBE_SCALE( 18099.42f),
140  LINE_PROBE_SCALE(-15974.55f),
141  LINE_PROBE_SCALE( 8502.51f),
142  LINE_PROBE_SCALE( -8287.47f),
143  LINE_PROBE_SCALE(-13160.21f),
144  LINE_PROBE_SCALE( 6183.88f),
145  LINE_PROBE_SCALE(-18701.18f),
146  LINE_PROBE_SCALE( 13430.54f),
147  LINE_PROBE_SCALE( 25168.02f),
148  LINE_PROBE_SCALE( 25013.07f),
149  LINE_PROBE_SCALE( 21227.27f),
150  LINE_PROBE_SCALE(-11407.13f),
151  LINE_PROBE_SCALE( -5479.98f),
152  LINE_PROBE_SCALE( 1702.23f),
153  LINE_PROBE_SCALE(-22274.17f),
154  LINE_PROBE_SCALE( 15541.35f),
155  LINE_PROBE_SCALE(-18119.58f),
156  LINE_PROBE_SCALE( 13711.92f),
157  LINE_PROBE_SCALE(-10695.69f),
158  LINE_PROBE_SCALE( -6971.65f),
159  LINE_PROBE_SCALE( 22939.52f),
160  LINE_PROBE_SCALE( 17258.87f),
161  LINE_PROBE_SCALE( 9961.31f),
162  LINE_PROBE_SCALE(-17855.91f),
163  LINE_PROBE_SCALE( 16732.44f),
164  LINE_PROBE_SCALE( 20795.55f),
165  LINE_PROBE_SCALE( 5328.12f),
166  LINE_PROBE_SCALE(-23987.32f),
167  LINE_PROBE_SCALE( 8957.77f),
168  LINE_PROBE_SCALE(-13550.21f),
169  LINE_PROBE_SCALE(-11137.09f),
170  LINE_PROBE_SCALE( 22730.19f),
171  LINE_PROBE_SCALE(-11525.04f),
172  LINE_PROBE_SCALE(-18923.08f),
173  LINE_PROBE_SCALE( -7647.30f),
174  LINE_PROBE_SCALE(-22641.13f),
175  LINE_PROBE_SCALE(-17045.09f),
176  LINE_PROBE_SCALE( -8546.17f),
177  LINE_PROBE_SCALE(-22319.84f),
178  LINE_PROBE_SCALE( 2000.17f),
179  LINE_PROBE_SCALE( 19443.63f),
180  LINE_PROBE_SCALE(-23447.22f),
181  LINE_PROBE_SCALE( 1458.80f),
182  LINE_PROBE_SCALE( -3076.90f),
183  LINE_PROBE_SCALE(-19975.32f),
184  LINE_PROBE_SCALE( 14530.10f),
185  LINE_PROBE_SCALE( 22274.17f),
186  LINE_PROBE_SCALE( 5252.57f),
187  LINE_PROBE_SCALE(-16424.84f),
188  LINE_PROBE_SCALE( 19801.68f),
189  LINE_PROBE_SCALE( 15049.83f),
190  LINE_PROBE_SCALE( 22231.72f),
191  LINE_PROBE_SCALE(-21770.92f),
192  LINE_PROBE_SCALE( 7508.05f),
193  LINE_PROBE_SCALE( -1708.98f),
194  LINE_PROBE_SCALE( -6871.09f),
195  LINE_PROBE_SCALE( 8281.32f),
196  LINE_PROBE_SCALE(-24025.86f),
197  LINE_PROBE_SCALE( 9817.84f),
198  LINE_PROBE_SCALE(-16258.72f),
199  LINE_PROBE_SCALE( 1310.90f),
200  LINE_PROBE_SCALE( 24514.95f)
201 };
202 
203 /* The 48 symbol PP signal, which is repeated 6 times, to make a 288 symbol sequence */
204 /* See V.34/10.1.3.5 */
205 #define PP_REPEATS 6
206 #define PP_SYMBOLS (8*PP_REPEATS)
207 
208 #if defined(SPANDSP_USE_FIXED_POINTx)
209 static const complexi16_t pp_symbols[PP_SYMBOLS] =
210 #else
211 static const complexf_t pp_symbols[PP_SYMBOLS] =
212 #endif
213 {
214  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
215  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
216  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
217  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
218  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
219  {PP_SYMBOL_SCALE(-0.8660254f), PP_SYMBOL_SCALE( 0.5000000f)},
220  {PP_SYMBOL_SCALE(-1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
221  {PP_SYMBOL_SCALE(-0.8660254f), PP_SYMBOL_SCALE(-0.5000000f)},
222  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
223  {PP_SYMBOL_SCALE( 0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
224  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
225  {PP_SYMBOL_SCALE(-1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
226  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
227  {PP_SYMBOL_SCALE( 0.0000000f), PP_SYMBOL_SCALE( 1.0000000f)},
228  {PP_SYMBOL_SCALE(-1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
229  {PP_SYMBOL_SCALE(-0.0000000f), PP_SYMBOL_SCALE(-1.0000000f)},
230  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
231  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE(-0.8660254f)},
232  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE(-0.0000000f)},
233  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
234  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
235  {PP_SYMBOL_SCALE(-0.8660254f), PP_SYMBOL_SCALE( 0.5000000f)},
236  {PP_SYMBOL_SCALE( 0.5000000f), PP_SYMBOL_SCALE(-0.8660254f)},
237  {PP_SYMBOL_SCALE( 0.0000000f), PP_SYMBOL_SCALE( 1.0000000f)},
238  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
239  {PP_SYMBOL_SCALE(-1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
240  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE(-0.0000000f)},
241  {PP_SYMBOL_SCALE(-1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
242  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
243  {PP_SYMBOL_SCALE( 0.8660254f), PP_SYMBOL_SCALE(-0.5000000f)},
244  {PP_SYMBOL_SCALE(-1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
245  {PP_SYMBOL_SCALE( 0.8660254f), PP_SYMBOL_SCALE( 0.5000000f)},
246  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
247  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE(-0.8660254f)},
248  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
249  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE(-0.0000000f)},
250  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
251  {PP_SYMBOL_SCALE(-0.0000000f), PP_SYMBOL_SCALE(-1.0000000f)},
252  {PP_SYMBOL_SCALE(-1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
253  {PP_SYMBOL_SCALE( 0.0000000f), PP_SYMBOL_SCALE( 1.0000000f)},
254  {PP_SYMBOL_SCALE(-0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
255  {PP_SYMBOL_SCALE( 0.5000000f), PP_SYMBOL_SCALE( 0.8660254f)},
256  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE(-0.0000000f)},
257  {PP_SYMBOL_SCALE( 0.5000000f), PP_SYMBOL_SCALE(-0.8660254f)},
258  {PP_SYMBOL_SCALE( 1.0000000f), PP_SYMBOL_SCALE( 0.0000000f)},
259  {PP_SYMBOL_SCALE( 0.8660254f), PP_SYMBOL_SCALE(-0.5000000f)},
260  {PP_SYMBOL_SCALE( 0.5000000f), PP_SYMBOL_SCALE(-0.8660254f)},
261  {PP_SYMBOL_SCALE(-0.0000000f), PP_SYMBOL_SCALE(-1.0000000f)}
262 };
263 
264 /* The 8 symbol PPh signal, which is repeated 4 times, to make a 32 symbol sequence */
265 /* See V.34/10.2.4.5 */
266 #define PPH_REPEATS 4
267 #define PPH_SYMBOLS (8*PPH_REPEATS)
268 
269 #if defined(SPANDSP_USE_FIXED_POINTx)
270 static const complexi16_t pph_symbols[PPH_SYMBOLS] =
271 #else
272 static const complexf_t pph_symbols[PPH_SYMBOLS] =
273 #endif
274 {
275  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
276  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
277  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
278  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
279  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
280  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
281  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
282  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
283  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
284  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
285  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
286  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
287  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
288  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
289  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
290  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
291  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
292  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
293  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
294  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
295  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
296  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
297  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
298  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
299  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
300  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
301  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
302  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
303  {PP_SYMBOL_SCALE( 0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 45 degrees */
304  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
305  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE( 0.7071068f)}, /* 135 degrees */
306  {PP_SYMBOL_SCALE(-0.7071068f), PP_SYMBOL_SCALE(-0.7071068f)}, /* 225 degrees */
307 };
308 
Definition: complex.h:88
Definition: complex.h:42