Re: [LAU] Help needed with Scripting in QjackCtl

From: Robin Gareus <robin@email-addr-hidden>
Date: Sun Feb 27 2011 - 16:48:24 EET

On 02/27/2011 02:12 PM, Dan Capp wrote:
> *
> david wrote:
>> Hmm, maybe make a script that checks to see if firewire device is
>> connected. If true, it starts JACK with the firewire backend, otherwise,
>> it starts with your ALSA backend. Maybe you could run that script on
>> startup.*
>
> Thanks David, but as a beginner I have no idea where to write this scipt.

The goal you want to achieve is not really "beginner-level". Seamless
JACK Destop integration is sth that even experts have not cleanly
solved. It's mostly historical: AFAIK jack was never really intended as
flexible desktop-sound daemon.

OTOH writing a custom script for one individual use-case is not very hard.

> I assume you don't mean that I write such a script in the QjackCtl setup GUI,
> right?

right.

You do want to control qjackctl.

The qjackctl "setup->scripting" options are intended if you want to
control some other program(s) _from_ qjackctl.

Shell Script is series of command written in plain text file.
You write scripts it in a text editor. Save it to e.g. 'myfile.sh' and
make it executable (right-click-on-file -> Properties -> Permisions ->
"allow executing file as program" or use a Terminal run 'chmod +x
myfile.sh').

"How to write shell script":
  http://www.freeos.com/guides/lsst/ch02sec01.html

> *Dominic Sacr? wrote:*
> *> The "Execute script on Startup" field is used to run a command before
>> the JACK server is started (which may or may not be the same time
>> QjackCtl is started).
>> The meta-symbols can be used to pass parameters to the command. For
>> example, if "alsa" is your active QjackCtl preset, %P would be replaced
>> with "alsa" when the command is executed.
>
>> From your description it sounds like to don't need a startup script at
>> all, but what you really want is "qjackctl -p alsa".*

Alas, it's not going to be that easy. AFAIK that will only work if jack
is not yet started.

> That's very insightful Dominic - thanks! What would "qjackctl -p alsa" do
> and where would I enter it?

It launches qjackctl (if it is not already started) and selects the
preset named "alsa". - Open a terminal and enter the above command.

While you're at it: type "qjackctl --help" (without the quotes) in the
terminal. and "man qjackctl" (manual page - press 'q' to exit the manual
viewer)..

You'd add that command to the programs to be started after login. On
Gnome you can set those in
   Menu -> System -> Preferences -> Startup-Applications

HTH,
robin
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Sun Feb 27 20:15:01 2011

This archive was generated by hypermail 2.1.8 : Sun Feb 27 2011 - 20:15:01 EET