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

List:       kde-core-devel
Subject:    Re: Arts occupies sound device
From:       Stefan Westerfeld <stefan () space ! twc ! de>
Date:       2000-04-07 14:04:27
[Download RAW message or body]

   Hi!

On Fri, Apr 07, 2000 at 03:16:37PM +0200, Michael Reiher wrote:
> I just fought with my real player, because it didnīt want to play any
> videos anymore. In the end I found that artsd somehow blocks the sound
> device and the real player canīt use it anymore. Killing artsd made it
> work again.
> Is there a chance that artsd could only occupy the device if really
> needed? Or even better that it can share the sound device with legacy
> apps?
> IMO we have to find some way around here, as we canīt expect apps like
> the real player to become arts aware.

First of all: why can they not become aRts aware? Real adapted their player
at least to some degree to KDE1.x - if aRts can offer a C Api that is really
easy to use, then I see no reason why Real shouldn't make their player aRts
aware.

That also would be the model "sharing with other clients". Believe me, things
will only be fun when artsd becomes at least as widespread as esd. With a
KDE-only-and-maybe-sometimes-when-nobody-objects audioserver we won't win
anything. I have already a working version of Quake running on aRts, once
the C Api is finalized, I'll publish this (and maybe code for important
things like XMMS, too).

If somebody wants to work on the C Api, please do. If not, well, I'll do it
sooner or later (there are some issues to fix, before).

Regarding the blocking the audio device. Yes, I know, its in the TODO. There
will be some way or other. Sometime. kdelibs/arts/doc/TODO quote:

- someday implement a clever way how apps that are not written for aRts can
  use /dev/dsp nevertheless, maybe one of:
   - starting artsd only on demand
   - make artsd go to a sleep mode automatically if no clients are connected
   - make artsd go to a sleep mode after a timeout
   - make arts detect automatically when it is silent, and close /dev/dsp
     then (this would for instance also close if clients are connected but
     not playing anything)
   - make an explicit call like "shutdown now" (esdctl off/esdctl on)           

Cu... Stefan

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

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