standalone artsd

Stefan Westerfeld stefan at space.twc.de
Thu Nov 20 07:39:51 GMT 2003


   Hi!

On Wed, Nov 12, 2003 at 01:19:33AM +0100, Bernd Birkholz wrote:
> where can I download a current version of standalone artsd ?

Short answer: There is no current standalone version.

Long answer: The sources of aRts itself don't have many dependancies. What
prevents them from being buildable as standalone version is simply the
configure magic. Since aRts uses the KDE build system (admin directory) to
figure out where to install itself and where to find Qt, it is not entierly
trivial (but possible, as prior standalone versions prove), to make build
in a "no dependancies please" mode.

However, depending on which applications you want to run, parts of the
applications get executed within the aRts server (decoders, gui factories,
noatun session object, effects). So it is not enough to merely build the
sound server itself. You will also need to build the corresponding parts of
the applications. Which means: quite a few things found in kdemultimedia.

Another pitfall is i18n. Some time ago, some i18n work went into some parts
of aRts found in kdemultimedia. The code for i18n uses KDE libraries. Which
brings back all the dependancies you wanted to avoid in the first place.
However, as for i18n, I think the right solution is to throw out the KDEish
i18n from aRts and put in its own i18n, which then in turn can also be
used in aRts itself (which would remove some ugly hacks).

Finally, even having dealt with all these issues the question is still whether
what happens is what you want to happen. If you have a server S and a client
C, there are two scenarios if you are running noatun:

 (a) you want S to do all the work: run noatun, decode the file
     you want C to merely get the X11 drawing events and an audio stream
 (b) you want S to run noatun
     you want C to get the X11 drawing events, decode the file and play the
     audio stream

Running artsd on the client (in addition to the X11 server), you get (b).
Which, to work properly (if you do everything else on the server) also means
that the client should have the same view on the file system than the server
has (i.e. NFS), otherwise the files the user plays might not get found.

If you want (a), its currently easiest to run artsd on the server (it gets
started there by KDE anyway, as soon as you start noatun there), and use
a classical sound server like ESD or MAS on the client. There is support for
both as "audio output device" in artsd. It might also be added that for
security reasons, never ever try to start artsd as root in the init process
(users can load their own code into artsd, as modules). It works fine as
per-user server. But its conceptually not the same thing like an X11 server.

   Cu... Stefan
-- 
  -* Stefan Westerfeld, stefan at space.twc.de (PGP!), Hamburg/Germany
     KDE Developer, project infos at http://space.twc.de/~stefan/kde *-         



More information about the kde-multimedia mailing list