Discussion:
[LAU] Ecasound audio looping
Joel Nash
2018-10-11 11:26:08 UTC
Permalink
Hi,

I'm looking for ecasound experts,

I’m using csound to write audio files that I then mix with ecasound. I want
to know more about how ecaound reads the audio files.

What I tried in ecasound was -audioloop so that the same file is read over
(simple enough). I’ll then make adjustments to this file and whilst
maintaining the same name on the same path for that file and then recompile
csound to essentially make a new file. When ecsound “realises” this it has
to stop? I then have to exit and reopen ecasound and play the file again.

Is it possible to have ecasound just continue reading the file thats named
in the command? what makes stop reading the file?

...perhaps before ecasound loops again it can reload the file into the
buffer to I don't can to hit command interrupted and restart the engine
each time I make an edit to the file thats looping?

I hope this is clear enough of an idea here.

Many many, thanks
Jeanette C.
2018-10-11 16:28:04 UTC
Permalink
Hi Joel,

Oct 11 2018, Joel Nash has written:
...
I?m using csound to write audio files that I then mix with ecasound. I want
to know more about how ecaound reads the audio files.
Compiling files with Csound I find that Csound first truncates the
audiio file to zero, if it exists, and then writes it anew. |so you may
have a problem there. I don't know how much Ecasound will buffer files
and complain if contents is exchanged on the fly. But as an experiment,
you may try rendering a different filename with Csound, through a
script, that after rendering renam,es the file. So some;thing like:
csound -o tmp.wav -W file.csd
mv tmp.wav ecasound_in.wav
While Ecasound is running on another terminal.

Otherwise, if you are content, for Ecasound to play the whole file/mix,
before reading the new one. You could write a script to loop Ecasound.
This will mean a bit of a pause between playbacks, because Ecasound
would load anew, but you might use a similar strategy. Compile files
with Csound to a temporary name. Each time, before you run Ecasound,
check for a temporary name, if it exists, move it and run Ecasound. If
no temporary file exists, just play back.

If your CPU can run your Csound code in realtime, you might write a
clever orchestra/score that would loop your instruments with some GUI or
keyboard control and output to JACK, where you could read in the outputs
with Ecasound. As long as the Csound outputs stay open all the time,
Ecasound could run constantly and you could use the interactive
interface or Nama to do your realtime mixing and processing.

For the moment, I can't think of another solution with these details,
which doesn't mean that there aren't more.

Best wishes,m

Jeanette
--
* Website: http://juliencoder.de - for summer is a state of sound
* SoundCloud: https://soundcloud.com/jeanette_c
* Youtube: https://www.youtube.com/channel/UCMS4rfGrTwz8W7jhC1Jnv7g
* GitHub: https://github.com/jeanette-c
* Twitter: https://twitter.com/jeanette_c_s

Say hello to the girl that I am! <3
(Britney Spears)
Loading...