These questions are really directed to Paul Davis (as the main Ardour dev), Erik de Castro Lopo (libsndfile author), and anyone with experience in this field.
Imagine a real-time audio processing app reading (or writing) lots of audio files, possibly evaluating a complex timeline consisting of many separte pieces. To make things work some (or a lot of) buffering and lookahead will be necessary. There are at least three distinct places where this can be done: 1. the file system(s) and kernel 2. any library used to acess audio files, 3. the application itself. Of these, only (1) will be aware of any hardware related issues, and only (3) will be aware of what is expected to happen in the (near) future. (2) sits somewhere between the two. In view of this, what is currently the best way for an app to read/write audio files, the basic read() and write() calls, or the stdio interface ? More specifically, if one would write a library to access a particular audio file format (not supported, or only partially by e.g. libsndfile), how 'smart' in terms of buffering, lookahead etc. should that library be, or not try to be, in order to perform well with apps like e.g. Ardour ? What form would the preferred API take ? Ciao, -- FA A world of exhaustive, reliable metadata would be an utopia. It's also a pipe-dream, founded on self-delusion, nerd hubris and hysterically inflated market opportunities. (Cory Doctorow) _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/listinfo/linux-audio-dev
