---
name: "meterec"
section: "1"
platform: "linux"
package: "meterec"
version: "0.9.3-3+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/meterec"
---

# meterec(1)

console multitrack audio recorder

## NAME

meterec - console multitrack audio recorder

## SYNOPSIS

**meterec** \[ **-tpcih** \] \[ **-r** *ref-level* \] \[ **-o** *output-format* \] \[ **-s** *session-name* \] \[ **-j** *jack-name* \] \[ **-f** *frequency* \] \[ **-u** *uuid* \]

## DESCRIPTION

**meterec** real-time jack ports vu-meter, records specified ports to take file and replays selected take(s).

## OPTIONS

- \-r ref-level

  Adjust the 0dB reference level of the port vu-meter.

- \-o output-format

  ´w64´, 'wav', 'ogg' or 'flac'. Format of the take files produced when recording. The same  session can use different formats subsequently. Defaults to 'w64' or 'wav'.

- \-s \<session-name\>, -s \<session-file\>

  Name of the session beeing recorded. If a file called \<session-name\>.mrec  exists,  **meterec** will execute from the current directory.  if a file called \<session-file\> exists,  **meterec** will change to it's base  directory before executing.  defaults to ´./meterec.mrec´.

- \-j jack-name

  Name of the  **meterec** client in the jack graph. This name should be specified  if using several  **meterec** instances on the same jack server. Using the same \<jack-name\> for multiple  **meterec** instances is not supported. Defaults to ´meterec´

- \-f frequency

  Set the display refresh rate in frames per second. This setting does not affects the pace at wich command keys can be used, nor the meter peak value fall time.

- \-u uuid

  Universal unique identifyer used by jack-session save/restore managers.  **WARNING:** jack-session requests that directory holding session restore data is erased before  session is saved! Make sure you do not use the meterec-session directory or a parent directory to save your jack-session: this would erase all previously recoded audio  as well as configuration data for this meterec-session.

- \-t

  Start recording at startup. Default is to start in playback mode. With this option  a new take will be captured at startup. This allows to call  **meterec** from a script or do a quick take right from the shell. If recording should only be starting  upon user action or when jack-transport goes to roll state, use this option along with  *-p* option.

- \-p

  Do not playback at startup. Default is to start in playback mode. Use this option if you want meterec to wait for user input of jack-transport to start playback.

- \-i

  Do not interact with jack-transport state. By default  **meterec** will set jack-transport state when user start or stop playback and playback will start or stop when jack-transport state changes.

- \-c

  Do not connect automatically to jack ports. By default meterec will use the list  of connections stored in \<jack-session\>.mrec to connect it's ports to other jack clients at startup as well as when these ports becomes available.

- \-h

  Show options and command keys summary.

## COMMAND KEYS (all views)

- q

  Quit

- \<TAB\>

  Switch between the different ´views´: vu-meter, edit, connections.

- \<SPACE\>

  Start playback, stop playback. unless  **-i** option is used, the jack-transport state will be updated so the other  jack clients supporting jack-transport are syncronised with  **meterec.**

- \<ENTER\>

  Start recording, stop playback and record. At least one port should be in one of the  recording modes for recording to start. Also updates jack-transport state.

- \<BKSPS\>

  when record is already ongoing, this creates a new take on the fly. This operation  allows to have subsequent takes without any gaps in audio. When recording is not ongoing this key will engage the record mode: the recording of audio is pending until playback starts. This allows to have **meterec** start recording when jack-transport state goes to ´roll´

- \<UP\>

  Select port above in the list. Will wrap at list boundaries.

- \<DOWN\>

  Well... Select port bellow in the list. Will wrap at list boundaries.

- v

  Reset maximum level vu-meter markers. Each port will record the maximum signal level reached and display it with a column char ':'. It is sometime usefull to reset these markers for a fresh start.

- n

  Toggle port names display. Since the port name is located over the vu-meter display it might be  annoying when reading levels.

- i

  Insert name. Helps tidy you workspace by giving each port a meaningfull name.

- t

  Toggles pass-thru for this port. Depending on the instrument plugged in, it is usefull to have the  live audio at the input side available at the output side.

- T

  Toggles pass thru for all ports.

- m

  Mute/unmute that port playback. No recoded audio for this port will be played when this port is muted.  The audio data coming from the input side due to ´pass-thru´ beeing active is not muted.

- M

  Mute/unmute all ports playback.

- s

  Mute all but that port playback (solo). Note this is not standard ´solo´ approach found in mixers  as you cannot ´solo´ several ports at the same time.

