Awe! Times they are a-changing although Bob Dylan has no D-Business here. The old and cutie gooey for JACK just got one turn around the verge of bit-rotting. This time it brings full JACK D-Bus support, or almost. It also adds D-Bus access for most GUI actions which some might find pretty handy for keyboard shortcut binding from your desktop environment of choice.
However, if babies health is your top concern you can just turn this D-Bus thing off and play with the Old times ;) Ahem...
QjackCtl 0.3.6 is now released!
More details in the change-log, below.
Website:
http://qjackctl.sourceforge.net
Project page:
http://sourceforge.net/projects/qjackctl
Downloads:
source tarball:
qjackctl-0.3.6.tar.gz
source package (openSUSE 11.2):
qjackctl-0.3.6-2.rncbc.suse112.src.rpm
binary packages (openSUSE 11.2):
qjackctl-0.3.6-2.rncbc.suse112.i586.rpm
qjackctl-0.3.6-2.rncbc.suse112.x86_64.rpm
binary packages (Ubuntu 8.04):
qjackctl_0.3.6-1.rncbc.ubuntu804_i386.deb
qjackctl_0.3.6-1.rncbc.ubuntu804_amd64.deb
binary packages (Ubuntu 9.10):
qjackctl_0.3.6-1.rncbc.ubuntu910_i386.deb
qjackctl_0.3.6-1.rncbc.ubuntu910_amd64.deb
Weblog (upstream support):
http://www.rncbc.org
License:
QjackCtl is free, open-source software, distributed under the terms of the GNU General Public License (GPL) version 2 or later.
Change-log:
Make sure socket names are unique on each side of the Patchbay (another patch from Dominic Sacre, thanks).
A bunch of primitive D-Bus interface slots have been added, allowing shortcut access to most of main applications actions like toggling Messages, Status, Connections, Patchbay widget pop-ups, reset stats, transport and so on. New bindings are given eg. via dbus-send --system / org.rncbc.qjackctl.(main, messages, status, connections, patchbay, setup, about, reset, rewind, backward, play, pause, forward). (from an original idea from Sebastian Gutsfeld, thanks).
Patchbay snapshot now tolerates JACK client port strings that have more than one semi-colon in it, honoring just the first one exactly as everywhere else eg. Connections. (a glitch as reported by Geoff Beasley while using a2jmidid).
Most modal message dialog boxes (eg. critical errors) are now replaced by system tray icon bubble messages where available (mitigating feature request #2936455).
Comply with jackd >= 0.118.0 which now runs in real-time mode by default; use of -R is now deprecated from the jackd command line interface options; use -r to run in non-real-time-scheduling.
A man page has beed added.
Got rid of a pretty old and never really useful "jackd-realtime" server path option--actually, it was only seen available on the now defunct old Mandrake Linux distro.
D-Bus support, as provided by org.jackaudio.service aka jackdbus, is now being introduced and used wherever available and whenever enabled. Configuring, starting, stopping and logging the JACK back-end server through the "infamous" jackdbus service is now being seamlessly exploited.
Global configuration state is now explicitly saved/committed to disk when Setup dialog changes are accepted and applied.
Server name command line option added (-n, --server-name).
Single application instance restriction option added (X11).
Setup for the netjack (slave) "net" driver has now sample-rate and frames per buffer (period size) settings disabled and/or ignored, as those are pretty much auto-detected by default; also, a new "netone" backend driver option has been introduced (as suggested by Torben Hohn).
Czech (cs) translation added (by Pavel Fric).
Fixed some main window keyboard shortcuts. Escape key now closes Connections, Patchbay, Status and Messages widgets as usual (bug #2871548).
Fixed glitch on configure portaudio support, specially when the library is not detected as available.
Cheers && Enjoy.
Comments
Re: Perhaps a bug??
Ok, with log feature I discovered one interesting thing...
Quitting the application, qjackctl executes a pre-shutdown script before jackd stop, and a pre-shutdown script after too!! I don't know if this issue is only on qjackctl from debian sid.
Using start/stop from gui, every script works well.
I'm also doing italian translation for the gui, could you include it?
Thank you
Re: Perhaps a bug??
Now, are you sure that "Post-shutdown scripts..." is never seen on the logs when you quit? You say that "Shutdown script..." which is about the pre-shutdown one, appear twice?? Weird.
Re. regarding (it) translation, you're welcome! Send me your "qjackctl_it.ts" file in a email attachment and I'll be pleased to add it to the source code repository ASAP.
Seeya
Re: Perhaps a bug??
Yes, as you describe I've 2 pre-shutdown scripts in the log:
22:22:42.103 Statistics reset.
22:22:46.227 Client deactivated.
22:22:46.249 Shutdown script...
22:22:46.250 pulse-into-jack pre-stop
Executing "pre" action for pulse-into-jack
Killing and storing applications connected to PulseAudio
*** ***
skype
*** ***
22:22:47.037 Shutdown script terminated successfully.
22:22:47.037 JACK is stopping...
jack main caught signal 15
22:22:47.250 Shutdown script...
22:22:47.251 pulse-into-jack pre-stop
Nessun demone PulseAudio in esecuzione o non in esecuzione come demone di sessione.
Executing "pre" action for pulse-into-jack
Killing and storing applications connected to PulseAudio
*** ***
*** ***
22:22:47.688 Shutdown script terminated successfully.
22:22:47.688 JACK is stopping...
received signal 15 during shutdown (ignored)
22:22:47.889 Logging stopped --- lun mar 22 22:22:47 2010 ---
As you can see, pulse-into-jack pre-stop is executed twice.
Here's an extract from my Qjack.conf:
[Options]
StartJack=true
StartupScript=true
StartupScriptShell=pulse-into-jack pre-start
PostStartupScript=true
PostStartupScriptShell=pulse-into-jack post-start
ShutdownScript=true
ShutdownScriptShell=pulse-into-jack pre-stop
PostShutdownScript=true
PostShutdownScriptShell=pulse-into-jack post-stop
StdoutCapture=true
I don't know if this problem is debian related.
My translation isn't finished yet. I'll send you as soon as I complete it! I think in a few of days..
Re: Perhaps a bug??
May you try with your pre-shutdown script in stub mode, that is doing nothing but printing its invocation mode ?
I suspect you're bringing the jackd server down with pulseaudio, while on the pre-stop case and that just sounds like a race condition is lurking in there, as qjackctl will try to terminate jackd once again, right after the pre-shutdown script returns.
Seeya
Re: Perhaps a bug??
I think no, jackd is not killed by pre-stop script.
Here's a log of a simple start and stop using the gui buttons:
13:20:14.724 Logging started --- mer mar 24 13:20:14 2010 ---
13:20:14.739 Patchbay activated.
13:20:14.762 Statistics reset.
13:20:14.808 D-BUS: Service not available (org.jackaudio.service aka jackdbus).
13:20:14.979 Startup script...
13:20:14.980 pulse-into-jack pre-start
13:20:14.983 ALSA connection graph change.
Executing "pre" action for pulse-into-jack
Killing and storing applications connected to PulseAudio
*** ***
skype
*** ***
13:20:15.781 Startup script terminated successfully.
13:20:15.782 JACK is starting...
13:20:15.782 /usr/bin/jackd -P70 -t5000 -dalsa -dhw:1 -r48000 -p128 -n2 -Xseq
13:20:15.784 JACK was started with PID=7456.
jackd 0.118.0
Copyright 2001-2009 Paul Davis, Stephane Letz, Jack O'Quinn, Torben Hohn and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
JACK compiled with System V SHM support.
loading driver ..
apparent rate = 48000
creating alsa driver ... hw:1|hw:1|128|2|48000|0|0|nomon|swmeter|-|32bit
control device hw:1
configuring for 48000Hz, period = 128 frames (2.7 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 32bit integer little-endian
ALSA: use 2 periods for capture
ALSA: final selected sample format for playback: 32bit integer little-endian
ALSA: use 2 periods for playback
13:20:15.987 Server configuration saved to "/home/revol/.jackdrc".
13:20:15.993 Statistics reset.
13:20:16.031 Client activated.
13:20:16.032 Post-startup script...
13:20:16.033 pulse-into-jack post-start
Executing "post" action for pulse-into-jack
Restarting stored applications connected to PulseAudio
*** ***
skype
*** ***
13:20:16.455 Post-startup script terminated successfully.
13:20:16.457 JACK active patchbay scan...
13:20:16.458 ALSA active patchbay scan...
13:20:16.459 JACK connection change.
13:20:16.460 ALSA connection change.
13:20:16.661 JACK active patchbay scan...
13:20:16.662 ALSA active patchbay scan...
13:20:26.529 XRUN callback (1).
**** alsa_pcm: xrun of at least 31.983 msecs
13:20:27.921 XRUN callback (2).
**** alsa_pcm: xrun of at least 31.301 msecs
13:20:28.486 XRUN callback (1 skipped).
13:20:28.514 Client deactivated.
13:20:28.526 Shutdown script...
13:20:28.527 pulse-into-jack pre-stop
Executing "pre" action for pulse-into-jack
Killing and storing applications connected to PulseAudio
*** ***
skype
*** ***
13:20:29.310 Shutdown script terminated successfully.
13:20:29.310 JACK is stopping...
jack main caught signal 15
subgraph starting at PulseAudio JACK Sink timed out (subgraph_wait_fd=18, status = 0, state = Triggered, pollret = 0 revents = 0x0)
13:20:34.113 ALSA connection graph change.
13:20:34.131 ALSA active patchbay scan...
13:20:34.182 JACK was stopped successfully.
13:20:34.184 Post-shutdown script...
13:20:34.185 pulse-into-jack post-stop
Executing "post" action for pulse-into-jack
Restarting stored applications connected to PulseAudio
*** ***
skype
*** ***
13:20:34.596 Post-shutdown script terminated successfully.
Everything works well doing start/stop.
The problem is when I start and quit the app, behaviour that can be seen on my previous post.
What do you mean with "stub"? Something like "execute the scripts separately in a shell"?
Thank you
P.S.: this captcha is driving me crazy!! too difficult!!
Re. What do you mean with "stub"?
Re. What do you mean with "stub"?
erm, just printing a "post-stop" line would be fine, but don't take any other actions besides that.
Re. captcha is driving me crazy
if you register you'll get rid of the captcha :) even with that crazyness there's spam sneaking in, so i won't make it any easier :) sorry.
[UPDATE] Would you mind checking out from current SVN TRUNK (qjackctl 0.3.6.1+) and test whether things are any different?
Cheers
I'm doing: :/usr/src$ svn co
I'm doing:
:/usr/src$ svn co https://qjackctl.svn.sourceforge.net/svnroot/qjackctl/trunk qjackctl
but I can't find ./configure script.
So:
:/usr/src$ cd qjackctl/
:/usr/src/qjackctl$ autoconf
:/usr/src/qjackctl$ ./configure
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking whether gcc needs -traditional... no
checking for Qt library version >= 4.1... yes
checking for qmake... /usr/share/qt4/bin/qmake
checking for moc... /usr/share/qt4/bin/moc
checking for uic... /usr/share/qt4/bin/uic
checking for lupdate... /usr/share/qt4/bin/lupdate
checking for lrelease... /usr/share/qt4/bin/lrelease
checking for main in -lm... yes
checking for main in -lX11... yes
checking for main in -lXext... yes
checking for lroundf in -lm... yes
checking for main in -ljack... yes
checking for main in -lasound... yes
checking for main in -lportaudio... no
configure: WARNING: *** PortAudio library not found.
checking for ANSI C header files... yes
checking for sys/wait.h that is POSIX.1 compatible... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking for unistd.h... (cached) yes
checking poll.h usability... yes
checking poll.h presence... yes
checking for poll.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking jack/jack.h usability... yes
checking jack/jack.h presence... yes
checking for jack/jack.h... yes
checking jack/statistics.h usability... yes
checking jack/statistics.h presence... yes
checking for jack/statistics.h... yes
checking CoreAudio/CoreAudio.h usability... no
checking CoreAudio/CoreAudio.h presence... no
checking for CoreAudio/CoreAudio.h... no
checking jack/midiport.h usability... yes
checking jack/midiport.h presence... yes
checking for jack/midiport.h... yes
checking alsa/asoundlib.h usability... yes
checking alsa/asoundlib.h presence... yes
checking for alsa/asoundlib.h... yes
checking for system... yes
checking for jack_transport_query in -ljack... yes
checking for jack_is_realtime in -ljack... yes
checking for jack_get_xrun_delayed_usecs in -ljack... yes
checking for jack_get_max_delayed_usecs in -ljack... yes
checking for jack_midi_event_get in -ljack... yes
checking for jack_port_get_aliases in -ljack... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating qjackctl.pro
config.status: creating qjackctl.spec
config.status: creating qjackctl.desktop
config.status: error: cannot find input file: `config.h.in'
Please tell me how to checkout svn version!!
Re: I can't find ./configure script.
you need to create the configure script, following the instructions:
make -f Makefile.svnseeya
YEEEEEAAAHHH!!! Now
YEEEEEAAAHHH!!!
Now everything's working perfectly!! Thank you so much!
My translation is ready to go, I'm sending it to you through the standard mail of this site.
Bye
Re: Italian translation
Thanks, your contribution is now on svn trunk (qjackctl 0.3.6.2+)
Cheers
Pages
Add new comment