]> code.delx.au - pulseaudio/blob - doc/FAQ.html.in
correct latency calculation
[pulseaudio] / doc / FAQ.html.in
1 <?xml version="1.0" encoding="iso-8859-1"?> <!-- -*-html-helper-*- -->
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4 <head>
5 <title>polypaudio: FAQ</title>
6 <link rel="stylesheet" type="text/css" href="style.css" />
7 </head>
8
9 <body>
10
11
12 <h1>Frequently Asked Questions</h1>
13
14 <ol>
15 <li><p><b>How does Polypaudio compare with ESOUND/aRts/NAS?</b></p>
16
17 <p>Polypaudio is sound daemon similar to ESOUND and NAS, but much more
18 powerful. aRts is a realtime-synthesizer-cum-sound-server, i.e. it
19 does much more than Polypaudio. However, I believe that Polypaudio
20 does what it does much better than any other free sound server.</p>
21 </li>
22
23 <li><p><b>What about ESOUND compatibility?</b></p>
24 <p>Polypaudio is a drop in replacement for ESOUND. That means: you can
25 load a esound compatibility module which implements an ESOUND
26 compatible protocol which allows you to use most of the classic ESOUND
27 compatible programs (including the command line programs like
28 <tt>esdcat</tt>).</p>
29 </li>
30
31 <li><p><b>Is Polypaudio a GNOME program?</b></p>
32 <p>No, Polypaudio has no dependency on GNOME/GTK/GLIB. All it requires
33 is a UNIX-like operating system and very few dependency
34 libraries. However, the accompanying GUI tools are writen with
35 gtkmm, i.e. require both GLIB and GTK.</p></li>
36
37 <li><p><b>Can I integrate Polypaudio in my GLIB/GTK/GNOME application?</b></p>
38 <p>Yes! Polypaudio comes with a GLIB main loop adapter. You can embed
39 both the client library and the daemon (!) into your GLIB based
40 application.</p></li>
41
42 <li><p><b>Can I integrate Polypaudio in my Qt/KDE application?</b></p>
43 <p>Yes! Polypaudio uses a main loop abstraction layer that allows you
44 to integrate Polypaudio in any program that supports main
45 loops. Unfortunately there is no adapter for Qt publicly available yet.</p></li>
46
47 <li><p><b>I want to write a new driver for Polypaudio, are there any docs?</b></p>
48 <p>Currently, only the client API is documented with doxygen. Read
49 the source and base your work on a simple module like
50 <tt>module-pipe-sink</tt>.</p></li>
51
52 <li><p><b>What about compatibility with NAS?</b></p>
53 <p>Is not available (yet?). It is doable, but noone has implemented it yet.</p></li>
54
55 <li><p><b>What about compatibility with aRts?</b></p>
56 <p>Is not available. Since aRts is as synthesizer application you'd have to
57 reimplement very much code for Polypaudio. It should be easy to
58 implement limited support for <tt>libartsc</tt> based
59 applications. Noone has done this yet. It is probably a better idea to
60 run <tt>arts</tt> on top of Polypaudio (through a polypaudio driver
61 for aRts, which nobody has written yet). Another solution would be to
62 embed Polypaudio in the aRts process.</p></li>
63
64 <li><p><b>I often hear noises when playing back with Polypaudio, what can I do?</b></p>
65 <p>There are to possible solutions: either make the polypaudio
66 binary SUID root (<tt>chmod u+s /usr/bin/polypaudio</tt>) and run it
67 with argument <tt>-r</tt> or increase the fragment sizes of the audio
68 drivers. The former will allow Polypaudio to activate
69 <tt>SCHED_FIFO</tt> high priority scheduling (root rights are dropped
70 immediately after this).</p></li>
71
72 </ol>
73
74 <hr/>
75 <address class="grey">Lennart Poettering &lt;@PACKAGE_BUGREPORT@&gt;, September 2004</address>
76 <div class="grey"><i>$Id$</i></div>
77 </body> </html>