[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-multimedia
Subject:    Re: Generic Complaints
From:       Stefan Westerfeld <stefan () space ! twc ! de>
Date:       2000-08-06 9:27:03
[Download RAW message or body]

   Hi!

On Sat, Aug 05, 2000 at 12:52:24PM -0700, Charles wrote:
> 
> First of all, OGG is broken in mpeglib again. This time, everything behaves
> fine, until it doesn't play and artsd crashes :)
> 
> How about some buffering?  artsd and its decoder plugins don't friggin' buffer!
> Well, actually one does buffer, wav.  It buffers a little TOO much :)
> 
> There's my complains, I'm not a jerk, I just want something that doesn't skip
> or swap the hell out of me.

Of course artsd buffers against the sound driver in the usual way, and you can even
configure it using kcontrol (it's the 250ms/50ms/10ms setting). Of course, the
lower you set this kind of latency, the higher the risk of dropouts gets. I intend
to put some more work into better midi timing/synchronization code in the next time,
to make music apps at least run correctly even with 250ms system buffers (currently
their timing gets screwed badly).

All in all, there is IMHO no easy strategy to overcome all dropouts with one step.
Here are a few different causes:

1. implementation weaknesses
   - in aRts itself
   - in the PlayObject you use
2. system load
3. hardware issues (i.e. hardware that requires locking the system
   for so and so)
4. kernel problems

Here are a few things you can do about dropouts:

1.
  - try to improve implementation quality, for instance blockwise load wav files ;)
  - increase the global buffering (-F and -S settings / kcontrol), the maximum
    here is 64kb with usual drivers
  - do per-decoder caching (like in wav playobjects)
2.
  - increase the priority of aRts: realtime (kcontrol & artswrapper) or nice -20
3.
  - buy different hardware
  - use tuning (i.e. hdparm is very useful for tuning IDE drives)
4.
  - try to improve implementation quality by sending patches to linus
  - use specially patched linux kernels (there are lowlatency patches out there)

For aRts specific profiling, I recommend:

  - gprof (for generic performance profiling)
  - enable latency debugging in kdelibs/arts/mcop/iomanager.cc

So if you want to do something about aRts dropouts, please try to exactly find out
what is the cause of your problems, and try to specifically improve this.

   Cu... Stefan
-- 
  -* Stefan Westerfeld, stefan@space.twc.de (PGP!), Hamburg/Germany
     KDE Developer, project infos at http://space.twc.de/~stefan/kde *-         
_______________________________________________
Kde-multimedia mailing list
Kde-multimedia@master.kde.org
http://master.kde.org/mailman/listinfo/kde-multimedia

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic