Re: [ecasound] MISC: Of dump-commands

New Message Reply Date view Thread view Subject view Author view Other groups

Subject: Re: [ecasound] MISC: Of dump-commands
From: Luke Tindall (luke@maths.ex.ac.uk)
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:
>
> --cut--
> /**
> * 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
mode.

Luke.

--
To unsubscribe send message 'unsubscribe' in the body of the
message to <ecasound-list-request@wakkanet.fi>.


New Message Reply Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Fri Oct 27 2000 - 12:08:49 EEST