Re: [LAU] Linux audio app design: The nature of xruns

From: lanas <lanas@email-addr-hidden>
Date: Mon Dec 28 2009 - 23:24:48 EET

Le Lundi, 28 Décembre 2009 22:06:47 +0100,
Guido Scholz <guido.scholz@bayernline.de> a écrit :

> Am Mon, 28. Dec 2009 um 15:24:02 -0500 schrieb lanas:
>
> > Not really. And I forgot to mention jackmix which looks like
> > another quick hack.
>
> Hm, yes that sounds pretty persuading.

Well, one or both (jackmix, QARecord) are doing it. Now, I think it is
clear, without looking at the code, that there's more effort put in
Ardour than jackmix, not on the amount of features obviously, but on
making it well-behaved in the context of Linux audio/jack apps. I'm
not certain, but I think the author of jackd is also author of Ardour.
Do not quote me on that.
 
>> This is because it was not much of an experiment to start with but
>> rather an observation derived from finding a way to record the song
>> without so many xruns.
 
> I am aware of that and chose this wording to encourage you to discover
> the real root cause. Currently we suffer from hypotheses (at least I
> do).

If, when I start my little project, I face the same number of xruns,
then I'll take a look. if not, my purpose is not to debug jackmix
and/or QARecord. I simply made an orbservation.

> > As such, the observation was quite clear: kernel real-time
> > capabilities, although they might play a role somewhere, had nothing
> > to do in producing xruns since switching applications resolved the
> > problem. From that observation then a question arose: there must
> > be a bad way and a good way of writing a Linux audio/jack
> > application: what is it ?
>
> So did you get the answer?

Yes. See the first two replies in ths thread, by David and Dominic.
As I added, treating jack callbacks as bottom part ISRs could certainly
improve performance and who knows (not I so far, do you ?) avoid a good
deal of xruns ?

> > > For mathematical reasons I would like to get your result from this
> > > alternative setup (also giving better access to a root cause):
> > >
> > > 3) noise -> jackmix -> Ardour -> wav-file
>
> > Indeed. That's the possibility I haven't explored since I think the
> > result of the observation was to see that there's a bad and good
> > way of writing such applications.
>
> I see, so you are more interested from a philosophical (or moral?)
> point of view.

I always tend to approach projects with a high-level overview before
delving into the details. As such I get a first round on how to define
objects, data paths, responsibilities, etc... Of course these will get
refined when details come in. That's how I do it.

> > Now, that the bad way lies with jackmix
> > and/or Qarecord is a second point that has more to do with technical
> > performance in the context of writing such an audio/jack
> > application. Which is not the case at the moment.
>
> Hm sorry, I didn't get that.

In other words, this is not about debugging jackmix and/or QARecord.
are you the author of QARecord by any chance ?

> > > Some other interesting information would be, what program versions
> > > (jackmix, QARecord) are you using?

> > Hmmm.. I'd disagree with this insofar as debugging these apps is
> > certainly not the matter.

> So yes well, but are you sure, you understood my question?

Yes. Program versions do not matter in that observation.

Tschüß.
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Tue Dec 29 00:15:13 2009

This archive was generated by hypermail 2.1.8 : Tue Dec 29 2009 - 00:15:13 EET