Subject: standalone ECI implementations
From: Kai Vehmanen (kai.vehmanen_AT_wakkanet.fi)
Date: Sat Sep 28 2002 - 02:34:19 EEST
I know, I know, I still haven't finished the NetECI project and here I
am again with new ideas... ;)
Tkeca-0.2.1, which btw is a really usable app, uses ecasound by forking
the console interface on the background and then piping commands and
replies via stdin and stdout.
Compared to using ECI or directly linking against libecasound, this
approach has the huge benefit of complete independence from ecasound
libraries. In practice, just by renaming the ecasound executable (or
changing PATH), I can select between ecasound 2.0.4 and 2.1dev12 (CVS).
Tkeca-0.2.1 works nicely with both versions!
Now what if all ECI apps would use the same mechanism? This could be
achieved by making a new C-implementation of the ECI API, which would do:
- fork "ecasound -c" to the background
- pass ECI commands to the ecasound instance via its stdin
- read the return codes from ecasound's stdout, parse them and
pass them to the ECI app
... that's about it. The C++, Python, Perl and PHP ECI implementations
could either use the C implementation or alternatively provide their own
implementation. For instance, a Python ECI implementation could be
written totally in Python. This means that no extension modules would
need to installed. Just a Python interpreter and the ecasound executable
and that's it!
-- http://www.eca.cx Audio software for Linux!
This archive was generated by hypermail 2b28 : Sat Sep 28 2002 - 02:33:22 EEST