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 )  uncom­
       presses its input on standard output, but leaves the  com­
       pressed .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 calcu­
              lating  the  GSM  long-term  correlation lag during
              encoding.  (The multiplications that do this are  a
              bottleneck of the algorithm.)  The resulting encod­
              ing 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.

              but without a multiplication instruction, -F sacri­
              fices   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 suf­
              fix .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)


Man(1) output converted with man2html