]> code.delx.au - pulseaudio/blobdiff - doc/README.html.in
update docs
[pulseaudio] / doc / README.html.in
index 5c6e49a764c2ba07bf91fe09d8b6b16d8e2f85bb..e4eea7866011a7e9c6e61216029b7f57a2345fce 100644 (file)
@@ -3,12 +3,12 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 
 <head>
-<title>polypaudio @PACKAGE_VERSION@</title>
+<title>PulseAudio @PACKAGE_VERSION@</title>
 <link rel="stylesheet" type="text/css" href="style.css" />
 </head>
 
 <body>
-<h1><a name="top">polypaudio @PACKAGE_VERSION@</a></h1>
+<h1><a name="top">PulseAudio @PACKAGE_VERSION@</a></h1>
 
 <p><i>Copyright 2004-2006 Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;</i> and Pierre Ossman</p>
 
@@ -43,6 +43,24 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.</p>
 
 <h2><a name="news">News</a></h2>
 
+<div class="news-date">Fri Jun 2 2006: </div> <p class="news-text"><a
+href="@PACKAGE_URL@polypaudio-0.9.1.tar.gz">Version 0.9.1</a>
+released; changes include: load modules even when libtool <tt>.la</tt>
+files are missing; generate better ALSA device names from
+<tt>module-detect</tt>; if an ALSA device doesn't support the
+requested number of channels or the frequency, accept what ALSA
+suggests instead; amd64 portability; drop <tt>.sh</tt> suffix of
+<tt>esdcompat.sh</tt>; build system fixes; No API or ABI changes were made</p>
+
+<div class="news-date">Fri May 26 2006: </div> <p class="news-text"><a
+href="@PACKAGE_URL@polypaudio-0.9.0.tar.gz">Version 0.9.0</a>
+released; changes include: new module <tt>module-volume-restore</tt>;
+new OSS API emulation tool <tt>padsp</tt>; require valid UTF8 strings
+everywhere; properly support ALSA channel maps for surround sound;
+increase maximum number of channels per stream to 32; add new threaded
+main loop API for synchronous programs; introduce real shared object
+versioning; a few API additions; many, many bugfixes</p>
+
 <div class="news-date">Fri Apr 28 2006: </div> <p class="news-text"><a
 href="@PACKAGE_URL@polypaudio-0.8.1.tar.gz">Version 0.8.1</a>
 released; changes include: support for specifying the channel map on
@@ -105,12 +123,12 @@ 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 networked sound server for Linux and other
+<p>PulseAudio is a networked sound server for Linux and other
 Unix like operating systems and Microsoft Windows. 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>
+PulseAudio has:</p>
 
 <ul>
   <li>Extensible plugin architecture (by loading dynamic loadable modules with <tt>dlopen()</tt>)</li>
@@ -132,8 +150,8 @@ Daemon</a> (ESOUND). In addition to the features ESOUND provides
 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 through <tt>libpulse</tt> is quite difficult to use there is
+a simplified synchronous API wrapper <tt>libpulse-simple</tt>
 available. A simple main loop implementation is available as well.</p>
 
 <p>The following modules are currently available:</p>
@@ -149,14 +167,15 @@ Sound Architecture</a> (ALSA) sinks and sources</li>
   <li><tt>module-combine</tt>: combine multiple sinks into one, adjusting the sample rate if the their clocks deviate.</li>
   <li><tt>module-sine</tt>: a sine generate sink input.</li>
   <li><tt>module-x11-bell</tt>: play a sample from the sample cache on every X11 bell event.</li>
-  <li><tt>module-x11-publish</tt>: store Polypaudio credentials in the X11 root window.</li>
+  <li><tt>module-x11-publish</tt>: store PulseAudio credentials in the X11 root window.</li>
   <li><tt>module-esound-protocol-tcp</tt>, <tt>module-esound-protocol-unix</tt>: <a href="http://www.tux.org/~ricdude/apps.html">ESOUND</a> compatibility modules (for TCP/IP resp. UNIX domain sockets)</li>
-  <li><tt>module-native-protocol-tcp</tt>, <tt>module-native-protocol-unix</tt>: Native polypaudio protocol (for TCP/IP resp. UNIX domain sockets)</li>
+  <li><tt>module-native-protocol-tcp</tt>, <tt>module-native-protocol-unix</tt>: Native PulseAudio protocol (for TCP/IP resp. UNIX domain sockets)</li>
   <li><tt>module-simple-protocol-tcp</tt>, <tt>module-simple-protocol-unix</tt>: Simplistic protocol for playback/capture for usage with tools like <tt>netcat</tt> (for TCP/IP resp. UNIX domain sockets)</li>
-  <li><tt>module-cli-protocol-tcp</tt>, <tt>module-cli-protocol-unix</tt>, <tt>module-cli</tt>: Expose polypaudio's internals whith a simple command line interface. (for TCP/IP resp. UNIX domain sockets resp. STDIN/STDOUT)</li>
-  <li><tt>module-http-protocol-tcp</tt>: Spawns a small HTTP server which can be used to introspect the Polypaudio server with a web browser.</li>
+  <li><tt>module-cli-protocol-tcp</tt>, <tt>module-cli-protocol-unix</tt>, <tt>module-cli</tt>: Expose PulseAudio's internals whith a simple command line interface. (for TCP/IP resp. UNIX domain sockets resp. STDIN/STDOUT)</li>
+  <li><tt>module-http-protocol-tcp</tt>: Spawns a small HTTP server which can be used to introspect the PulseAudio server with a web browser.</li>
   <li><tt>module-tunnel-sink</tt>, <tt>module-tunnel-source</tt>: make sinks/sources from other hosts available locally.</li>
   <li><tt>module-match</tt>: adjust volume automatically for newly created playback streams based on a regular expression matching table.</li>
+  <li><tt>module-volume-restore</tt>: much like <tt>module-match</tt>, but create rules fully automatically based on the client name.</li>
   <li><tt>module-null-sink</tt>: a clocked sink similar to <tt>/dev/null</tt>.</li>
   <li><tt>module-esound-sink</tt>: a sink for forwarding audio data to an <a href="http://www.tux.org/~ricdude/apps.html">ESOUND</a> server.</li>
   <li><tt>module-detect</tt>: a module which automatically detects what sound hardware is available locally and which loads the required driver modules.</li>
@@ -167,35 +186,31 @@ Sound Architecture</a> (ALSA) sinks and sources</li>
   <li><tt>module-jack-sink</tt>, <tt>module-jack-source</tt>: connect to a <a href="http://jackit.sourceforge.net/">JACK Audio Connection Kit</a> server. (A sound server for professional audio production)</li>
 </ul>
 
-<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>. Another GTK GUI tool for Polypaudio is the <a
-href="http://0pointer.de/lennart/projects/pavumeter">Polypaudio Volume
-Meter</a>.</p>
+<p>A GTK GUI manager application for PulseAudio is the <a
+href="http://0pointer.de/lennart/projects/paman/">PulseAudio
+Manager</a>. Other GTK GUI tool for PulseAudio are the <a
+href="http://0pointer.de/lennart/projects/pavumeter">PulseAudio Volume
+Meter</a>  and the <a
+href="http://0pointer.de/lennart/projects/pavucontrol">PulseAudio Volume
+Control</a> .</p>
 
 <p>There are output plugins for <a
-href="http://0pointer.de/lennart/projects/xmms-polyp/">XMMS</a>, <a
-href="http://0pointer.de/lennart/projects/libao-polyp/">libao</a>
+href="http://0pointer.de/lennart/projects/xmms-pulse/">XMMS</a>, <a
+href="http://0pointer.de/lennart/projects/libao-pulse/">libao</a>
 (merged in <tt>libao</tt> SVN) and <a
-href="http://0pointer.de/lennart/projects/gst-polyp/">gstreamer</a>
+href="http://0pointer.de/lennart/projects/gst-pulse/">gstreamer</a>
 (merged in <tt>gstreamer-plugins</tt> CVS), <a
 href="http://mplayerhq.hu">MPlayer</a> (merged in MPlayer CVS) and <a
 href="http://xine.sf.net/">Xine</a> (merged in Xine CVS). Drivers for
 <a href="http://www.portaudio.com/">PortAudio</a> will be released
 shortly.</p>
 
