annotate miscutil/amr122bits.c @ 107:41f1ae68d253

amr2efr & efr2amr cosmetic: cleaner approach to bit reshuffling
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 27 Nov 2022 21:02:07 +0000
parents d86f866489e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
101
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 * This C module provides the bit reordering table to be used for conversion
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 * between EFR in ETSI TS 101 318 representation and AMR 12k2 in RFC 4867
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 * or AMR IF1 representation, which is the table mapping from AMR IF1 bit
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 * order for 12k2 mode to the "natural" bit order of codec parameters.
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 */
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 #include <stdint.h>
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 const uint8_t amr_122_bit_order[244] = {
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 10, 11, 12, 13, 14, 23, 15, 16, 17, 18,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 19, 20, 21, 22, 24, 25, 26, 27, 28, 38,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 141, 39, 142, 40, 143, 41, 144, 42, 145, 43,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 146, 44, 147, 45, 148, 46, 149, 47, 97, 150,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 200, 48, 98, 151, 201, 49, 99, 152, 202, 86,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 136, 189, 239, 87, 137, 190, 240, 88, 138, 191,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 241, 91, 194, 92, 195, 93, 196, 94, 197, 95,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 198, 29, 30, 31, 32, 33, 34, 35, 50, 100,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 153, 203, 89, 139, 192, 242, 51, 101, 154, 204,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 55, 105, 158, 208, 90, 140, 193, 243, 59, 109,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 162, 212, 63, 113, 166, 216, 67, 117, 170, 220,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 36, 37, 54, 53, 52, 58, 57, 56, 62, 61,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 60, 66, 65, 64, 70, 69, 68, 104, 103, 102,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 108, 107, 106, 112, 111, 110, 116, 115, 114, 120,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 119, 118, 157, 156, 155, 161, 160, 159, 165, 164,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 163, 169, 168, 167, 173, 172, 171, 207, 206, 205,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 211, 210, 209, 215, 214, 213, 219, 218, 217, 223,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 222, 221, 73, 72, 71, 76, 75, 74, 79, 78,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 77, 82, 81, 80, 85, 84, 83, 123, 122, 121,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 126, 125, 124, 129, 128, 127, 132, 131, 130, 135,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 134, 133, 176, 175, 174, 179, 178, 177, 182, 181,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 180, 185, 184, 183, 188, 187, 186, 226, 225, 224,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 229, 228, 227, 232, 231, 230, 235, 234, 233, 238,
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 237, 236, 96, 199
d86f866489e9 gsm-amr2efr utility written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 };