mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-29 05:40:23 -04:00
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@147 fefdeb5f-60dc-0310-8127-8f9354f1896f
185 lines
7.9 KiB
XML
185 lines
7.9 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?> <!-- -*-html-helper-*- -->
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
|
|
<head>
|
|
<title>polypaudio @PACKAGE_VERSION@</title>
|
|
<link rel="stylesheet" type="text/css" href="style.css" />
|
|
</head>
|
|
|
|
<body>
|
|
<h1><a name="top">polypaudio @PACKAGE_VERSION@</a></h1>
|
|
|
|
<p><i>Copyright 2004 Lennart Poettering <@PACKAGE_BUGREPORT@></i></p>
|
|
|
|
<ul class="toc">
|
|
<li><a href="#license">License</a></li>
|
|
<li><a href="#news">News</a></li>
|
|
<li><a href="#overview">Overview</a></li>
|
|
<li><a href="#status">Status</a></li>
|
|
<li><a href="#documentation">Documentation</a></li>
|
|
<li><a href="#requirements">Requirements</a></li>
|
|
<li><a href="#installation">Installation</a></li>
|
|
<li><a href="#acks">Acknowledgements</a></li>
|
|
<li><a href="#download">Download</a></li>
|
|
</ul>
|
|
|
|
<h2><a name="license">License</a></h2>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<p>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.</p>
|
|
|
|
<h2><a name="news">News</a></h2>
|
|
|
|
<div class="news-date">Fri Aug 20 2004: </div> <p class="news-text"><a
|
|
href="@PACKAGE_URL@polypaudio-0.2.tar.gz">Version 0.2</a> 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.</p>
|
|
|
|
<div class="news-date">Sat Jul 17 2004: </div> <p class="news-text"><a
|
|
href="@PACKAGE_URL@polypaudio-0.1.tar.gz">Version 0.1</a> released</p>
|
|
|
|
<h2><a name="overview">Overview</a></h2>
|
|
|
|
<p><tt>polypaudio</tt> is a sound server for Linux and other Unix like
|
|
operating systems. It is intended to be an improved drop-in
|
|
replacement for the <a
|
|
href="http://www.tux.org/~ricdude/apps.html">Enlightened Sound
|
|
Daemon</a> (ESOUND). In addition to the features ESOUND provides
|
|
<tt>polypaudio</tt> has:</p>
|
|
|
|
<ul>
|
|
<li>Extensible plugin architecture (by loading dynamic loadable modules with <tt>dlopen()</tt>)</li>
|
|
<li>Support for more than one sink/source</li>
|
|
<li>Better low latency behaviour</li>
|
|
<li>Embedabble into other software (the core is available as C library)</li>
|
|
<li>Completely asynchronous C API</li>
|
|
<li>Simple command line interface for reconfiguring the daemon while running</li>
|
|
<li>Flexible, implicit sample type conversion and resampling</li>
|
|
<li>"Zero-Copy" architecture</li>
|
|
<li>Module autoloading</li>
|
|
</ul>
|
|
|
|
<p>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
|
|
<tt>glib</tt>/<tt>gtk</tt> mainloop. Since the asynchronous API
|
|
available through <tt>polyplib</tt> is quite difficult to use there is
|
|
a simplified synchronous API wrapper <tt>polyplib-simple</tt>
|
|
available. A simple main loop implementation is available as well.</p>
|
|
|
|
<p><tt>polypaudio</tt> is the successor of my previous, ill-fated
|
|
attempt to write a sound server <a
|
|
href="http://asd.sf.net/">asd</a>.</p>
|
|
|
|
<p>A GTK GUI manager application for polypaudio is the <a
|
|
href="http://0pointer.de/lennart/projects/paman/">Polypaudio Manager</a>.</p>
|
|
|
|
<h2><a name="status">Status</a></h2>
|
|
|
|
<p>Version @PACKAGE_VERSION@ is quite usable. It matches and supersedes ESOUND's feature set in nearly all areas.</p>
|
|
|
|
<h2><a name="documentation">Documentation</a></h2>
|
|
|
|
<p>There is some preliminary documentation available: <a
|
|
href="modules.html"><tt>modules.html</tt></a>, <a
|
|
href="cli.html"><tt>cli.html</tt></a>, <a
|
|
href="daemon.html"><tt>daemon.html</tt></a>.</p>
|
|
|
|
<h3>First Steps</h3>
|
|
|
|
<p>Simply start the polypaudio daemon with the argument <tt>-C</tt></p>
|
|
|
|
<pre>polypaudio -C</pre>
|
|
|
|
<p>This will present you a screen like this:</p>
|
|
|
|
<pre>Welcome to polypaudio! Use "help" for usage information.
|
|
>>> </pre>
|
|
|
|
<p>Now you can issue CLI commands as described in <a
|
|
href="cli.html"><tt>cli.html</tt></a>. Another way to start
|
|
<tt>polypaudio</tt> is by specifying a configuration script like that one included in the distribution on the
|
|
command line :</p>
|
|
|
|
<pre>polypaudio -F polypaudio.pa</pre>
|
|
|
|
<p>This will load some drivers and protocols automatically.</p>
|
|
|
|
<h3>Developing polypaudio Clients</h3>
|
|
|
|
<p>You may browse the <a href="http://www.doxygen.org/">Doxygen</a> generated <a
|
|
href="http://0pointer.de/lennart/projects/polypaudio/doxygen/">programing
|
|
documentation</a> for the client API. (Run <tt>make doxygen</tt> to generate this documentation from the source tree)</p>
|
|
|
|
<h3>Developing polypaudio Modules</h3>
|
|
|
|
<p>There are several reasons for writing loadable modules for polypaudio:</p>
|
|
|
|
<ul>
|
|
<li>Device driver support in addition to ALSA/OSS</li>
|
|
<li>Protocol support beyond ESOUND's protocol and the native protocol. (such as NAS or a subset of aRts)</li>
|
|
<li>New programming interfaces such as XMLRPC or DBUS for controlling the daemon.</li>
|
|
<li>Hooking audio event sources directly into polypaudio (similar to <tt>module-x11-bell</tt>)</li>
|
|
<li>For low latency applications such as VOIP: load the VOIP core directly into polypaudio and have a slim GUI frontend to control it.</li>
|
|
</ul>
|
|
|
|
<p>There is currently no documentation how to write loadable modules
|
|
for polypaudio. <i>Read the source, Luke!</i> If you are interested in
|
|
writing new modules feel free to contact the author in case you have any
|
|
questions.</p>
|
|
|
|
<h2><a name="requirements">Requirements</a></h2>
|
|
|
|
<p>Currently, <tt>polypaudio</tt> is tested on Linux only. It requires an OSS or ALSA compatible soundcard.</p>
|
|
|
|
<p><tt>polypaudio</tt> 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.</p>
|
|
|
|
<p><tt>polypaudio</tt> needs <a
|
|
href="http://www.mega-nerd.com/SRC/">Secret Rabbit Code (aka
|
|
<tt>libsamplerate</tt>)</a>, <a href="http://www.mega-nerd.com/libsndfile"><tt>libsndfile</tt></a>, <a
|
|
href="http://www.alsa-project.org/">alsa-lib</a> and <a href="http://www.gtk.org/">GLIB</a>. (The latter is required for building the GLIB main loop integration module only.)</p>
|
|
|
|
<h2><a name="installation">Installation</a></h2>
|
|
|
|
<p>As this package is made with the GNU autotools you should run
|
|
<tt>./configure</tt> inside the distribution directory for configuring
|
|
the source tree. After that you should run <tt>make</tt> for
|
|
compilation and <tt>make install</tt> (as root) for installation of
|
|
<tt>polypaudio</tt>.</p>
|
|
|
|
<h2><a name="acks">Acknowledgements</a></h2>
|
|
|
|
<p>Eric B. Mitchell for writing ESOUND</p>
|
|
|
|
<h2><a name="download">Download</a></h2>
|
|
|
|
<p>The newest release is always available from <a href="@PACKAGE_URL@">@PACKAGE_URL@</a></p>
|
|
|
|
<p>The current release is <a href="@PACKAGE_URL@polypaudio-@PACKAGE_VERSION@.tar.gz">@PACKAGE_VERSION@</a></p>
|
|
|
|
<p>Get <tt>polypaudio</tt>'s development sources from the <a href="http://subversion.tigris.org/">Subversion</a> <a href="https://seth.intheinter.net:8081/svn/polypaudio/">repository</a>. (<a href="http://0pointer.de/cgi-bin/viewcvs.cgi/?root=polypaudio">viewcvs</a>)</p>
|
|
|
|
<p>If you want to be notified whenever I release a new version of this software use the subscription feature of <a href="http://freshmeat.net/projects/polypaudio/">Freshmeat</a>.</p>
|
|
|
|
<hr/>
|
|
<address class="grey">Lennart Poettering <@PACKAGE_BUGREPORT@>, August 2004</address>
|
|
<div class="grey"><i>$Id$</i></div>
|
|
|
|
</body>
|
|
</html>
|