Please consider a donation to the Higher Intellect project. See https://preterhuman.net/donate.php or the Donate to Higher Intellect page for more info.

Audiofile-0.2.3

From Higher Intellect Vintage Wiki

The Silicon Graphics Audio File Library provides a uniform programming interface to standard digital audio file formats.

Currently supported sound file formats include AIFF/AIFF-C, WAVE, NeXT/Sun .snd/.au, and Berkeley/IRCAM/CARL. Supported compression formats are currently G.711 mu-law and A-law.

Key goals of the Audio File Library are file format transparency and data format transparency. The same calls for opening a file, accessing and manipulating audio metadata (e.g., sample rate, sample format, textual information, MIDI parameters), and reading/writing sample data will work with any supported audio file format. Likewise, the format of the audio data presented to the application need not be tied to the format of the data contained in the file.

The Audio File Library Project home page has more information.


NOTE: Developers intending to use this distribution of libaudiofile for application development should be sure to read the information below. Users installing libaudiofile for the runtime environment only need not read any further.


Developers intending to use this library for development of other freeware packages or their own software applications will need to be familiar with a few peculiarities due to the way that this library is packaged and installed. The reasons for this installation strategy are described further in the fw_common product release notes.

The header files and libraries in this package are installed into /usr/freeware. This means that when building software using this distribution of libaudiofile you should be sure to do the following:

  • Include the following flag on your compile lines:
    • -I/usr/freeware/include
    This flag will cause your compilations to correctly find the library's header files at compile time.

  • Include the following flag on your link lines:
    • -L/usr/freeware/lib32 (if using n32 ABI)
    • -L/usr/freeware/lib64 (if using 64 ABI)
    • This flag will cause the linker to correctly find the library's archive or shared object files at link time.

    • Additionally, include the following flag on your link lines:
      • -rpath /usr/freeware/lib32 (if using n32 ABI)
      • -rpath /usr/freeware/lib64 (if using 64 ABI)
      • This flag will allow the binary to locate the shared object library files when the application is run. This is required since the shared objects are stored in these /usr/freeware subdirectories which are not searched by the run-time linker by default.

      • Finally, if you are building an installable package for inst (contributing to freeware, for example) be sure to make your package depend upon this package. Add the following line to your spec file:
        • prereq ( fw_audiofile.sw.lib 1270000000 1289999900 )
        • Following these guidelines will allow your application to safely and easily use the software in this package.