3

I want to separate sound from different applications, using virtual sinks, then mix them together into single output of my soundcard, all using pulseaudio.

Is there an option to do such thing?

5
  • Do you need a command line solution, or is it asking for a GUI application such as pavucontrol?
    – Takkat
    Mar 25, 2014 at 12:46
  • Both will be suitable. For now i only know how to create sinks using pactl, and how to redirect running application to that sink using pavucontrol. But i still lacking knowledge of how to redirect sound from that sink into output.
    – Botpl
    Mar 25, 2014 at 13:16
  • ok i don't get it... i create new sink with pactl load-module module-null-sink sink_name=VoIP sink_properties=device.description="VoIP(Skype)" and the last step is to create bridge between that sink and output but pactl load-module module-loopback sink=ladspa_output.mbeq_1197.mbeq works perfecty fine but my ears are being blasted with massive feedback that quickly turns into unpleasant distortion and i have to manually switch the listening for my new sink, but when i do pactl load-module module-loopback source=VoIP sink=ladspa_output.mbeq_1197.mbeq leaves me with an error
    – Botpl
    Mar 25, 2014 at 14:58
  • Can't test this atm (pulseaudio free zone here) but rather than module-loopback you may want to look into module-combine-sink.
    – Takkat
    Mar 25, 2014 at 14:58
  • np ;) but module-combine-sink will only create new sink that will listen to his "slaves" as far as i understand, so that option will be useless for me and will only draw CPU, where i actually need to automatically create new playback for the alsa output that will listen to new sink
    – Botpl
    Mar 25, 2014 at 15:10

1 Answer 1

2

I finally got it to work

I was making the simple mistake of forgetting about the word .monitor in source parameter

It looks like this

###Create two virtual sinks named VoIP and Games
pactl load-module module-null-sink sink_name=VoIP sink_properties=device.description="Virtual_Sink"
pactl load-module module-null-sink sink_name=Games sink_properties=device.description="Virtual_Sink_2"

###Redirect sound from them into output
###In my case alsa_output.pci-0000_00_1b.0.analog-stereo
pactl load-module module-loopback source=VoIP.monitor sink=alsa_output.pci-0000_00_1b.0.analog-stereo latency_msec=200
pactl load-module module-loopback source=Games.monitor sink=alsa_output.pci-0000_00_1b.0.analog-stereo latency_msec=50

and then run any application with PULSE_SINK=Games or PULSE_SINK=VoIP environmental variables.

You must log in to answer this question.

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