[pulseaudio-discuss] strange pulse / jack behaviour

Patrick Shirkey pshirkey at boosthardware.com
Wed Oct 31 09:58:20 PDT 2012


On Thu, November 1, 2012 3:45 am, Richard Bown wrote:
> On Thu, 1 Nov 2012 03:08:09 +1100
> Patrick Shirkey <pshirkey at boosthardware.com> wrote:
>
>>
>> On Wed, October 31, 2012 11:26 pm, Tanu Kaskinen wrote:
>> > On Mon, 2012-10-29 at 20:59 +1100, Patrick Shirkey wrote:
>> >> Hi,
>> >>
>> >> Does anyone have any thoughts on why the following is happening?
>> >>
>> >> Using Debian wheezy on an intel board with built in HDA chipset.
>> >> (Notebook
>> >> sound card)
>> >>
>> >> I was unable to start jack. It seemed like the problem might have
>> been
>> >> because pulse was running so I killed pulse with "pulseaudio -k".
>> That
>> >> didn't help.
>> >
>> > If you need to keep pulseaudio not running, put "autospawn = no" to
>> > ~/.pulse/client.conf. Then "pulseaudio -k" actually has the effect
>> that
>> > you expect it to have...
>> >
>> >> I installed pulseaudio-module-jack and configured
>> >> /etc/pulse/default.pa to include
>> >>
>> >> load-module module-jack-sink
>> >> load-module module-jack-source
>> >
>> > Could you undo all these modifications so that the problem can be
>> > debugged on a "normal" system?
>> >
>>
>> I have removed those two entries in the /etc/pulse/default.pa
>>
>> 3: The current situation is that I cannot run jackd (jack2 -1.9.9) with
>> "dbus enabled" in qjackctl misc settings window because I get an error :
>>
>> ++++
>> Failed to acquire device name : Audio0 error : Method "RequestRelease"
>> with signature "i" on interface "org.freedesktop.ReserveDevice1" doesn't
>> exist
>> Audio device hw:0 cannot be acquired..
>> ++++
>>
>> 2: I get the same error if I run it from the command line:
>>
>> jackd -d alsa -d hw:0
>>
>>
>> 3: If I try to use jackdbus instead of jackd I get this message instead:
>>
>> ++++
>> jackdbus should be auto-executed by D-Bus message bus daemon.
>> If you want to run it manually anyway, specify "auto" as only parameter
>> ++++
>>
>>
>> 4: I can run jackd with hw:1 with no problems
>>
>> 5: I can run jackd with hw:0 if I kill pulse and run it as superuser
>> with
>> "pulseaudio --system -D"
>>
>>
>> 6: Here's the output of  "pactl list modules short" as Richard
>> suggested:
>>
>> ++++
>> $ pactl list modules short
>> 0	module-device-restore
>> 1	module-stream-restore
>> 2	module-card-restore
>> 3	module-augment-properties
>> 4	module-alsa-card	device_id="0" name="pci-0000_00_1b.0"
>> card_name="alsa_card.pci-0000_00_1b.0" namereg_fail=false tsched=yes
>> fixed_latency_range=no ignore_dB=no deferred_volume=yes
>> card_properties="module-udev-detect.discovered=1"
>> 5	module-udev-detect
>> 6	module-jackdbus-detect
>> 7	module-native-protocol-unix
>> 8	module-default-device-restore
>> 9	module-rescue-streams
>> 10	module-always-sink
>> 11	module-intended-roles
>> 12	module-suspend-on-idle
>> 13	module-console-kit
>> 14	module-systemd-login
>> 15	module-position-event-sounds
>> 16	module-role-cork
>> 17	module-filter-heuristics
>> 18	module-filter-apply
>> 19	module-dbus-protocol
>> 20	module-switch-on-port-available
>> 21	module-x11-publish	display=:0
>> 22	module-x11-cork-request	display=:0
>> 23	module-x11-xsmp	display=:0
>> session_manager=local/xxxx:@/tmp/.ICE-unix/3709,unix/whare:/tmp/.ICE-unix/3709
>> 24	module-alsa-card	device_id="1"
>> name="usb-Yealink_Network_Technology_Ltd._VOIP_USB_Phone-00-Phone"
>> card_name="alsa_card.usb-Yealink_Network_Technology_Ltd._VOIP_USB_Phone-00-Phone"
>> namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no
>> deferred_volume=yes card_properties="module-udev-detect.discovered=1"
>> ++++
>>
>>
>>
>> >> restarted pulseaudio with pulseaudio -k ; pulseaudio and it attempted
>> to
>> >> start jack server but was not able to. At that point I was unable to
>> get
>> >> pulseaudio to start at all or jack so I decided to reboot in case it
>> was
>> >> a
>> >> kernel oops.
>> >>
>> >> After rebooting pulseaudio still would not start. I tried a couple of
>> >> options but in the end I had to run "pulseaudio --system -D" as
>> >> superuser.
>> >> After doing that jackd would run from qjackctl but there are not
>> >> pulse-sink/source connections in jack probably because pulse is
>> running
>> >> as
>> >> superuser but I'm not 100% on the exact reason for this behaviour. I
>> can
>> >> see that pulseaudio is running with "ps aux".
>> >
>> > I'm pretty sure that the jack stuff won't work if you run pulseaudio
>> in
>> > the system mode.
>> >
>> > It would be nice if we could start from a clean slate, and get the
>> exact
>> > error messages.
>> >
>> > --
>> > Tanu
>> >
>> >
>>
> Jackd will not start unless it can acquire a device, which has to be free
> and
> unused by any other device.
> If the wanted device is already captured , it must be released before
> jackd
> starts.
> AFAIK pulseaudio has no psychic ability to know that jackd wants the
> device
> which it is already using.
>

module-jackdbus-detect is supposed to release the lock on the device when
jackdbus (jackd2) starts and then auto reconfigure and connect to
jackdbus/jackd2 loading the jack-sink/source modules once jackdbus/jackd2
has successfully started.

The problem in this case appears to be that it does not attempt to release
the lock on the device for some unknown reason.



--
Patrick Shirkey
Boost Hardware Ltd


More information about the pulseaudio-discuss mailing list