Re: [Csnd-dev] [EXTERNAL] Re: [Csnd-dev] new API
Tarmo Johannes <[email protected]>
| Newsgroups | gmane.comp.audio.csound.devel |
|---|---|
| Message-ID | <CAPvdOzCEVXFDF9KmNyXOb5adArN4bOkcPLV5JJ7Cw1eD9HHy1Q@mail.gmail.com> |
Hi! One more question: CsoundQt uses csound_threaded.hpp to support html files that us Csound. The files is present in feature/newapi branch but not updated yet. What are the plans with it? I am not sure, but I think MIchael Gogins wrote this wrapper? Thanks! tarmo Kontakt Victor Lazzarini (<[email protected]>) kirjutas kuupäeval K, 24. juuli 2024 kell 22:42: > Thanks for this. > > For csoundCompileCsd(), my thought was consolidation but of course with > the mode parameter, it can be extendable. > > I am hoping François and Steven who have been writing wrappers will be > able to steer the API to a good state with regards to other languages. > > > Prof. Victor Lazzarini > Maynooth University > Ireland > > On 24 Jul 2024, at 20:07, Michael Gogins <[email protected]> wrote: > > > *Warning* > > This email originated from outside of Maynooth University's Mail System. > Do not reply, click links or open attachments unless you recognise the > sender and know the content is safe. > Looks OK to me. My main concerns: > > (1) Be able to compile a CSD as a text blob as well as from a filename. > Using a flag in csoundCompileCsd looks like it should do that, and may be > better in that it allows changing the CSD from blob to filename at run time. > > (2) Keep all API calls easy to wrap in other language interfaces, > especially Python and JavaScript. That doesn't seem to have changed. > > I may have suggested that the function pointers in the CSOUND_ struct > should really be in an array, as in a C++ class, such that adding to this > array does not change the size of the actual CSOUND_ struct. Please give > that a thought. > > Best, > Mike > > > ----------------------------------------------------- > Michael Gogins > Irreducible Productions > http://michaelgogins.tumblr.com > Michael dot Gogins at gmail dot com > > > On Wed, Jul 24, 2024 at 12:32 PM vlz <[email protected]> wrote: > >> Hi all, >> >> I started work on the new API following some of François’ >> recommendations. The idea is to consolidate the >> interface, make it simpler and start removing functionality that has not >> been used by hosts since 6.x. >> >> I have completed a minimal set in the feature/moduleapi branch. The >> relevant files are csound_new.h >> (the API proper) and csoundCore_new.h (with some additions relating to >> changes). >> >> Not all of the API is implemented (I will start working on it next), but >> it’s out there now for comment. >> >> Most notably, the following things have changed: >> >> 1) The number of compilation function variants is reduced. >> >> 2) We are not exposing the buffering anymore, so csoundPerformBuffer() is >> gone. This has been >> hardly used, host developers seem to prefer access to spin/spout. The >> single-short csoundPerform() is >> also gone, it is easily duplicated by csoundPerfomKsmps() in a loop. >> >> 3) Audio IO callback setting has been removed, for similar reasons. >> >> 4) MIDIO IO callback setting has been consolidated into a single function. >> >> 5) Functions for events and table access were consolidated. Graphing >> callbacks etc are also removed since >> hosts can just read from tables and do their own displays as they see fit. >> >> 6) Interfaces to threading, circular buffers, etc are gone. >> >> 7) Cscore functions are gone. >> >> 8) UDP server functions are gone (this functionality is offered by >> options, so there is no need to duplicate it here). >> >> The idea is to make it less overwhelming for host developers. >> >> Victor >> >