Features
========
-configurable audio streaming software
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- para_server streams binary audio data (mp3/ogg files) over
- local or remote networks. It contains two built-in streamers:
- the http streamer and the ortp streamer.
+configurable audio streaming software:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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 back and sent through
- any of paraslash's filters (mp3 decoder, ogg vorbis decoder,
- volume normalizer,...) and the resulting stream is written to
- an external program's standard in, usually an audio player,
- like para_play that uses alsa. 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 http or ortp
- 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.
-
-mysql-based audio file selector:
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- the (optional) mysql database tool manages some statistics on
- your audio files. It contacts the mysql server to decide which
- song to play next by sending a user-defined sql-query. This
- allows rather sophisticated configurations and is explained
- in detail in README.mysql.
+ 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.
+
+ 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.
+
+ It is possible to switch between all supported selectors at
+ any time.
small memory footprint:
~~~~~~~~~~~~~~~~~~~~~~~
paraslash is lightweight. The stripped binary of para_server
- with all its features compiled in (mysql/dopey dbtool,
- mp3/ogg support, http/ortp support) is about 100K 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.
+ 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.
+
+command line interface:
+~~~~~~~~~~~~~~~~~~~~~~~
+ 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.
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.
+ create a public/secret key pair for authentication. The
+ (authenticated) connection is crypted with a symmetric rc4
+ session key.
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
+ curses window and can be used to easily control para_server
and para_audiod.
o para_sdl_gui. Shows pictures (on a per song basis) and