tool for calibration and recording of analog audio sources
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Linux
audiorecorder2-dev
macOS
.gitignore
CODE_OF_CONDUCT.md
LICENSE.txt
README.md
audiorecorder
audiorecorder.1
current_interface.gif
history.md
numbered_interface.png

README.md

audiorecorder

A free tool for the calibration and recording of analog audio signals

Development information:

For updates and history of development please see this page.

Installation:

Audiorecorder2 Note: Audiorecorder2 can now be installed along side audiorecorder by adding the flag --with-audiorecorder2 to the following homebrew install commands.

audiorecorder can be installed via homebrew on macOS and linuxbrew on Linux.

MacOS Installation: Audiorecorder can be installed via Homebrew with the following commands:

brew tap amiaopensource/amiaos

brew install audiorecorder

Linux Installation (Tested in Ubuntu 16.04)

The following division of commands seeks to install up-to-date versions of audiorecorder dependencies while avoiding conflicts.

Standard package manager commands

sudo apt-get install sox

sudo apt-get install libsdl2-2.0

Install current MPV ppa, then sudo apt-get install mpv

linuxbrew commands

brew install dialog

If FFmpeg has already been installed with these options then skip next step.

brew install ffmpeg --with-freetype --with-sdl2

sdl2 is necessary to build FFmpeg with FFplay, but removing it after build will avoid conflicts between other installations of sdl2.

brew uninstall --ignore-dependencies sdl2

brew install --ignore-dependencies audiorecorder

Usage:

Usage: [-p] passthrough mode, [-e] edit config, [-m] edit metadata for BWF insertion

Initial setup:

To set up audiorecorder, first run the command audiorecorder -e. This will open an interface where settings such as recording bit depth and sample rate can be selected. This is also where the option to embed BEXT metadata can be selected.

To set the metadata that will be embedded in the BEXT chunk (if activated in the configuration menu) run the command audiorecorder -m. This will open an interface where the desired values can be entered.

Explanation of Interface:

1: Peak volume meters (dB)

2: Audio spectrum - lines (from left) represent 1, 5, 10, 15, 20kHz respectively

3: Recording time

4: Spectrogram

5: Audio vecorscope

6: Graph of peak volume values (dB) from -30dB to 0dB. Colored area represents -5dB to 0dB.

audiorecorder interface

Preview:

Running audiorecorder -p will open the preview window. This window can be closed with the escape key. This allows you to check your settings and playback machine calibration using the audiorecorder interface without creating a file. It is recommended to use this mode before every recording. Once you are satisfied that everything is calibrated appropriately, move on to record mode.

Record:

Running the command audiorecorder will start record mode. You will be prompted for the name of the file created. Wait until the audiorecorder interface opens, and then press play on your playback machine. During recording do not resize the window, as this can cause problems with the audio buffer. To stop recording press the escape key.

Once recording is complete, audiorecorder will process the file, and then an interface will open showing the waveform of the recorded file, as well as giving options to 'preview' and 'trim' the file.

Press 'Preview' to hear the file you recorded. To trim file, enter the amount (in seconds) to trim from the start and end of the file and press 'Trim'. If 'Start Trim' is left blank, auto-trim will be applied to start of file. If no trim at start is desired enter '0'. After trimming, a preview window will open for your new file. Trim can be run as many times as is necessary. Once you are done, press 'Finish' to finalize and quit. It is at this point that BEXT metadata will be embedded if that option has been selected.

Huge thanks to all contributors to audiorecorder!

Contributors to date:

privatezero (Andrew Weaver), retokromer (Reto Kromer), dericed (Dave Rice), todrobbins (Tod Robbins), ablwr (Ashley Blewer)

Special thanks to Matt Boyd at the University of Washington for extensive testing assistance!

License

The audiorecorder script is covered under a BSD 3-clause license

Creative Commons License
All documentation for audiorecorder is licensed under a Creative Commons Attribution 4.0 International License.