August 15, 1996 Audio File I/O routines The AFsp package is a library of routines for reading and writing audio files. The emphasis is on providing support for the type of audio file used by the speech processing research community. The routines have been designed to be easy to use, yet provide transparent support the reading of several audio file formats. A secondary purpose for distributing these routines is to encourage the use of a standard audio file format for the header information in the output files. Audio File Formats: The following file formats are supported for reading. - Headerless audio files - Sun audio files - RIFF WAVE files - AIFF/AIFF-C audio files - NIST SPHERE audio files - IRCAM soundfiles - INRS-Telecom audio files - ESPS sampled data feature files - Text audio files (NATO/ESPRIT CD-ROM format) The following file formats are supported for writing. - Headerless audio files - AFsp (Sun) audio files - RIFF WAVE files - AIFF-C audio files The audio file open routine automatically senses the input file type. The data format for the file is passed to the audio file reading routines. The audio file reading routine does byte swapping and format conversion on the fly as the file is read. The user sees float data without needing to worry about the underlying data format. Audio output files can be one of several standard file types. One of these is an AFsp audio file, a compatible extension of Sun audio files with additional header information. Once a file is opened for writing, the user calls routines which take the user's float data and do byte swapping and format conversion of the data transparently. The AFsp routines are written in C and have been tested on DEC, HP, SGI, Sun, and PC-386 machines, using a number of different compilers (ANSI and non-ANSI). Several audio file utilities are included in the package. These programs can also serve as templates for developing other audio file processing routines. InfoAudio - display information about an audio file. CompAudio - compare audio files, producing statistics and signal-to-noise ratio figures. ConcatAudio - concatenate samples from audio files. CopyAudio - copy audio files. This program combines samples from input audio files (an arbitrary linear combination) and writes them to the output file in a user selectable format. One application is to provide format conversion for an audio file; another is to combine samples from multi-channel files. FiltAudio - filter audio files. This program filters an audio file with an FIR, IIR or all-pole filter. GenNoise - generate noise. This program generates an audio file containing Gaussian white noise. LPanal - demonstration program to do LPC analysis on a speech file. LPsyn - demonstation program to do LPC synthesis from a residual file. ResampAudio - resample data from an audio file. This process involves interpolating between the samples in the original file to create a new sequence of samples with a new spacing (sampling rate). The AFsp routines form part of a signal processing library. The full library is available for anonymous ftp as libtsp-VxRx.tar.Z. The AFsp routines are covered by copyright, see the file "Copying" for details of the distribution conditions. AFsp-V2R1.tar.Z anonymous ftp from ftp.TSP.EE.McGill.CA in /pub/AFsp ============= Changes in V2R1 - support for 8-bit data (Sun, WAVE, AIFF-C files) Changes in V2R0 - ResampAudio - numerous support routine changes Changes in V1R13 - support for text audio files Changes in V1R12 - HTML documentation - demonstration programs for LPC analysis and synthesis Changes in V1R11 - fix for UTgetHost under Solaris - update CompAudio (segment length can be specified) - update InfoAudio (more flexible print option) - fix for FiltAudio Changes in V1R10 - added ConcatAudio - A-law companding - AIFF/AIFF-C files for read - RIFF WAVE and AIFF-C files for write Changes in V1R10a - fix for long header info strings Changes in V1R9 - changes for MS-DOS Changes in V1R8 - changes for Sun CC compiler Changes in V1R7 - improved IRCAM file support Changes in V1R6 - added support for WAVES format files Changes in V1R5 - changes for SGI workstations Changes in V1R4: - added GenNoise - added man pages ============= Peter Kabal Department of Electrical Engineering McGill University +1 514 398-7130 +1 514 398-4470 Fax kabal@TSP.EE.McGill.CA $Id: README,v 1.29 1996/08/15 14:19:12 kabal Exp $