summaryrefslogtreecommitdiff
path: root/readme.txt
blob: 71e6d4600793fe9a01171af4f1257bf1f55de471 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64


PortAudio Binding for the Ada Programming Language
==================================================


Overview
--------

This is a thick binding, 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

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 /example/.


Dependencies
------------

An Ada 2012 compiler and standard library (build)
A C compiler and standard library (build)
gprbuild (build)
PortAudio (run)


Build Instructions
------------------

Ensure that all dependencies are installed, including any developer or header
packages for PortAudio. Then the following commands will build and install the
binding:

    gprbuild portadao.gpr
    gprinstall -p -m portadao.gpr

The other gpr file, example.gpr, can be used to build the few short example and
test programs provided.


Further Information
-------------------

C API of PortAudio:
http://files.portaudio.com/docs/v19-doxydocs/portaudio_8h.html


Credits and Legal
-----------------

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.