Sound-Rec-Ed - Sound Recorder & Editor

SoundRecEd is a pair of simple graphical utilities to record and edit sound files, similar to operating a tape-deck. Maintained under Sourceforge project SoundEdRec.

  • Sound-Recorder - Buttons start and stop recording, or split incoming audio into separate files. Captures incoming analog audio, such as from PC sound-card microphone or line-in jacks.
                     
  • Sound-Editor - Cut sections from audio file, or join files.
                     
Both tools save files in WAV, OGG, or MP3. SoundRecEd is not a full-blown professional mixer application. However, it provides functions that are frequently desired by casual users.

The Sound-Recorder/Editor utilities (also called SoundEdRec) are graphical front-ends (GUI's) for existing sound utilities that are already present on most Linux PC's. Although everything could be done from the command-line, it is often helpful to have a tool like Sound-Rec/Ed to accomplish frequently-repeated command-combinations by merely pressing buttons. The Sound-Editor tool also provides some visual editing capabilities. SoundRecEd's initial configuration defaults to commonly available record, playback, and conversion tools. It is easily configured to use any alternative tools that you prefer.

Without SoundRecEd, you could record audio from a live event using the ALSA arecord function on the command-line. At some point you may wish to pause the recording. Or, you wish to split the recording into separate files by resuming recording into a new sequentially named file. However, it would take some time to manipulate the command-line to do this. In the meantime, you miss incoming material, and/or accidentally overwrite an existing file. At the same time, to conserve disk space, you may wish to initiate conversion to OGG or MP3, followed by deletion of the WAV file. The Sound-Recorder GUI will do all these things automatically by pressing buttons: record, stop, pause, split, ... record, etc., similar to using a tape-deck.

If your recording was not cued properly, you may want to cut a small section from the front or tail ends. The Sound-Editor will do this, similar to rewinding tape a bit to cue the next item. The Sound-Editor helps split long audio recording files into separate files. It shows information visually about a recording, and it can apply segue fading, if desired. If you need to record unattended for an extended period of time, you can set SoundRecorder to periodically break the recording into separate sequentially numbered files. The files can later be conveniently edited, cut-down or joined together (spliced), by Sound-Editor.

Conventional audio CD's can be made from the WAV-files captured by Sound-Recorder.
(For example:     cdrecord -v speed=20 -audio -pad *.wav   )
MP3 or OGG disks can also be made by both Sound-Recorder and Sound-Editor.
(Write MP3 or OGG files to CD's as regular data files; not audio.)

Other sound applications exist, but many are complicated, designed for serious professional sound editing/mixing, etc.. Some are difficult to install or maintain due to numerous dependencies. The SoundRecEd utilities aim to be self-contained with minimal dependencies. They provide only simple functions.


Sound Recorder:
                             

Purpose:
  • To Record continuously, but break sections into individual recordings with distinct file-names, by pressing single button, while recording.
  • To pause between sections, or un-wanted songs.
  • To automatically periodically break long (possibly un-attended) recordings into separate sections.
  • To automatically convert raw wav files to OGG or MP3.
Input:     Analog audio on line-in/mike-in sound-card jack(s).
Output:   WAV, OGG, or MP3 files.

How to Use Sound-Recorder:

  1. Set the file-name to save recording as, by filling in the Base File Name form box. (By default, it comes up as new_recording, but you will probably want to pick a more meaningful name that is related to what you are about to record.)
  2. Select the format to save your recording in:   WAV, OGG, or MP3. (WAV is not a compressed format, so WAV files tend to be ~10x larger than OGG or MP3.)
  3. Check the volume level by clicking the Levels button. Adjust your system's volume controls as needed. If you do not see any input, check the Trouble-shooting section.
  4. Click Record Start to start recording. The status box on the right side will show Recording.
                                 
  5. If at any time you wish to break the recording into a separate file, click the Split button. This closes the current file, and immediately continues recording into a new file with the same root-name as before, but with an incremented sequence number. For instance, this is like creating a new track on a CD, such as between songs.
  6. When done recording, or to pause recording temporarily, click Stop. While stopped, the status box shows Ready to Record.
  7. If done, you can then quit the application by clicking the quit button. Otherwise, when you wish to resume recording, click Record Start. Recording will resume into a new file with the same root-name as before, but with an incremented sequence number.
While recording, SoundRecEd displays the length of the current recording in minutes and seconds. It also shows the total elapsed time of all recordings made in the current session.

To automatically split long (possibly un-attended) recordings periodically into separate sections of arbitrary length:

  1. Set the Auto-Break Period by pressing the Set Period button within the Auto-Break box on the lower right of the SoundRec GUI. (Default period is 10 minutes.)
  2. Toggle Auto-break ON
  3. Begin Recording

Sound-Rec Options:

Sound-Rec accepts the several command-line options.

  • -start_seqnum   xx
  • -max_seqnum   xx
  • -startdelay   xx
  • -timelimit   xx
  • -filter_command   xx
See Sound-Rec Options for more information.

Configuration:

The following environment variables set the underlying audio player, recorder, and converter tools that SoundRecEd tools will use:
  • SndRecEd_Record_Tool - Specifies the audio record command.   Default:   arecord -f cd
  • SndRecEd_Player_Tool - Specifies the audio player command.   Default:   play
  • SndRecEd_OGG_Converter - OGG Converter. Converts WAV files to OGG format.   Default:   oggenc
  • SndRecEd_OGGtoWAV_Command - OGG to WAV decoder. (Editor only, optional.)   Default:   ogg123 -d wav -f
  • SndRecEd_MP3_Convertor - MP3 Convertor. Converts WAV files to MP3 format.   Default:   lame.exe
  • SndRecEd_MP3toWAV_Command - MP3 to WAV decoder. (Editor only, optional.)   Default:   lame.exe --decode
All but the MP3 converter are commonly found on most Linux distributions, and the defaults should work OK. There are various MP3 converters, of which Lame is one that has been tested to work OK with SoundRecEd. If you wish to convert files to MP3, you may need to install Lame, or another MP3 converter.

You can set the environment variables in bash shell with, for example:
     export SndRecEd_MP3_Convertor="/usr/bin/lame"

Both SoundRec and Sound-Editor accept these same environment variables. Placing the settings in your .bashrc or .profile file, will make the settings automatic in future sessions.

On some recent Linux distributions /dev/audio is missing.
The primary symptom:   You get a warning pop-up saying SoundRec cannot
open the audio input,and the VU-meters do not display.
(If anyone knows why /dev/audio is no longer being included by default,
  please drop me a message.)

Luckily it seems this is easily remedied.
Any of the following three commands should restore /dev/audio:

As Root:

  • /sbin/modprobe snd-pcm-oss
Or
  • MAKEDEV audio
    chmod 666 /dev/audio
Or
  • mknod /dev/audio c 14 4

More Technical Details about SoundRec.


Sound Editor:
                             

Purpose:
  • To cut, splice, and join sound files.
  • To snip begin/ending sections of recordings, such as between song transitions that started/ended too early or late.
  • To fade beginning/ending sections for nice segues.
  • To break continuous recordings into sections of individual recordings with distinct file-names.
  • To adjust volume of recordings.
Input:     WAV, OGG, or MP3 files.
Output:   WAV, OGG, or MP3 files.

How to Use Sound-Editor:

  1. Click the Open File button to select a sound-file to edit. (Alternatively, if you invoke SoundEdit from a text-window, you can specify the sound file on command-line.) This sound-editor can edit WAV, OGG, and MP3 files.

    The Volume versus Time profile will appear on the graph. This is helpful in visually identifying sections of the recording. The four buttons to the right of the graph enable you to view the volume profile in various units. More about these below.

  2. Select a beginning-point and an ending-point by sliding the two sliders below the graph. These will be the points where the file will be cut when saved.
  3. You can select to fade the beginning and/or ending of the file by clicking the corresponding Fade toggles. Begin-fading gradually raises the volume from zero, at the beginning of a sound file to produce less abrupt segues. End-fading gradually reduces the volume to zero.
  4. You can listen to your tentative edits before saving, by clicking the buttons in the Test Play row.
    Test-Play Buttons:
    • Beginning - Plays the first few seconds of the presently selected beginning of the file.
    • Ending - Plays the last few seconds of the presently selected ending of the file.
    • All - Plays the full recording between the presently selected beginning and ending.
    • Stop - Stops the test-play.
    Often, editing is an iterative process: Make an edit. Listen to it. Adjust it. Listen again. Adjust. Etc., until you get it just right.
  5. You can join sound files together by clicking the Append a File button on the bottom-right. This brings up a file-browser where you can select a sound file to append to the present file. You can build up a larger recording by appending several files together.
  6. You may adjust the volume by clicking the Volume button. This is useful to adjust recordings from differing sources to more closely match each other, such as to raise the volume on a faint recording, etc.. More about setting the volume, below.
  7. You can cut sections from the file, by pressing the Cut button. A small window will pop-up, prompting you to adjust the sliders to select the section you want to remove, followed by clicking the Remove-Section button.
  8. Select the format to save in: WAV, OGG, or MP3. (Note that OGG and MP3 will create much smaller files than WAV, and will play in some players.)
  9. Save the edits by clicking Save button at the bottom-left. A file browser will pop up, where you can specify a new file name, or you may choose to over-write your original file.
The four buttons to the right of the graph enable you to view the volume profile in various units: Average dB, Peak dB, Average linear, Peak Linear. The default WAV-file parameters match audio CD-Rom's in sample range and rate. The range is about 90-dB, or 32,767 linear units. As traditional in audio equipment, the maximum value is displayed at 0-dB, and all lower values are displayed as negative dB. To avoid clipping distortion, it is usually desirable to keep the average volume below, say, -20 dB, as shown in the snap-shot, or keep the peak-volume below zero-dB.

You can change the volume (loudness) of recordings by pressing the Set Volume button. The default change amount is 0-dB (or 1.0x linear), which does not change the volume level when saved. Doubling the recorded levels (2.0x) raises the volume by 6-dB. Halving the level (0.5x) decreases the volume by 6-dB.

You can see the peak values in the sound file by plotting the peak dB or linear values with the buttons to the right of the graph. To avoid distortion, the peak values must stay below 0-dB (or 32,767 linear) throughout the recording. Exceeding that level would cause clipping distortion. For convenience, pressing the Max button on the Volume window, will set the volume level to the maximum it can be without clipping. Sometimes on high-dynamic range recordings, such as speech, it is desirable to set the volume level slightly higher than the maximum. During the file-save, instead of clipping, Sound_Editor will momentarily reduce the volume during loud sections, just enough to avoid clipping. This operation is said to compress the dynamic-range, by making soft sections loader, and load sections softer, but it is only used when needed. It is sometimes called companding.

See configuration above, for configuring the sound-tools used by Sound-Editor.


Download:

Click to Download SoundRecEd_1.8.tgz.                   (Installation instructions.)

Contains source-code with executables compiled for Linux under Redhat Core 4 (Linux 2.6.9), glibc 3.4.3. You may need to recompile, if executables do not work on your platform. Issue make clean, then make. Or see Readme.txt file.

Contents:
  Readme.txt
  makefile           - Makefile, for re-compiling.
  sound_recorder.c   - Recorder GUI source-code.
  sound_recorder     - Linux executable.
  sound_editor.c     - Editor GUI source-code.
  sound_editor       - Linux executable.
  otk_lib - Graphics library, provided for compilation convenience.


Credits:

Much credit is given to KHRecord. A very useful tool that gave much inspiration for creating SoundRecEd. Unfortunately, various dependencies have prevented me from using KHRecord for the past several years ... which gave additional inspiration.




SourceForge.net Logo