polypaudio @PACKAGE_VERSION@

Copyright 2004 Lennart Poettering <@PACKAGE_BUGREPORT@>

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

News

Fri Aug 20 2004:

Version 0.2 released; changes include: added sample cache, introspection API, client API documentation, module autoloading, glib support, a module for intercepting X11 bell events, and much more.

Sat Jul 17 2004:

Version 0.1 released

Overview

polypaudio is a sound server for Linux and other Unix like operating systems. It is intended to be an improved drop-in replacement for the Enlightened Sound Daemon (ESOUND). In addition to the features ESOUND provides polypaudio has:

Both the core and the client API are completely asynchronous making use of a simple main loop abstraction layer. This allows easy integration with asynchronous applications using the glib/gtk mainloop. Since the asynchronous API available through polyplib is quite difficult to use there is a simplified synchronous API wrapper polyplib-simple available. A simple main loop implementation is available as well.

polypaudio is the successor of my previous, ill-fated attempt to write a sound server asd.

A GTK GUI manager application for polypaudio is the Polypaudio Manager.

Status

Version @PACKAGE_VERSION@ is quite usable. It matches and supersedes ESOUND's feature set in nearly all areas.

Documentation

There is some preliminary documentation available: modules.html, cli.html, daemon.html.

First Steps

Simply start the polypaudio daemon with the argument -C

polypaudio -C

This will present you a screen like this:

Welcome to polypaudio! Use "help" for usage information.
>>> 

Now you can issue CLI commands as described in cli.html. Another way to start polypaudio is by specifying a configuration script like that one included in the distribution on the command line :

polypaudio -F polypaudio.pa

This will load some drivers and protocols automatically.

Developing polypaudio Clients

You may browse the Doxygen generated programing documentation for the client API. (Run make doxygen to generate this documentation from the source tree)

Developing polypaudio Modules

There are several reasons for writing loadable modules for polypaudio:

There is currently no documentation how to write loadable modules for polypaudio. Read the source, Luke! If you are interested in writing new modules feel free to contact the author in case you have any questions.

Requirements

Currently, polypaudio is tested on Linux only. It requires an OSS or ALSA compatible soundcard.

polypaudio was developed and tested on Debian GNU/Linux "testing" from July 2004, it should work on most other Linux distributions (and maybe Unix versions) since it uses GNU autoconf and GNU libtool for source code configuration and shared library management.

polypaudio needs Secret Rabbit Code (aka libsamplerate), libsndfile, alsa-lib and GLIB. (The latter is required for building the GLIB main loop integration module only.)

Installation

As this package is made with the GNU autotools you should run ./configure inside the distribution directory for configuring the source tree. After that you should run make for compilation and make install (as root) for installation of polypaudio.

Acknowledgements

Eric B. Mitchell for writing ESOUND

Download

The newest release is always available from @PACKAGE_URL@

The current release is @PACKAGE_VERSION@

Get polypaudio's development sources from the Subversion repository. (viewcvs)

If you want to be notified whenever I release a new version of this software use the subscription feature of Freshmeat.


Lennart Poettering <@PACKAGE_BUGREPORT@>, August 2004
$Id$