user
gnosti
<h3>A years-long project</h3>
Years ago, I started a script to generate chain setups (configuration files) for the [http://ecasound.seul.org/ecasound/|Ecasound] audio processing engine. Basically, Ecasound will let you do most multichannel recording, mixing, effects processing, format conversion and many other audio processing tasks you may want to do.
<p>
So now I've got a lightweight front-end going. [https://github.com/bolangi/nama | Nama] is a recorder, mixer application suited for audio production.
It implements the usual DAW abstractions: tracks, effects, buses, marks, fades, inserts, edits, regions, clips, sequences and submixes. Julien Claassen, a prog-rock composer and musician, has used it on the console to produce [http://juliencoder.de/nama/music.html| quite a lot of music].
<p>
<h3>What is unique about Nama?</h3>
<p>
- written in perl<p>
- small, hackable codebase<p>
- Tracks can be bounced/frozen/cached as necessary to save CPU, and later be uncached, i.e. restored to their original, malleable state.<p>
- project history and snapshots are managed internally by git<p>
- From the user standpoint, named snapshots are saved and loaded just as with files (<c>save initial-mix, get initial-mix</c>) however they grow as branches, retaining their history, and unlike files, they are never overwritten.<p>
- Tk GUI emulates a simple hard-disk recorder<p>
- Full-featured command prompt with help, autocompletion and command history
<p>
Developing Nama has been the driver for my learning more about Perl and exploring the highways and byways of computer science.
2024-03-28 14:23:09
1934
655810
97
on