* Documentation generation doesn't work * alutLoadWAVFile is currently deprecated (need to use much more simple alutCreateBufferFromFile, and use alutGetError instead of alGetError), also move create_buffer_from_file from AlBuffer to Alut. * Alut.init creates context (need to add Alc.create_context) and doesn't actually call alutInit ;) * caml_named_value array_length used instead of Block_size/Wo_size * Some additional options added to buffer/source configuration * Add some examples (simple file player) * Maybe add possibility to load data from Bigarrays? Maybe it's even possible to subload updated data, or make openal hold its data in our bigarray, to not duplicate memory? * It would be good to remove this stupid C++ stuff (i.e. rewrite in pure C). ReferenceCounter can be easily done through Gc.finialize plus making type buffer = { buffer_id : int; } type source = { source_id : int; mutable attached_buffer : buffer option } The only problem is to not delete buffers and sources in threads other than main (but not sure it is the problem with openal). For faster removing (not through Gc.finalize) buffer/source_id can be done mutable optional types. I think it's better keep it in old C++, since it just works.