+<p>PulseAudio was formerly known as Polypaudio.</p>
+
 <h2><a name="status">Current Status</a></h2>
 
 <p>Version @PACKAGE_VERSION@ is quite usable. It matches and supersedes ESOUND's feature set in nearly all areas.</p>
 
-<p><b>Warning:</b> polypaudio's client API and protocol are not stable
-yet. The client interface is still a moving target and changes from
-release to release. The client API's library version number is currently fixed to <tt>0.0.0</tt>.</p>
-
 <h2><a name="documentation">Documentation</a></h2>
 
 <p>There is some preliminary documentation available: <a
@@ -203,68 +218,68 @@ 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> and <a href="FAQ.html"><tt>FAQ.html</tt></a>.</p>
 
-<p>There is a <a href="http://www.edgewall.com/products/trac/">Trac</a> based <a href="http://0pointer.de/trac/polypaudio/">Wiki for Polypaudio</a> available.</p>
+<p>There is a <a href="http://www.edgewall.com/products/trac/">Trac</a> based <a href="http://0pointer.de/trac/pulseaudio/">Wiki for PulseAudio</a> available.</p>
 
 <h3>First Steps</h3>
 
-<p>Simply start the polypaudio daemon with the argument <tt>-nC</tt></p>
+<p>Simply start the PulseAudio daemon with the argument <tt>-nC</tt></p>
 
-<pre>polypaudio -nC</pre>
+<pre>pulseaudio -nC</pre>
 
 <p>This will present you a screen like this:</p>
 
-<pre>Welcome to polypaudio! Use "help" for usage information.
+<pre>Welcome to PulseAudio! Use "help" for usage information.
 &gt;&gt;&gt; </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
+PulseAudio is by specifying a configuration script like that one included in the distribution on the
 command line :</p>
 
-<pre>polypaudio -nF polypaudio.pa</pre>
+<pre>pulseaudio -nF pulseaudio.pa</pre>
 
 <p>This will load some drivers and protocols automatically.</p>
 
-<p>The best idea is to configure your daemon in <tt>/etc/polypaudio/daemon.conf</tt> and <tt>/etc/polypaudio/default.pa</tt> and to run polypaudio without any arguments.</p>
+<p>The best idea is to configure your daemon in <tt>/etc/pulse/daemon.conf</tt> and <tt>/etc/pulse/default.pa</tt> and to run PulseAudio without any arguments.</p>
 
 <p><b>Beware!</b> Unless you pass the option <tt>--sysconfdir=/etc</tt> to
-<tt>configure</tt>, the directory <tt>/etc/polypaudio/</tt> is really
-<tt>/usr/local/etc/polypaudio/</tt>.</p>
+<tt>configure</tt>, the directory <tt>/etc/pulse/</tt> is really
+<tt>/usr/local/etc/pulse/</tt>.</p>
 
-<h3>Developing polypaudio Clients</h3>
+<h3>Developing PulseAudio 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
+href="http://0pointer.de/lennart/projects/pulseaudio/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>
+<h3>Developing PulseAudio Modules</h3>
 
-<p>There are several reasons for writing loadable modules for polypaudio:</p>
+<p>There are several reasons for writing loadable modules for PulseAudio:</p>
 
 <ul>
-  <li>Device driver support in addition to ALSA/OSS</li>
+  <li>Extended device driver support</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>
+  <li>Hooking audio event sources directly into PulseAudio (similar to <tt>module-x11-bell</tt>)</li>
+  <li>For low latency applications such as VOIP: load the VOIP core directly into PulseAudio 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
+for PulseAudio. <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, FreeBSD, Solaris and Microsoft Windows. It requires an OSS, ALSA, Win32 or Solaris compatible soundcard.</p>
+<p>Currently, PulseAudio> is tested on Linux, FreeBSD, Solaris and Microsoft Windows. It requires an OSS, ALSA, Win32 or Solaris compatible soundcard.</p>
 
-<p><tt>polypaudio</tt> was developed and tested on Debian GNU/Linux
+<p>PulseAudio was developed and tested on Debian GNU/Linux
 "testing" from November 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
+<p>Pulseaudio 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
@@ -283,7 +298,7 @@ building the GLIB main loop integration module only.)</p>
 <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>
+PulseAudio.</p>
 
 <h2><a name="acks">Acknowledgements</a></h2>
 
@@ -291,11 +306,11 @@ compilation and <tt>make install</tt> (as root) for installation of
 
 <p>Jeff Waugh for creating Ubuntu packages (and hopefully soon Debian)</p>
 
-<p>Miguel Freitas for writing a Polypaudio driver for Xine</p>
+<p>Miguel Freitas for writing a PulseAudio driver for Xine</p>
 
-<p>Joe Marcus Clarke for porting Polypaudio to FreeBSD</p>
+<p>Joe Marcus Clarke for porting PulseAudio to FreeBSD</p>
 
-<p><a href="http://www.cendio.com">Cendio AB</a> for paying for Pierre's work on Polypaudio</p>
+<p><a href="http://www.cendio.com">Cendio AB</a> for paying for Pierre's work on PulseAudio</p>
 
 <p>Sebastien ESTIENNE for testing</p>
 
@@ -305,28 +320,28 @@ compilation and <tt>make install</tt> (as root) for installation of
 
 <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>The current release is <a href="@PACKAGE_URL@pulseaudio-@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="svn://0pointer.de/polypaudio">repository</a> (<a href="http://0pointer.de/cgi-bin/viewcvs.cgi/?root=polypaudio">viewcvs</a>): </p>
+<p>Get PulseAudio's development sources from the <a href="http://subversion.tigris.org/">Subversion</a> <a href="svn://0pointer.de/pulseaudio">repository</a> (<a href="http://0pointer.de/cgi-bin/viewcvs.cgi/?root=pulseaudio">viewcvs</a>): </p>
 
-<pre>svn checkout svn://0pointer.de/polypaudio/trunk polypaudio</pre>
+<pre>svn checkout svn://0pointer.de/pulseaudio/trunk pulseaudio</pre>
 
 <h2><a name="community">Community</a></h2>
 
-<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>
+<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/pulseaudio/">Freshmeat</a>.</p>
 
-<p>There is a general discussion <a href="https://tango.0pointer.de/mailman/listinfo/polypaudio-discuss">mailing list for polypaudio</a> available. In addition, you can subscribe to <a href="https://tango.0pointer.de/mailman/listinfo/polypaudio-commits">SVN changes</a> and <a href="https://tango.0pointer.de/mailman/listinfo/polypaudio-tickets">Trac Tickets</a>.</p>
+<p>There is a general discussion <a href="https://tango.0pointer.de/mailman/listinfo/polypaudio-discuss">mailing list for PulseAudio</a> available. In addition, you can subscribe to <a href="https://tango.0pointer.de/mailman/listinfo/polypaudio-commits">SVN changes</a> and <a href="https://tango.0pointer.de/mailman/listinfo/polypaudio-tickets">Trac Tickets</a>.</p>
 
-<p>Polypaudio is being tracked at <a href="http://cia.navi.cx/stats/project/polypaudio">CIA</a>.</p>
+<p>PulseAudio is being tracked at <a href="http://cia.navi.cx/stats/project/polypaudio">CIA</a>.</p>
 
-<p>There's a chance to meet the Polypaudio developers on our <a href="irc://irc.freenode.org/polypaudio">IRC channel #polypaudio on irc.freenode.org</a>.</p>
+<p>There's a chance to meet the PulseAudio developers on our <a href="irc://irc.freenode.org/pulseaudio">IRC channel #pulseaudio on irc.freenode.org</a>.</p>
 
-<p>There is a <a href="http://www.edgewall.com/products/trac/">Trac</a> based <a href="http://0pointer.de/trac/polypaudio/">Wiki for Polypaudio</a> available.</p>
+<p>There is a <a href="http://www.edgewall.com/products/trac/">Trac</a> based <a href="http://0pointer.de/trac/pulseaudio/">Wiki for PulseAudio</a> available.</p>
 
-<p><b>Please report bugs to <a href="http://0pointer.de/trac/polypaudio/newticket">our Trac ticket system</a>.</b></p>
+<p><b>Please report bugs to <a href="http://0pointer.de/trac/pulseaudio/newticket">our Trac ticket system</a>.</b></p>
 
 <hr/>
-<address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, April 2006</address>
+<address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, June 2006</address>
 <div class="grey"><i>$Id$</i></div>
 
 </body>