documentation update

git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@146 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
Lennart Poettering 2004-08-20 13:06:55 +00:00
parent 9b5ba2bc48
commit 8c756d55da
3 changed files with 90 additions and 17 deletions

View file

@ -97,10 +97,6 @@ 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>
<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>First Steps</h3>
<p>Simply start the polypaudio daemon with the argument <tt>-C</tt></p>
@ -114,13 +110,36 @@ documentation</a> for the client API. (Run <tt>make doxygen</tt> to generate thi
<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 on the
command line like that one included in the distribution:</p>
<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>

View file

@ -87,7 +87,45 @@ input list. The same volume rules apply as with <tt>sink_volume</tt>.</p>
(resp. ssource) by its index in the sink (resp. source) list or by its
name.</p>
<h2>Killing clients/streams</h2>
<h2>Sample Cache</h2>
<h3><tt>scache_list</tt></h3>
<p>Lists the contents of the sample cache.</p>
<h3><tt>scache_play</tt></h3>
<p>Play a sample cache entry to a sink. Expects the sample name and the sink name as arguments.</p>
<h3><tt>sache_remove</tt></h3>
<p>Remove an entry from the sample cache. Expects the sample name as argument.</p>
<h3><tt>sache_load</tt></h3>
<p>Load an audio file to the sample cache. Expects the file name to load and the desired sample name as arguments.</p>
<h2>Module Autoloading</h2>
<h3><tt>autoload_list</tt></h3>
<p>Lists all currently defined autoloading entries.</p>
<h3><tt>autoload_sink_add/autoload_source_add</tt></h3>
<p>Adds an autoloading entry for a sink (resp. source). Expects the sink name (resp. source name), the module name and the module arguments as arguments.</p>
<h3><tt>autoload_sink_remove/autoload_source_remove</tt></h3>
<p>Remove an autoloading entry. Expects the sink name (resp. source name) as argument.</p>
<h2>Miscellaneous Commands</h2>
<h3><tt>play_file</tt></h3>
<p>Play an audio file to a sink. Expects the file name and the sink name as argumens.</p>
<h2>Killing Clients/Streams</h2>
<h3><tt>kill_client</tt></h3>
@ -120,12 +158,14 @@ on the interactive command line.</p>
<h2>Example Configuration Script</h2>
<p>Mark the following script as executable (<tt>chmod +x</tt>) and run it for a sensible polypaudio configuration.</p>
<pre>
#!/usr/bin/polaudio -F
# Load audio drivers
load module-alsa-sink device=plughw:0,0 rate=48000
load module-alsa-source device=hw:1,0
# Create autoload entries for the device drivers
autoload_sink_add output module-alsa-sink device=plughw:0,0 rate=48000 sink_name=output
autoload_source_add input load module-alsa-source device=hw:1,0 source_name=input
# Load several protocols
load module-esound-protocol-tcp
@ -136,17 +176,22 @@ load module-cli-protocol-unix
# Load the CLI module (This is similar to passing "-C" on the command line of polypaudio)
load module-cli
# Make some devices default
sink_default output
source_default input
# Don't fail if the audio files referred to below don't exist
.nofail
# Make some devices default
sink_default alsa_output
source_default alsa_input
# Load an audio to the sample cache for usage with module-x11-bell
scache_load /usr/share/sounds/KDE_Notify.wav x11-bell
load module-x11-bell
# Use digital amplification
sink_volume alsa_output 0x200
# Play a welcome sound
play_file /usr/share/sounds/startup3.wav output
</pre>
<hr/>
<address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, July 2004</address>
<address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, August 2004</address>
<div class="grey"><i>$Id$</i></div>
</body> </html>

View file

@ -184,8 +184,17 @@ about the two possible suffixes of this module.</p>
<tr><td><tt>cookie=</tt></td><td>Name of the cookie file for authentication purposes</td></tr>
</table>
<h3>module-x11-bell</h3>
<p>Intercepts X11 bell events and plays a sample from the sample cache on each occurence.</p>
<table>
<tr><td><tt>display=</tt></td><td>X11 display to connect to. If ommited defaults to the value of <tt>$DISPLAY</tt></td></tr>
<tr><td><tt>sample=</tt></td><td>The sample to play. If ommited defaults to <tt>x11-bell</tt>.</td></tr>
<tr><td><tt>sink=</tt></td><td>Name of the sink to play the sample on. If ommited defaults to the default sink.</td></tr>
</table>
<hr/>
<address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, July 2004</address>
<address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, August 2004</address>
<div class="grey"><i>$Id$</i></div>
</body> </html>