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.