simplify osx_write_pre_select()
[paraslash.git] / FEATURES
index 29bbb3e..df342c5 100644 (file)
--- a/FEATURES
+++ b/FEATURES
@@ -1,82 +1,83 @@
 Features
 ========
 
+--------------------------------------
 configurable audio streaming software:
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-       para_server streams binary audio data (mp3/ogg files) over
-       local and/or remote networks. It supports three builtin
-       streaming methods (senders): http, dccp, or rtp.
-
-       para_audiod runs on the client side and connects to
-       para_server. The audio stream is read from the network and
-       sent through any of paraslash's filters (mp3 decoder, ogg
-       vorbis decoder, volume normalizer,...). The resulting stream
-       is written to an external program's standard in, usually an
-       audio player like para_play, the alsa player of the paraslash
-       package. It is possible to grab the stream at any position
-       in the filter chain.
-
-       The receiving/filtering software is also available as
-       standalone command line tool: para_recv grabs the stream and
-       writes to stdout; para_filter reads from stdin, converts the
-       stream according to the given --filter command line options
-       and writes the transformed stream to stdout.
+--------------------------------------
 
+para_server streams binary audio data (mp3/ogg/m4a files) over local
+and/or remote networks. It supports three builtin streaming methods
+(senders): http, dccp, or rtp.
+
+para_audiod runs on the client side and connects to para_server. The
+audio stream is read from the network and sent through any of
+paraslash's filters (decoder, volume normalizer,...). The resulting
+stream is written to an external program's standard in, usually an
+audio player like para_write, which comes with paraslash and contains
+an alsa player. It is possible to capture the stream at any position
+in the filter chain.
+
+The receiving/filtering/playing software is also available as
+standalone command line tool: para_recv, para_filter, and para_write.
+
+----------------------------------
 configurable audio file selectors:
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-       There are three audio file selectors available: random,
-       playlist and mysql
+----------------------------------
 
-       The first two of these are rather simple, and they are always
-       supported. They allow streaming of randomly selected files
-       or files given by a playlist respectively.
+There are three audio file selectors available: random, playlist
+and mysql
 
-       The (optional) mysql selector is more involved. It manages
-       statistics on your audio files, and audio file selection is
-       done by sending a user-defined sql-query to the mysql server.
-       This allows rather sophisticated configurations and is
-       explained in detail in README.mysql.
+The first two of these are rather simple, and they are always
+supported. They allow streaming of randomly selected files or files
+given by a playlist respectively.
 
-       It is possible to switch between all supported selectors at
-       any time.
+The (optional) mysql selector is more involved. It manages
+statistics on your audio files, and audio file selection works by
+sending a user-defined sql-query to the mysql server.  This allows
+rather sophisticated configurations and is explained in detail in
+README.mysql.
 
-small memory footprint:
-~~~~~~~~~~~~~~~~~~~~~~~
-       paraslash is lightweight. The stripped binary of para_server
-       with all its features compiled in (mysql/random/playlist
-       selector, mp3/ogg support, http/dccp/ortp support) is about 110K
-       on i386 under Linux. para_audiod is even smaller.
-
-command line interface, including shell:
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-       para_client without arguments starts interactive (shell)
-       mode. Otherwise, command is sent to para_server directly
-       and output is dumped to stdout. This can be used by any
-       scripting language to produce user interfaces with very little
-       programming effort.
+It is possible to switch between all supported selectors at any time.
 
-authentication/encryption via openssl:
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-       All connections between para_server and para_client are
-       encrypted by default.  For each user of paraslash you must
-       create a public/secret key pair for authentication/encryption.
+-----------------------
+small memory footprint:
+-----------------------
 
-various user interfaces and utilities:
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-       o para_gui. Curses based interface, displays information in a
-       curses window and can be used to easily control para_server
-       and para_audiod.
+paraslash is lightweight. The stripped binary of para_server with
+all its features compiled in (mysql/random/playlist selector,
+mp3/ogg/aac support, http/dccp/ortp support) is about 120K on i386
+under Linux. para_audiod is even smaller.
 
-       o para_sdl_gui. Shows pictures (on a per song basis) and
-       other information about the current audio file. Can be used
-       as a screen saver.
+-----------------------
+command line interface:
+-----------------------
 
-       o para_krell. A gkrellm2 plugin that shows small pics and is
-       able to launch 27 different commands by clicking on the image.
+paraslash commands are sent to para_server and the response is
+dumped to stdout. This can be used by any scripting language
+to produce user interfaces with little programming effort.
 
-       o para_slider. User-friendly stream creator for people who
-       don't like their keyboard.
+--------------------------------------
+authentication/encryption via openssl:
+--------------------------------------
 
-       o para_dbadm. Simple curses interface for changing attributes.
+All connections between para_server and para_client are encrypted by
+default.  For each user of paraslash you must create a public/secret
+key pair for authentication. The (authenticated) connection is crypted
+with a symmetric rc4 session key.
 
-       o para_fade. Simple volume fader and alarm clock.
+--------------------------------------
+various user interfaces and utilities:
+--------------------------------------
+
+       * para_gui. Curses based interface, displays information in a
+         curses window and can be used to easily control para_server
+         and para_audiod.
+       * para_sdl_gui. Shows pictures (on a per song basis) and
+         other information about the current audio file. Can be used
+         as a screen saver.
+       * para_krell. A gkrellm2 plugin that shows small pics and is
+         able to launch 27 different commands by clicking on the image.
+       * para_slider. User-friendly stream creator for people who
+         don't like their keyboard.
+       * para_dbadm. Simple curses interface for changing attributes.
+       * para_fade. Simple volume fader and alarm clock.