FreeCalypso > hg > gsm-codec-lib
annotate doc/AMR-hex-utils @ 608:d4e42ec4a688 default tip
hrutil: new program gsmhr-decode-r
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Fri, 05 Dec 2025 09:01:14 +0000 |
| parents | 24aba0e7aa35 |
| children |
| rev | line source |
|---|---|
|
592
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 As Themyscira Wireless work extends further into AMR, we now have the option of |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 storing sequences of AMR RTP payloads in a TW-TS-005 hexadecimal file. (See |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 TW-TS-005 article.) TW-TS-005 was originally intended for FR/EFR and HRv1 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 codecs, but beginning with spec version 1.1.0, newly added Annex C specifies |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 how TW-TS-005 hex format may be used for AMR. As explained in that annex, any |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 workflow involving TW-TS-005 Annex C hex files requires out-of-band knowledge |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 as to which RTP payload format is captured: bandwidth-efficient (BWE) or |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 octet-aligned (OA). |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 The following format conversion utilities are provided for working with |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 TW-TS-005 Annex C hex files: |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 amr-hex-bwe2oa Both input and output are hex files; input is BWE, output is OA. |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 amr-hex-oa2bwe Both input and output are hex files; input is OA, output is BWE. |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 amr-hexoa2ietf Input is a hex file in OA format, output is RFC 4867 storage |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 format (binary *.amr). |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 amr-ietf2hexoa Input is RFC 4867 storage format (binary *.amr), output is |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 TW-TS-005 hex with RTP payloads in OA format. |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 Input to amr-hex-oa2bwe and amr-hexoa2ietf conversion utilities may be either |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 standard RFC 4867 OA or TW-TS-006 OAX (OA extended) - however, extended |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 information content in OAX format cannot be converted to BWE or RFC 4867 storage |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 format, hence any such extended info will be lost. However, in the absence of |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 OAX, using only standard RTP payload formats per RFC 4867, conversion between |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 BWE and OA is lossless. |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 Conversion from TW-TS-005 Annex C to RFC 4867 storage format is lossy: CMR field |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 exists in RTP and thus in TW-TS-005 hex recordings, but not in RFC 4867 storage |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 format. amr-ietf2hexoa conversion utility sets CMR to 15 (NO_DATA); if some |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 other CMR is desired, the desired effect can be trivially achieved by applying |
|
24aba0e7aa35
document AMR hex (TW-TS-005 Annex C) utilities addition
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 sed to amr-ietf2hexoa output. |
