Re: Jackd not exiting upon disconnecting usb card

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Len,

* Len Ovens <len@xxxxxxxxxxxxx> [2025-02-09 17:45]:
[...]
> Jackd is a manually set up utility, it is told the device name at start and
> as such, it has no idea what to do when that device vanishes. It is possible
> with the tools supplied to tell jack to change it's device or backend while
> running via dbus. I have had varying amounts of success doing this after the
> USB device has been pulled. I would guess that because it is possible to
> change the device like this, jackdbus continues to run in hopes something
> else will happen.

following up your kind reply, I discovered that I had disabled the "JACK D-Bus interface" in qjackctl and enabled it now.

I am still wondering about the difference between qjackctl's "JACK D-Bus
interface" and its "D-Bus interface" by the way. Enabled both.

Now qjackctl will apparently launch jackdbus instead of jackd.

Unplugging the devuce while jackdbus runs will yield
	ERROR: ALSA: capture device disconnected
	ERROR: JackAudioDriver::ProcessAsync: read error, stopping...
and jackdbus keeps running. Qjackctl will show "started" status.
Clicking onto its "Stop" button, will freeze qjackctl for a long time
until it posts:

 Client deactivated.
 D-BUS: JACK server is stopping...
 ERROR: JackPosixProcessSync::LockedTimedWait error usec = 20000000 err = Connection timed out
 ERROR: JackEngine::ClientDeactivate wait error ref = 3 name = qjackctl
 ERROR: JackPosixProcessSync::LockedTimedWait error usec = 4000000 err = Connection timed out
 ERROR: JackEngine::ClientCloseAux wait error ref = 3
 Client 'qjackctl' with PID 1847586 is out
 Stopping jack server...
 ERROR: JackPosixProcessSync::LockedTimedWait error usec = 20000000 err = Connection timed out
 ERROR: JackEngine::ClientDeactivate wait error ref = 2 name = dbusapi
 ERROR: failed to deactivate dbusapi jack client. error is -1
 2025: Client 'system' with PID 0 is out
 D-BUS: JACK server was stopped (org.jackaudio.service aka jackdbus).
 ERROR: JackPosixProcessSync::LockedTimedWait error usec = 4000000 err = Connection timed out
 ERROR: JackEngine::ClientCloseAux wait error ref = 2
 ERROR: ALSA: channel flush for playback failed (No such device)
 ERROR: Cannot stop driver
 ERROR: control open "hw:UA25" (No such device)
 ERROR: control open "hw:UA25" (No such device)

Jackdbus is still running, also when quitting qjackctl. Reconnecting the usb device and starting via a new qjackctl will not work, reporting
 D-BUS: JACK server could not be started. Sorry
 Cannot connect to server socket err = No such file or directory
 Cannot connect to server request channel
 jack server is not running or cannot be started
 JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
 JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
 Cannot connect to server socket err = No such file or directory
 Cannot connect to server request channel
 jack server is not running or cannot be started
 JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
 JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
 Could not connect to JACK server as client. - Overall operation failed. - Unable to connect to server. Please check the messages window for more info.
 Cannot connect to server socket err = No such file or directory
 Cannot connect to server request channel
 jack server is not running or cannot be started
 JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
 JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
 Starting jack server...
 JACK server starting in realtime mode with priority 10
 self-connect-mode is "Don't restrict self connect requests"
 ERROR: cannot register object path "/org/freedesktop/ReserveDevice1/Audio2": A handler is already registered for /org/freedesktop/ReserveDevice1/Audio2
 ERROR: Failed to acquire device name : Audio2 error : A handler is already registered for /org/freedesktop/ReserveDevice1/Audio2
 ERROR: Audio device hw:UA25 cannot be acquired...
 ERROR: Cannot initialize driver
 ERROR: JackServer::Open failed with -1
 ERROR: Failed to open server
 Saving settings to "/home/peter/.config/jack/conf.xml" ...

So this is basically the same behavior as with jackd before. 
I am curious what the intended behavior with jackdbus and qjackctl is
supposed to be, given that it all is set up correctly.

I might look closer into dbus syslogs unless someone tells me that there
are certain usb audio cards, which do not signal to dbus properly.
 

> Basically, a device vanishing in an audio context is a system failure. USB
> might be designed for hot plugging but jackd is not.
Good point Len! I find that jackd/jackdbus should exit nevertheless in such cases.

Again, thanks for the help!
best, P
_______________________________________________
Linux-audio-user mailing list -- linux-audio-user@xxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to linux-audio-user-leave@xxxxxxxxxxxxxxxxxxxx



[Index of Archives]     [Linux Sound]     [ALSA Users]     [Pulse Audio]     [ALSA Devel]     [Sox Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux