Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I'm trying to listen to the audio output of a specific process (A) and another process (B) while redirecting A's audio output to B's audio input. This would be the equivalent of playing music into Skype while listening to both the music and your friend and having your friend be able to hear you.

I have tried following the tutorial on openSUSE (Google "Looking (maybe) for audio mixer for use with Pulse Audio") about it and even watched the video several times. I previously tried JACK only to find out it won't recognize my headset, the Logitech G35.

I'm able to play the music, have both my friend and I hear it but I can't send my voice at the same time. It's either my voice or the music that my friend hears. How can I also send my voice?

Some pictures of my setup (using one Null Output):

Playback tab: enter image description here

Recording tab: enter image description here

share|improve this question
add comment

2 Answers 2

up vote 5 down vote accepted

After many hours of tinkering I finally achieved it!

I created two Null Outputs and created two loopbacks for the first and one loopback for the second.

pactl load-module module-null-sink sink_name=Virtual1
pactl load-module module-null-sink sink_name=Virtual2
pactl load-module module-loopback sink=Virtual1
pactl load-module module-loopback sink=Virtual1
pactl load-module module-loopback sink=Virtual2

Next I opened PulseAudio Volume Control (pavucontrol)

These are my settings. I typed them in the order they appear. Numbers go from up to down.

  • Recording tab:

    • Applications:
      • All applications should input from your headset/microphone.
      • Except the application(s) you want to send the audio to should be set to one of the following. If you ONLY want to send the audio: Monitor of Null Output 1. It will be the first "Null Output" in the list. If you want to send both the audio and your voice: Monitor of Null Output 2. It will be the second "Null Output" in the list.
    • Virtual Streams:
      • Loopback to Null Output (1): Your headset/microphone
      • Loopback to your headset/microphone: Null Output 1. It will be the first "Null Output" in the list.
      • Loopback to Null Output: Null Output 1. It will be the first "Null Output" in the list.
  • Playback tab:

    • Applications:
      • All applications should output to your headset/speaker.
      • Except the application(s) you want to record/send through Skype/stream should be set to Null Output 1. It will be the first "Null Output" in the list.
    • Virtual streams:
      • Loopback of your headset: Null Output 2. It will be the second "Null Output" in the list.
      • Loopback of Monitor of Null Output (1): Your headset.
      • Loopback of Monitor of Null Output (2): Null Output 2. It will be the second "Null Output" in the list.
share|improve this answer
add comment

just to not get confused with the "null Output", just specify the names like this:

pactl load-module module-null-sink sink_name=Virtual1 sink_properties=device.description="NAME HERE (mic+music)"
pactl load-module module-null-sink sink_name=Virtual2 sink_properties=device.description="NAME HERE (only music)"
pactl load-module module-loopback sink=Virtual1
pactl load-module module-loopback sink=Virtual1
pactl load-module module-loopback sink=Virtual2
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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