Update to the last post...if I plug in the headphones before I run the script, the headphones. but if I unplug them the speakers don't come on.

On Wed, Jun 6, 2018 at 1:31 PM, Mac <macdroid53@gmail.com> wrote:
Just caught an interesting thing.

With the script as shown below, I get solid, reproducible setup every time:

#!/bin/bash
killall -9 jackd jackdbus
jack_control ds alsa dps capture none dps playback none
jack_control dps device hw:PCH
jack_control dps rate 48000
jack_control dps nperiods 2
jack_control dps period 256
jack_control start
pactl unload-module module-udev-detect
pactl unload-module module-alsa-card
pactl unload-module module-jackdbus-detect
pactl load-module module-jack-sink client_name=PulseOut channels=2 connect=no
pactl load-module module-jack-source client_name=PulseIn channels=2 connect=no

jack_connect system:capture_1 PulseIn:front-left
jack_connect system:capture_2 PulseIn:front-right
jack_connect PulseOut:front-left system:playback_1
jack_connect PulseOut:front-right system:playback_2

But, the sound is specifically connected to the onboard speakers of the laptop. If I plug headphones in, the speakers stop and nothing from the headphones.

I suppose this is expected, since pavucontrol shows only the Jack sink (PulseOut).

On Wed, Jun 6, 2018 at 12:38 PM, Mac <macdroid53@gmail.com> wrote:


On Wed, Jun 6, 2018 at 10:22 AM, Bill Purvis <bill@billp.org> wrote:
On 06/06/18 14:12, Mac wrote:


....

Apparently not. I tried "jack_control dps device surround71:PCH,0" and still got playback_1,_2. (There are also surround21, 41, etc. none of those changed anything either.)
As for hdajackretask, when I tried to "Apply now" I got a device busy message. I didn't try "Install boot override".
 
In my case the real answer is I don't know. I tend to disable any internal audio device to clear up one more thing that may interfere with "real audio".


I use qjackctl, so I'm not that familiar with the command line interface.
In the Qjackctl settings panel, under advanced, it shows the 'system' output device,
and also a field for number of channels. I had an 8-channel DAC connected a while back
and setting channels=8 and restarting produced 8 system outputs. So it is possible.

Looking at web pages for jack_control, I'd suggest trying:

    jack_control dps device surround71LPCH,0
    jack_control dps channels 7

might be the answer?

Assuming the 'L" was a typo i changed the lines in the script to:

jack_control dps device surround71:PCH,0
jack_control dps channels 7

That produced the following error after attempting execute the second line:

DBus exception: org.jackaudio.Error.InvalidArgs: Invalid container address 'driver':'channels':'(null)' supplied to method 'GetParameterInfo'.

A look at the jack_control help showed the parameter was "outchannels: Number of playback channels (defaults to hardware max) (uint:notset:0:0)"

I assume this means the surround71 knows only 2 channels, but I changed the script:

jack_control dps device surround71:PCH,0
jack_control dps outchannels 7

This does not throw an error, but still only results in 2 system outputs.