aboutsummaryrefslogtreecommitdiff

PortAudio Binding for the Ada Programming Language

This is a thick binding of PortAudio. So effort has been made to get rid of all C-isms and C-specific types wherever possible. In particular:

  • Pa_Initialize and Pa_Terminate are now automatic
  • All error codes have been converted to exceptions
  • Void pointers are completely absent
  • Standard error is suppressed in C during init, so no unexpected text output

The package hierarchy is as follows:

  • Portaudio (Version information, exceptions, and a few common minor types)
    • Portaudio.Devices (Host_API and device related things)
    • Portaudio.Streams (Streams, sample buffers, and callbacks)

A few short example programs are available in the example subdirectory.

Dependencies

Build time:

  • gcc
  • GNAT
  • GPRbuild
  • PortAudio

Run time:

  • PortAudio

Building and Installation

This repository is written to use the GNAT Project Manager build tools. To build, use the following command

gprbuild portaudio.gpr

There is a single build switch of -Xbuild which can have a value of release (the default) or debug.

To install the binding, use

gprinstall -p -m portaudio.gpr

The other gpr file example.gpr can be used to build the short example programs provided.

For further information on the build tools, consult the GPRbuild docs.

Credits and Licensing

This binding and the Ada test/example programs were written by Jedidiah Barber.

All code of this binding and example programs is released into the public domain. Consult unlicense.txt for further information.