Subject: Re: [ecasound] MISC: Of dump-commands
From: Luke Tindall (firstname.lastname@example.org)
Date: Fri Oct 27 2000 - 11:59:36 EEST
> The C-api is still in the "might-be-implemented" section. But unlike many
> other todo-items, I'm willing to give this top priority. I'm just still
> unsure whether C-API is good enough. As you might have noticed, I'd like
> to get more people involved in ecasound development (either ecasound
> itself, or apps using ecasound/llibecasound). There are so many things I'd
> like to try, but I just don't have the time. I've tried to make the C++
> API as usable as possible, but this hasn't received much interest. So
> far, extending the console mode API, and providing LADSPA support have
> proven to be most useful. But what to do now...
> Possible solutions:
> 1) continue to extend the iactive-mode
> 2) provide a small C-API (easy to maintain)
> 3) provide a more functional C-API (C wrapper for C++)
> 4) provide wrappers for scripting languages (Python, Perl, ?)
> I have little experience with the above mentioned "scripting" languages,
> so it's difficult for me to compare the alternatives. Writing a simple
> C-API (2) would be a quick task, but I'd like to know what functionality
> is needed to do actually do something useful. Here's a short example:
> * C-API to libecasound
> * Initializes session. This call clears all status info and
> * prepares ecasound for processing. Can be used to "restart"
> * the library.
> void eca_init(void);
> * Frees all resources.
> void eca_cleanup(void);
> * Sends a command to the ecasound engine. See ecasound-iam(5) for
> * more info. :)
> void eca_command(const char* command);
> * Fills the structure pointed by 'status'. Provides
> * info like "running/stopped", position, active objects,
> * selected options, etc.
> void eca_engine_status(eca_engine_status_t* status);
So by linking to libecasound it will be possible to use the above function
calls. Good. Sound like a good way to go especiialy for a mixdown app.
However how about a song position feed back? If the app was to implement a
visual time keeper, would the eca_engine_status call be fast enough to
display time real-time? Also say you have a dial that controls panning, for
example, how reponsive will this be? In other words how long would it take
for eca_command() to complete in comparison to using ecasound in interactive
-- To unsubscribe send message 'unsubscribe' in the body of the message to <email@example.com>.
This archive was generated by hypermail 2b28 : Fri Oct 27 2000 - 12:08:49 EEST