NAME¶
toast — GSM 06.10 lossy sound compression
SYNOPSIS¶
toast [
-cdfpvhualsFC ] [
filename... ]
untoast [
-cfpvhuaslF ] [
filename... ]
tcat [
-vhuaslF ] [
filename... ]
DESCRIPTION¶
Toast compresses the sound files given on its command line. Each file is
replaced by a file with the extension
.gsm . If no files are specified,
the compression is applied to the standard input, and its result is written to
standard output.
Toasted files can be restored to something not quite unlike their original form
by running toast
-d , or
untoast , on the .gsm-files or standard
input.
The program
tcat (the same as running
untoast -c ) uncompresses
its input on standard output, but leaves the compressed .gsm-files alone.
When files are compressed or uncompressed into other files, the ownership (if
run by root), modes, accessed and modified times are maintained between both
versions.
OPTIONS¶
- -c
- (cat) Write to the standard output; no files are
changed.
- -d
- (decode) Decode, rather than encode, the files.
- -f
- (force) Force replacement of output files if they exist. If
-f is omitted and toast (or untoast) is run interactively from a terminal,
the user is prompted as to whether the file should be replaced.
- -p
- (precious) Do not delete the source files. Source files are
implicitly left alone whenever -c is specified or tcat is run.
- -C
- (LTP cut-off) Ignore most sample values when calculating
the GSM long-term correlation lag during encoding. (The multiplications
that do this are a bottleneck of the algorithm.) The resulting encoding
process will not produce exactly the same results as GSM 06.10 would, but
remains close enough to be compatible.
The -C option applies only to the encoder and is silently ignored by
the decoder.
- -F
- (fast) On systems with a floating point processor, but
without a multiplication instruction, -F sacrifices standard conformance
to performance and nearly doubles the speed of the algorithm.
The resulting encoding and decoding process will not produce exactly the
same results as GSM 06.10 would, but remains close enough to be
compatible.
The default is standard-conforming operation.
- -v
- (version) outputs the version of toast (or untoast or
tcat) to stdout and exits.
- -h
- (help) prints a short overview of the options.
Toast, untoast and tcat try to guess the appropriate audio data format from the
file suffix. Command line options can also specify a format to be used for all
files.
The following formats are supported:
- -u
- (μU-law) 8 kHz, 8 bit μU-law encoding (file
suffix .u)
- -a
- (A-law) 8 kHz, 8 bit A-law encoding (file suffix .A)
- -s
- (Sun audio) 8 kHz, 8 bit μU-law encoding with audio
header (file suffix .au)
- -l
- (linear) 8 kHz, 16 bit signed linear encoding in host byte
order with 13 significant bits (file suffix .l)
In absence of options or suffixes to specify a format, μU-law encoding as
forced by -u is assumed.
PECULIARITIES¶
A four bit magic number is prefixed to each 32 1/2-byte GSM frame, mainly
because 32 1/2-bytes are rather clumsy to handle.
WARNING¶
The compression algorithm used is a lossy compression algorithm devised
especially for speech; on no account should it be used for text, pictures or
any other non-speech-data you consider valuable.
BUGS¶
Please direct bug reports to jutta@cs.tu-berlin.de.
SEE ALSO¶
gsm(3)