The main author of libsndfile is Erik de Castro Lopo <erikd@mega-nerd.com>
apart from code in the following directories:

 - src/GSM610 : Written by Jutta Degener <jutta@cs.tu-berlin.de> and Carsten
   Bormann <cabo@cs.tu-berlin.de>. They should not be contacted in relation to
   libsndfile or the GSM 6.10 code that is part of libsndfile. Their original
   code can be found at:

       http://kbs.cs.tu-berlin.de/~jutta/toast.html

 - src/G72x : Released by Sun Microsystems, Inc. to the public domain. Minor
   modifications were required to integrate these files into libsndfile. The
   changes are listed in src/G72x/ChangeLog.

