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
>>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.