I work on two computers with one USB headset. I want to listen to both by piping the non-Linux computers' output into the Linux computer's line in (blue audio jack) and mixing the signal into the Linux computer's headset output using PulseAudio.

Audio hardware diagram

pavucontrol shows a "Built-in Audio Analog Stereo" Input Device which allows me to pick ports like "Line In" (selected), "Front Microphone", "Rear Microphone". I can see the device's volume meter reacting to audio playback on the non-Linux machine.

Built-in Audio Analog Stereo

How do I make PulseAudio play that audio signal into my choice of Output Device?


1. Load the loopback module

pacmd load-module module-loopback latency_msec=5

creates a playback and a recording device.

2. Configure the devices in pavucontrol

In pavucontrol, in the Recording tab, set the "Loopback" device's from input device to the device which receives the line in signal.

recording settings

In the Playback tab, set the "Loopback" device's on output device to the device through which you want to hear the line in signal.

playback settings

3. Troubleshooting

If the audio signal has issues, remove the module with pacmd unload-module module-loopback and retry a higher latency_msec= value

This answer was made possible by this forum post. Thanks!

| improve this answer | |

pacmd may have to be pactl (with the same arguments). For me it didn't work with pacmd, did with pactl.

| improve this answer | |
  • Please edit this so it makes sense even if the other answer is deleted.   Reference the other answer (by stating the name of the author), but copy all essential information into your answer. – G-Man Says 'Reinstate Monica' Dec 1 '18 at 18:50

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.