Nama

Easy multitrack recording with Ecasound

Mon, 16 Feb 2026

Basic Recording

This should give you some idea what to do and what to expect. Tab completion and command shortcuts are available to reduce typing.

Formatting key:

$ shell commands, typed at the terminal's shell prompt

nama> nama commands, typed at the Nama prompt

nama untitled bass> The prompt includes project name and selected track 

| a response from Nama

# a comment



$ nama

[ startup messages, defaults to "untitled" project ]

We create a project, 'mysong' with a track 'bass', which is now the current track.

nama Main> create mysong 

nama mysong Main> add-track bass

The prompt indicates the project and currently selected track.

nama mysong bass>

For simplicity, I'll remove the project name from the prompt in the rest of this tutorial.

nama bass>

Now we set the source:

nama bass> source 3

| Track bass: source set to soundcard channel 3

The soundcard definition and other configuration info resides in ~/.namarc

nama bass> show-tracks

|  No. Name            Status     Source            Destination   Vol   Pan
| =========================================================================
|   1  Main            MON        Main bus          CH 1/2          0    50
|   2  Mixdown         OFF        --                --             --    --
|   3  bass            REC v1     3                 Main bus        0    50

Track 'bass' is set to record version 1 (take 1) from soundcard channel 3. There is also a signal path to the mixer output. The effects-processed output of track 'bass' belongs to the 'Main' (default) bus, which means its output feeds track 'Main'. 'Main' hosts the final fader controls before the mixed signal goes to the soundcard output channels 1 and 2. The level of the volume fader is in dB, so zero in the listing about means 100%.(Note 1)

Suppose that we don't need any audio monitoring, and we want to only record. We could just mute the output.

nama bass> select-track Main; mute

As you see, multiple commands can be separated by semicolons. Since selecting a track by name or number and then performing actions on that track is common, you can just prepend the track name or number to any command.

nama bass> 1 mute

nama Main> show-track

    |  No. Name       Requested  Status  Source                Destination   Vol   Pan
    | ================================================================================
|   1  Main                  MON     Main bus              CH 1/2        -96    50
    | 
    | Bus: Null
    | Signal width: stereo
    | A Pan epp
    |     1. Level %: 50
    | B Volume ea
    |     1. Level %: 0

However, let's remove the signal path entirely. That's one less audio stream to process.

nama Main> off

The command is applied to the 'Main' track because, as the prompt confirms, 'Main' is selected as the current track.

The change in audio routing triggers a reconfiguration and a fresh track display showing the updated status.

|  No. Name            Status     Source            Destination   Vol   Pan
| =========================================================================
|   1  Main            OFF        Main bus          --            -96    50
|   2  Mixdown         OFF        --                --             --    --
|   3  bass            REC v1     3                 Main bus        0    50

Because the engine is configured, Nama prints the following:

| Now at: 0:00
|
| Engine is ready.
|
| Press SPACE to start or stop engine

It looks like we're ready to go. To be sure, Let's check the Ecasound audio network definition.

nama> chains

| # ecasound chainsetup file
| 
| # general
| 
| -z:mixmode,sum -b 256 -z:db,100000 -z:nointbuf
| 
| # audio inputs
| 
| -a:R3 -i:alsa,default
| 
| # post-input processing
| 
| -a:R3 -chmove:3,1 
| 
| # audio outputs
| 
| -a:R3 -f:s16_le,1,44100,i -o:/home/jroth/nama/mysong/.wav/bass_1.wav

Even without knowing Ecasound command syntax, you can see that a file is going to be written.

The directory path and the sample frequency come from the config file F<.namarc>, which is YAML plus comments.

Now we press SPACE to start the engine, lay down our bass part, and press SPACE again to stop it. This creates ~/nama/mysong/.wav/bass_1.wav. Nama will print an updated the track display, automatically selecting the just recorded version and setting the track to PLAY.

|  No. Name            Status     Source            Destination   Vol   Pan
| =========================================================================
|   1  Main            OFF        Main bus          --            -96    50
|   2  Mixdown         OFF        --                --             --    --
|   3  bass            PLAY v1    --                Main bus        0    50

You can press SPACE to play your track. But there will be no audio because we left the Main track OFF (out of the routing network) and the track fader is also muted.

nama Main> unmute

nama Main> mon

|  No. Name            Status     Source            Destination   Vol   Pan
| =========================================================================
|   1  Main            MON        Main bus          CH 1/2          0    50
|   2  Mixdown         OFF        --                --             --    --
|   3  bass            PLAY v1    --                Main bus        0    50

Now we'll get sound.

Let's reduce the master fader volume by 3 dB

nama Main> vol - 3 # note the space between the minus operator and the number.

To set a volume of -10 dB:

nama Main> vol -10

To view the volume of the Main track:

nama Main> vol

You can put multiple commands in one line, using semicolons to delimit statements.

nama Main> bass add-effect Plate; vol + 3

Most commands have abbreviations. Instead of "add-effect Plate" we could say "afx Plate".

Plate is the name of an effect plugin. If you are looking for a reverb plugin, you can type "find-effect reverb".

Set the first parameter of the current effect to 1.3:

nama bass> mfx 1 1.3  # modify-effect

Show the parameter settings of the current effect:

nama bass> sfx # show-effect

Selecting a track will also select the current effect for that track.

In addition to current track and current effect, Nama has a current bus, current mark, current sequence and current edit.

Note 1: Nama defaults to setting volume in percent. To specify volume in dB, set fader_op: eadb in namarc.