Re: Linux audio app design: The nature of xruns

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

 



Le Lundi, 28 Décembre 2009 22:06:47 +0100,
Guido Scholz <guido.scholz@xxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxxx
http://lists.linuxaudio.org/listinfo/linux-audio-user


[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