From a0ff8c910377207db64d4c7d5eaa76130f41f5f5 Mon Sep 17 00:00:00 2001 From: Jedidiah Barber Date: Tue, 25 Jul 2023 22:48:47 +1200 Subject: Improved documentation --- readme.txt | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) (limited to 'readme.txt') diff --git a/readme.txt b/readme.txt index 96ed852..92d267d 100644 --- a/readme.txt +++ b/readme.txt @@ -8,25 +8,35 @@ 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, the command API has been -converted to a more ordinary collection of subprograms rather than the single -function call with an enum that it is in C. +C-specific types wherever possible. In particular: -Please note that at the moment this binding is incomplete. The RIFF chunk API -is not bound, nor are the Cart_Info commands, the Loop_Info command, the -Instrument commands, or the Get/Set Cue commands. If anyone has a pressing need -for them, let me know. + * All error codes have been converted to exceptions + * Void pointers are completely absent + * The command API has been mapped to a more ordinary collection of subprograms + instead of the single function it is in C + +The package hierarchy is as follows: + + * Libsndfile: Everything that isn't virtual IO or the command API + * Libsndfile.Commands: The command API datatypes and subprograms + * Libsndfile.Virtual: The virtual IO interface + +A few short example programs are available in /example/. + +Please note that at the moment this binding is incomplete, as the RIFF chunk +API is not bound. If anyone has a pressing need for it let me know. Finally, there appears to be a subtle bug in the virtual IO that causes the frame count to be one lower than it should be. I am currently unsure of the -exact cause. For all I know I may have just written the virtual functions in -the example program slightly incorrectly. +exact cause. Since the behaviour is the same regardless of whether using the +virtual IO in C or in Ada, the likely culprit is in the library itself. Dependencies ------------ -GNAT (build) +An Ada 2012 compiler and standard library (build) +A C compiler and standard library (build) gprbuild (build) libsndfile (run) @@ -48,7 +58,7 @@ test programs provided. Further Information ------------------- -API of libsndfile: +C API of libsndfile: https://libsndfile.github.io/libsndfile/api.html @@ -57,6 +67,7 @@ Credits and Legal This binding and the Ada test/example programs were written by Jedidiah Barber. -All code is released into the public domain. +All code of this binding and example programs is released into the public +domain. Consult unlicense.txt for further information. -- cgit