- S

  Unmute all ports playback.

- r

  toggle REC record mode for that port. Available audio from previous take will not be played back when recording.

- R

  toggle REC record mode for all ports

- d

  toggle DUB record mode for that port. Available audio from previous take will played along when recording.  The resulting take will contain only audio played during the last take.

- D

  toggle DUB record mode for all ports

- o

  toggle OVR record mode for that port. Available audio from previous take will played along when recording.  The resulting take will contain a mix of audio played during the last take and audio from previous take. When  using this record mode, you should use take-locking to precisely control what is the track that will be mixed  when recodring. Remeber to remove the lock to be able to ear the result!

- O

  toggle OVR record mode for all ports

- \<SHIFT\>F1-F12

  Set time index. Current playhead position will be stored in this index.

- F1-F12

  Jump to time index. When playback is ongoing, playhead will jump to stored time index. No action  if this time index is not set or if in record state.

- \<CTRL\>F1-F12

  Use time index as loop boundary. Will be used at upper or lower bound depending on time index value and  already programmed loop boundary. If the time index was not set, current playhead time will be used and stored for this time index.

- \+

  Use current time as loop boundary. Usefull for setting a loop quickly.

- \-

  Clear loop boundaries. Playback will keep on reading once the former loop upper bound is reached.

- /

  Clear loop lower bound. Programming a new bound will move the remaining bound to lower bound if it is upper than remaingin upper bound.

- \*

  Clear loop upper bound. Programming a new bound will move the remaining bound to upper bound if it is lower than remaingin lower bound.

- \<HOME\>

  Be kind, rewind.

## COMMAND KEYS (vu-meter)

- \<RIGHT\>

  Seek forward 5 seconds

- \<LEFT\>"

  Seek backward 5 seconds

## COMMAND KEYS (edit)

- \<RIGHT\>

  Select next take

- \<LEFT\>"

  Select previous take

- l

  Lock/unlock selected track for playback

- L

  Lock/unlock selected track for playback and clear all other locks for this port

- a

  Lock/unlock selected take for playback

- A

  Lock/unlock selected take for playback and clear all other locks in the session

## COMMAND KEYS (connections)

- \<RIGHT\>

  Select port column on the right

- \<LEFT\>

  Select port column on the left.

- c

  Connect ports.

- x

  Disconnect ports.

- w

  toggle ports connections.

## FEATURES

- Monitor port

  **meterec** has an extra output port called 'monitor' that is providing a copy of audio signal available at the input side of the currently selected port.

- Take-locking

  By default  **meterec** will play the latest take for a given port when playing back or recording with DUB or OVR mode. If you want to play an other take you have to set a lock on the particular tack you want to ear. This is done in ´edit view´. If a port has lock for several tracks, the track recorded during  the latest take will be played (most recent).

- Loops

  Setting loop boundaries will not make  **meterec** jump into the loop right away. Only once the upper loop bound is reached, playback will jump to  lower bound.

- Ports connection

  The connection views show 3 ports columns. On the left: all available output ports of jack clients  other than this  **meterec** instance. On the right: all available input ports of jack clients other that this client. The middle columns shows all  **meterec** ports available in this session. To connect 2 ports first select the  **meterec** port you want to connect in the middle column, then go to left or right colum and browse to the port you wish to  connect to and hit the ´c´ key. Connected ports will be shown by a '+' sign and highligted if your console allows. For all ports, a ´-\>´ sign between the input side and the ouput side show if this port is  in pass-thru mode.

## INTERRUPT

You can abort **meterec** at any time by pressing Ctrl-C.  The current state will be saved to \<session-name\>.mrec before **meterec exits.**

## FILES

- \<session-file\>, \<session-name\>.mrec

  Contains current state of session: list of ports with connections, record mode,  mute state, name, takes map. List of time indexes. Sampling rate.

- \<session-name\>.log

  Activity log of latest meterec run for session \<session-name\>.

- \<session-name\>\_\<nnnn\>.\[ogg\|wav\|w64\|flac\]

  Take file. \<nnnn\> is the take number. This file contains audio for all the ports  that where selected for record during take \<nnnn\>. You can open/edit this file in an audio editor if it supports multitrack audio files.

## BUGS

Please report and monitor bugs using http://sourceforge.net/projects/meterec/

## SEE ALSO

**[meterec-init-conf(1)](/meterec-init-conf/1.md)** **[jackd(1)](/jackd/1.md)**

## AUTHOR

Fabrice Lebas \<fabrice@kotoubas.net\>
