FreeCalypso > hg > gsm-codec-lib
changeset 305:a053cf0bac04
doc/Codec-utils: update for libgsmfr2
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 15 Apr 2024 23:41:39 +0000 |
parents | 03b0702f4463 |
children | 047c198408c8 |
files | doc/Codec-utils |
diffstat | 1 files changed, 28 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/Codec-utils Mon Apr 15 23:12:10 2024 +0000 +++ b/doc/Codec-utils Mon Apr 15 23:41:39 2024 +0000 @@ -8,12 +8,12 @@ programs, the present package offers equivalent command line utilities for GSM FR and EFR codecs. Here they are: -gsmfr-encode This utility reads linear PCM from a WAV file, runs libgsm - 06.10 encoder and writes the output in the classic .gsm format - (directly abutted FR codec frames of 33 bytes each). We don't - currently have a Tx-side DTX implementation (VAD etc) for GSM - FR, hence the output from gsmfr-encode will always consist of - good speech frames only. +gsmfr-encode This utility reads linear PCM from a WAV file, runs the + bit-exact GSM 06.10 encoder and writes the output in the + classic .gsm format (directly abutted FR codec frames of 33 + bytes each). We don't currently have a Tx-side DTX + implementation (VAD etc) for GSM-FR, hence the output from + gsmfr-encode will always consist of good speech frames only. gsmfr-decode This utility reads our gsmx format (see Binary-file-format article), which is a superset of the classic libgsm format. @@ -22,9 +22,9 @@ can also contain SID frames and/or BFI markers. The processing performed by gsmfr-decode begins with our FR1 Rx DTX handler preprocessor, which will be an identity transform for pure .gsm - input but becomes important for real-world input containing SIDs - and BFIs, and is followed by gsm_decode() from libgsm. The - decoded output is written as WAV. + input (most of the time) but becomes important for real-world + input containing SIDs and BFIs, and is followed by the bit-exact + GSM 06.10 decoder. The decoded output is written as WAV. gsmefr-encode This utility reads linear PCM from a WAV file, runs our EFR encoder (Themyscira libgsmefr) and writes the output in our gsmx @@ -46,3 +46,22 @@ gsmefr-decode-r Please see PCM-file-formats article for the rationale. + +Additions for libgsmfr2 +======================= + +With the introduction of libgsmfr2, gsmfr-* codec utilities have undergone some +changes: + +* gsmfr-decode and gsmfr-decode-r now implement the optional decoder homing + feature, detecting and acting upon GSM 06.10 decoder homing frames. + +* gsmfr-encode-r takes an optional -h flag that enables the encoder homing + function; it is disabled by default. The same feature was not replicated in + WAV-reading gsmfr-encode, as WAV format is poorly suited for tinkering- + oriented bit-exact work. + +* There is a new utility named gsmfr-decode-rb, where rb stands for "raw basic". + This utility emits "robe" output like gsmfr-decode-r, but it performs only + "basic" GSM 06.10 decoding, without the Rx DTX preprocessor step. BFI frame + gaps in input are not allowed, and there is no SID detection.