On Thursday 30 October 2008 16:09:42 Rui Nuno Capela wrote:
d) you can and should use qjackctl to start jackd in
the first place and
maybe want to stay that way. therefore, get rid of your currently
existing ~/.jackdrc file; killall jackd, run qjackctl and setup all
parameters as you wish and then start jackd from qjackctl from then ever
after. run amarok and enjoy...
That is my favourite way of running jackd which I use normally.
From my point of understanding qjackctl is creating a command line for jackd
and passes the command line to it when it runs jackd (at least that is the
option I use).
I deleted the .jackdrc file many times to see when it is being rewritten and
what is written into it at all. That was the only way to find out which
parameters jackd was using.
The file is written as soon as jackd starts after hitting the "start" button
from within qjackctl.
The line that is written into .jackdrc seems to be the full command line that
is passed to jackd at its startup. This line must have been created somewhere
and somehow, and I guess only qjackctl can have created that command line for
jackd ;-)
I can make qjackctl create a "wrong" command line for jackd which led me to my
former postings describing the hassle with Kmix (which, I apologize, does not
have anything to do with the symptoms I have regarded).
I can make qjackctl create the "right" command line for jackd that does
exactly what I need and was all I was after.
For me it was the concept of the buttons and menus inside of qjackctl that
misled me in how to get the "right" command line for jackd.
If one deselects an option and the option becomes greyed out, I thought that
then it would have no influence on the result. But that is not the case - one
has to change all settings (be it for "capture" or for "playback") and
chose
some setting that makes sense. If I do not do that, I am getting the "wrong"
command line for jackd again.
Again, look at these two command lines created with qjackctl which could be
found immediately in the .jackdrc file after hitting the "start" button in
qjackctl:
("wrong" one)
/usr/bin/jackd -R -dalsa -dhw:1,0 -r48000 -p128 -n2 -Phw:0,0 -S -o2 -Xseq
("right" one)
/usr/bin/jackd -R -dalsa -dhw:1,0 -r48000 -p128 -n2 -Phw:1,0 -S -o2 -Xseq
You can see that they are identical until it comes to the -P option.
In the "wrong" command line the -P parameter was set to hw:0,0 because it was
in the "playback only" menu which was greyed out and therefore not
accessible. But I guessed that from the "interface" menu I would only have to
select my external USB audio device (it is chosen as can be seen from
the -dhw:1,0 parameter). Nevertheless, the false value from the greyed
out "playback" device was passed on to jackd as -Phw:0,0 which resulted in
jackd playing via internal onboard sound.
In the second ("right" one) You can see that -P is now set to hw:1,0 which is
correct for the external USB audio. I got that line when setting
the "interface" menu to "duplex" and then setting the
"playback" device to
hw:1,0 and then greying it out by setting "interface" to "playback
only". I
have thought until then that the greyed out value would not appear in the
command line passed on to jackd, but as You can see it was in the command
line as the -P option.
The -P parameter is optional, as far as I understand, so I wonder why it was
added to the command line at all.
If You like, I can describe exactly what I did, step by step, to show
precisely what went wrong and where.
Until I have fully understood the concept behind everything there is no need
for me to blame anyone or any software for anything ;-)
e) ardour2 has also the mighty effect to (over)write ~/.jackdrc as well,
so don't blame qjackctl on that alone :))
I am not using ardour2 at the moment, so I cannot say anything about that ;-)
Don't worry, if I did not like qjackctl I would not use it ;-)
Kind regards,
Crypto.