I'm trying to record a phone call made with Google Voice Chat using Audacity. I'm running Linux Mint 17.

In this example, I'm making an outbound phone call from my computer to a person on a normal phone. I will refer to audio travelling from my computer to the phone as outbound audio, and audio travelling from the phone to my computer as inbound audio.

I followed the section for PulseAudio in this tutorial. This almost works the way I want it to, but not perfectly because I can only record either outbound audio, or inbound audio, but not both simultaneously.


In the PulseAudio Volume Control, there are 3 options available (see screenshot). They are:

  1. Monitor of GF108 High Definition Audio Controller Digital Stereo (HDMI)
  2. Monitor of Built-in Audio Analog Stereo
  3. Built-in Audio Analog Stereo.

If I choose option 1, no sound is recorded in Audacity. If I choose option 2, only inbound audio is recorded. If I choose option 3, only outbound audio is recorded.

This means that using Audacity, I can only record one side of the conversation at any given time. I'm trying to figure out how to record both sides of the conversation simultaneously.

The closest I have come to achieving my goal is to manually toggle the "ALSA Capture from" option between option 2 and option 3 during a conversation. But this is tedious and does not allow interruptions in the conversation to be recorded.

Is there a way to record both the "Built-in Audio Analog Stereo" and the "Monitor of Built-in Audio Analog Stereo" at the same time? If so, how?

  • What you be happy with 2 recordings one per direction, that you can mix afterwards? – Cristian Ciupitu Jun 24 '14 at 18:13
  • Yes, that would be fine. How do you configure that? – axiopisty Jun 24 '14 at 18:22
  • I have no idea yet, but I might investigate. Sorry if I gave you false hopes. – Cristian Ciupitu Jun 24 '14 at 18:32

You can try to enable "the stereo mixer" using pactl to load module-loopback

The idea is to mix the source stream from your microphone to the speakers. With a correct set for volume and reciprocal position of microphone and speakers you should be able to avoid the Larson effect. :-)

Load the module-loopback

 pactl load-module module-loopback

and after change the recording device (Alsa capture from) from the built-in to the monitor one.
[You find in Volume control->Recording->Alsa plug in / Alsa capture from].

There's a short video for Ubuntu system on youtube


allows one to route audio from a source directly back to a sink.

| improve this answer | |
  • 9
    Is there a way to pipe both the output stream and input stream into a third stream which is then recorded? I'd like to record both sides of a conversation, but not hear my own voice through my speakers. – mhelvens Mar 27 '17 at 10:45
  • So there is no way to completely stop my own voice from playing back through my speakers? I've played with the volumes/gains and can see a sweet spot, but sound still comes through my headset enough to be annoying. – Vahid Pazirandeh Sep 13 '18 at 22:33

By creating a virtual sound card and looping back both the real sound card's input and output into it, it's possible to record both, without hearing yourself speak.

The following is adapted from this solution to a more complex problem.

First create a sink to be used as a virtual sound card, and add two loopbacks into it, which will be used to route the real sound card's input and output.

pacmd load-module module-null-sink sink_name=Virtual1 sink_properties=device.description=Virtual-Sound-Card
pactl load-module module-loopback sink=Virtual1
pactl load-module module-loopback sink=Virtual1

Next, open pavucontrol, navigate to the "Recording" tab and set the real sound card's input and output as the sources for each loopback, which in the OP's case would be "Built-in Audio Analog Stereo" and "Monitor of Built-in Audio Analog Stereo".

Example of Recording tab configuration

Finally, navigate pavucontrol's "Input Devices" tab and set the monitor of the virtual sound card as the fallback device (by clicking the button with a check mark in a green circle to the right of "Monitor of Virtual-Sound-Card").

Example of virtual sound card set as fallback

If you're using the ALSA plug-in, as depicted in the OP's screenshot, set "ALSA Capture from" to "Monitor of Virtual-Sound-Card" in the "Recording" tab.

Now, audacity should pick up the virtual sound card's input, which contains both the real sound card's input and output, while your speakers/headphones will still be reproducing the real sound card's output only, so you won't be hearing your microphone.

| improve this answer | |
  • 1
    This almost works. I am able to redirect chromium karaoke music+mic input into audacity. The only problem is I don't hear any karaoke music while singing. Is there to send chromium audio to audacity+speaker/headset. – Peter Apr 5 at 0:53
  • Works perfectly. You do not even have to set the monitor of the virtual sound card as fallback device. – Waschbaer May 15 at 11:19
  • 1
    Is there a way to save the configuration in case of a system restart? Right now, I have to create the virtual sound card every time I startup Linux. – Waschbaer May 15 at 11:20

After trying all the hacks and tools (Audacity, audio recorder etc ). Finally found this Open Broadcaster Software (OBS), which is super easy and just does the job.

In Settings → Audio, I was able to select:

. Audio output (Either desktop or earphone or bluetooth also possible)
. Mic - (Desktop | earphone)

For Source, I selected Screen Capture (XSHM) to capture the entire desktop or can keep it blank as well.

To install:

sudo add-apt-repository ppa:obsproject/obs-studio && sudo apt install obs-studio

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.