duncanthrax / scream

Virtual network sound card for Microsoft Windows
Microsoft Public License
1.69k stars 142 forks source link

Jack auto-connections cause crash in 7.1 surround #182

Open Not-a-true-statement opened 2 years ago

Not-a-true-statement commented 2 years ago

I'm using pipewire btw.

When scream is in jack mode with 7.1 surround the output has multiple outputs as it should be. The problem is that the scream node connects to my main output until it fills all the inputs. Once the inputs are filled it is randomly connecting to different nodes. When it does this it crashes. Is there a way to disable auto-connection and let a program like qjackctl handle the connections?

Ouput

Switched sample rate 48000, sample size 32 and 8 channels
JACK sample rate 48000
registered jack port 'Front Left' for channel 0
registered jack port 'Front Right' for channel 1
registered jack port 'Front Center' for channel 2
registered jack port 'LFE / Subwoofer' for channel 3
registered jack port 'Rear Left' for channel 4
registered jack port 'Rear Right' for channel 5
channel 0 connected to output port Main_Headphone Audio/Sink sink:playback_FL
channel 1 connected to output port Main_Headphone Audio/Sink sink:playback_FR
channel 2 connected to output port WH-1000XM3:playback_FL
channel 3 connected to output port WH-1000XM3:playback_FR
channel 4 connected to output port Family 17h (Models 00h-0fh) HD Audio Controller Analog Stereo:playback_FL
channel 5 connected to output port Family 17h (Models 00h-0fh) HD Audio Controller Analog Stereo:playback_FR
Segmentation fault (core dumped)

I found a workaround for the moment.

  1. First create a sink with 8 channels for surround. pactl load-module module-null-sink media.class=Audio/Sink sink_name=TestSurround channel_map=surround-71

  2. Then run the scream instance with pulse. scream -u -p 4011 -o pulse

  3. Using pavucontrol set output of the scream instance to the new sink.

The connections will be established once you play audio through windows. If the audio is played before setting the output to sink then it crashes like before.