83

For few days I've been trying to find a voice recorder, but I'm frustrated.

Skype working fine and alsamixer

enter image description here

I'm using pulseaudio.

When I open the below softwares, my microphone stops working, even skype doesn't work. I only hear noise. If I uninstall the softwares and reset pulseaudio it becomes normal again.

Tried Audacity -- I hear noise only.
Tried audio-recorder -- Recording but lots of noise.

I need a good working software to record voice.

Need help.

2

9 Answers 9

130

You can very simply record audio through terminal using the pre-installed tool arecord.

  1. Open a terminal (Ctrl+Alt+T)
  2. Run the command

    arecord filename.wav
    
  3. Your audio recording has started, press Ctrl+C to stop the recording.

  4. Your voice recording has been saved as filename.wav in your home directory.

EDIT:
If you have multiple inputs you can find them using

arecord -l

which will list hardware devices that can then be selected using the -D flag. Listing looks like...

**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC269VB Analog [ALC269VB Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

When choosing a particular device I used the following to select a USB headset.

arecord -D hw:1,0 -f S16_LE filename.wav    

Note that the device selection was based on the following listing which comes straight from the -l listing.

card 1: Headset [HP Digital Stereo Headset], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
5
  • 17
    I think this answer deserves to be the chosen answer for it's simplicity and no need to install any external softwares Commented Feb 10, 2016 at 13:43
  • This is nice but it's not clear how to record audio out (like for recording skype,webrtc,etc) Commented Dec 14, 2018 at 20:23
  • 3
    man arecord deserves to be quoted : -q --quiet Quiet mode. Suppress messages (not sound :)) Commented Feb 11, 2019 at 13:27
  • 3
    It isn't really clear how the output of -l translates into -D hw:1,0 -f S16_LE. Commented Apr 6, 2020 at 5:53
  • 5
    arecord will record awful quality without further configuration. For me, arecord -fS24_3LE -r48 test.wav yielded a decent quality. (For speech, one can probably go lower than 48kHz; choosing a "big" format seems key. Be aware that not all can be processed further in all ways! For instance, flac wouldn't accept FLOAT_LE.)
    – Raphael
    Commented Jun 5, 2020 at 15:46
52

Try Audio Recorder.

Audio Recorder is a recording program, that allows user to record audio from various sources, and allows you to save recording in various formats.

To install, just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command(s) below:

sudo add-apt-repository ppa:osmoma/audio-recorder
sudo apt-get update
sudo apt-get install audio-recorder

For Ubuntu versions higher than 15.10 there is a new ppa which can be found at https://launchpad.net/~audio-recorder/+archive/ubuntu/ppa

sudo add-apt-repository ppa:audio-recorder/ppa
sudo apt-get update
sudo apt-get install audio-recorder

Make sure your microphone is connected to your computer and well configured. Run this command: alsamixer to check your microphone level.

Also you can use sox to record your voice, it can be installed from the Ubuntu Software Center, r install it from the terminal with this command:

sudo apt-get install sox

Edit

You can also look at Ardour.

Ardour is a powerful digital audio workstation that gives you everything you need to record, edit, mix, and arrange professional audio.Ardour

To download, and more info, check out their website

Other programs to look at are MHWaveEdit, and KWave

10
  • 1
    It's working but the problem is, it creates noise. How can I remove the noise. Commented Jun 29, 2014 at 16:09
  • There nothing that you can do software wise with it. I use a noise canceling microphone, see if that helps.
    – Mitch
    Commented Jun 29, 2014 at 16:15
  • What is that..? Commented Jun 29, 2014 at 16:17
  • Take a look at This.
    – Mitch
    Commented Jun 29, 2014 at 16:30
  • 1
    If any one is using Laptop make sure you try to record from lowest frequency. For Audio Recorder, mp3 doesn't work for me because of high frequency but wav works fine because of low frequency. Commented Jul 15, 2014 at 10:54
11

Another one to look for is gnome-sound-recorder, it was added in 2014. It is simple and just records input from the mic.

It is packaged 16.04 in the universe repo (named gnome-sound-recorder).

1
  • Plus it has noise cancelling activated, in opposition to arecord for example!!
    – pedda
    Commented Jun 4 at 18:41
11

I always prefer shell commandline, I use below command to record voice:

avconv -f pulse -i default /home/$USER/Music/$(date +"%m%d%Y_%H%M%S_$HOSTNAME")_screencast.wav

to stop it press q

UPDATE:

Ubuntu switched to FFMPEG again as of Ubuntu 15.04 "Vivid Vervet"

The above command will continue to work by replacing avconv with ffmpeg

ffmpeg -f pulse -i default /home/$USER/Music/$(date +"%m%d%Y_%H%M%S_$HOSTNAME")_screencast.wav
1
3

If you are looking for only voice recording I'd suggest QARecord. It's a very simple application built with QT.

2

Make sure that your microphone sound level is not muted and that you have your microphone selected and turned up in Audacity.

1
  • Skype is working fine, but when I run Audacity in 14.04, it creates noise. So had to remove Audacity. Commented Jun 29, 2014 at 16:14
2

ffmpeg + module-echo-cancel

I have managed to achieve good sound quality with low background noise by:

I'm not sure why, but some recording methods don't seem to pick up the noise cancelling, on my tests so far:

  • arecord: no
  • recordmydesktop: no
  • kazam: yes

but it might be a question of passing the right command line option to the ones that didn't.

Another possible advantage of ffmpeg arecord is that it might support more output formats/effects and save that directly to the output file. I'm not sure if this is a good idea (delays due to encoding/effects processing?), but it seems to work, e.g. save to mp3 and add a tremolo effect:

ffmpeg -f alsa -i default -af tremolo=d=0.8 -t 30 out.wav

Maybe if you know how filters work it is possible to do something from ffmpeg itself, e.g. with highpass/lowpass: https://superuser.com/questions/733061/reduce-background-noise-and-optimize-the-speech-from-an-audio-clip-using-ffmpeg

Tested in Ubuntu 20.04.

1

Yet another program to record voice is fmedia. You can start recording with a single command:

fmedia --record --out=rec.flac

and stop recording by pressing Ctrl+C.

fmedia uses ALSA, so it works even if PulseAudio is not installed on your system.

1

I know this is a hack, but it's the solution I opted for after trying quite a few of the solutions here and it worked perfectly.

I used the default voice recorder on my Android phone. There was no background noise (which I had with other software) and the interface was relatively friendly.

To transfer the files to my computer over wifi I used ES File Explorer (see section 16 here).

To convert the files from 3gp to mp3:

sudo apt-get install libav-tools
avconv -i YourInputFileName.3gp -c:a libmp3lame YourOutputFileName.mp3

Or to mass convert all:

cd /path/to/your/folder/
for x in `ls *.3gp`; do avconv -i $x -c:a libmp3lame $x.mp3; done
# If I wasn't too lazy I'd remove the .mp3 extension too.

And to concatenate to one recorded file I used mp3wrap (install also with apt-get)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .