Re: [ecasound] Ecasound and timebase master

From: Kai Vehmanen <kvlists@email-addr-hidden>
Date: Fri Aug 02 2013 - 23:02:16 EEST


On Wed, 17 Jul 2013, Julien Claassen wrote:

> I wondered, if it would be possible for Ecasound to become a timebase
> master. So, taht it can give JACK hints about beats and bars. I took a look

as a concept this would be fairly messy as Ecasound is not a MIDI
sequencer and has no concept of tempo, time signature and so forth.

Additionally, the code that implements transport master/slave roles in
Ecasound is in libecasound/plugins/audioio_jack_manager.cpp and is not
directly accessable from e.g. effects. So even if the MIDI-world timebase
information would be relayed from some external source, getting the
information the right place in Ecasound will not be straightforward.

It's not an impossible idea, and you could try prototyping filling the
timebase fields in audio_jack_manager.cpp (when Ecasound is a transport
master) and see how it works out. This should be fairly straightforward as
it's just a matter of using the existing JACK APIs (and the related
audio-domain information w.r.t. current audio position and transport
state), is already available.

A bigger task would be to design how this could be set up (from
command-line/ECI), and another how to control this (e.g. change tempo)
during runtime (via ECI?). I don't think the effect interface is directly
usable for this... some new commands are probably needed.

OTOH, it might be easier to create a standalone tool (maybe modify
jack_transport that comes with JACK) that can be controlled in runtime,
and serves as a transport+timebase master for rest of JACK apps. Ecasound
can sync to this and midish can via jack_midi_clock.

Get your SQL database under version control now!
Version control is standard for application code, but databases havent
caught up. So what steps can you take to put your SQL databases under
version control? Why should you start doing it? Read more to find out.
Ecasound-list mailing list
Received on Sat Aug 3 00:15:02 2013

This archive was generated by hypermail 2.1.8 : Sat Aug 03 2013 - 00:15:03 EEST