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.
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.
- 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.
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.
Input: Analog audio on line-in/mike-in sound-card jack(s).
- 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.
Output: WAV, OGG, or MP3 files.
How to Use Sound-Recorder:
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.
- 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.)
- 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.)
- 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.
- Click Record Start to start recording.
The status box on the right side will show Recording.
- 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.
- When done recording, or to pause recording temporarily, click Stop.
While stopped, the status box shows Ready to Record.
- 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.
To automatically split long (possibly un-attended)
recordings periodically into separate sections of arbitrary length:
- 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.)
- Toggle Auto-break ON
- Begin Recording
Sound-Rec accepts the several command-line options.
See Sound-Rec Options for more information.
- -start_seqnum xx
- -max_seqnum xx
- -startdelay xx
- -timelimit xx
- -filter_command xx
The following environment variables set the underlying audio player, recorder, and converter tools
that SoundRecEd tools will use:
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.
- 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
You can set the environment variables in bash shell with, for example:
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:
- /sbin/modprobe snd-pcm-oss
- MAKEDEV audio
chmod 666 /dev/audio
More Technical Details about SoundRec.
Input: WAV, OGG, or MP3 files.
- 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.
Output: WAV, OGG, or MP3 files.
How to Use Sound-Editor:
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.
- 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.
- 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.
- 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.
- You can listen to your tentative edits before saving, by clicking the
buttons in the Test Play row.
Often, editing is an iterative process: Make an edit. Listen to it.
Adjust it. Listen again. Adjust. Etc., until you get it just right.
- 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.
- 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.
- 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.
- 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
- 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.)
- 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.
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.
Click to Download SoundRecEd_1.8.tgz.
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.
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.
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.