X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=README;h=d8a545fc7abd744e6df57c51638dee607574e69e;hp=d4521bc5298122d493884d6159dde3578d9fa68c;hb=3ea5399aeec092dcdb9f039288f1e146aadbb2f7;hpb=14fe3da6c11b8085b11ef04f5659a18716a904ff diff --git a/README b/README index d4521bc5..d8a545fc 100644 --- a/README +++ b/README @@ -1,196 +1,13 @@ -README -====== +The paraslash package contains server and client software for network +audio streaming and stand-alone utilities for decoding and playing +audio files. See the user manual for details. ----- -Paraslash is an acronym for +Distribution of paraslash is covered by the GNU GPL, version 2 unless +otherwise stated. See file COPYING. -_Play, archive, rate and stream large audio sets happily_ +Web page: http://people.tuebingen.mpg.de/maan/paraslash/ +Gitweb: http://git.tuebingen.mpg.de/paraslash.git/ +Git URL: git://git.tuebingen.mpg.de/paraslash.git +Email: Andre Noll -It contains the following programs: - ------------------------ -para_server (obligatory) ------------------------ - -para_server streams binary audio data (mp3/oggvorbis/m4a files) -over local and/or remote networks. It listens on a tcp port and -accepts commands such as play, stop, pause, next from authenticated -clients. However, there are many more commands. - -It supports three builtin network streaming methods (senders): http, dccp, -or rtp. - - * The http sender is recommended for public streams that can be played - by any player like mpg123, xmms, itunes, winamp... - - * The dccp sender is experimental and requires kernel support for the - rather new datagram congestion control protocol. - - * The ortp sender is recommended for multicast LAN streaming - -It is possible to activate more than one sender simultaneously. - -The built-in audio file selector of paraslash is used to manage your -audio files. It maintains statistics on the usage of all available audio -files such as last played time, and the number of times each file was -selected. Its features include - - * attributes: Allow fine-grained audio file selection. - - * image table. For storage of e.g. album cover art. - - * lyrics table. For storage of lyrics. - - * playlist table. Stores arbitrary many playlists. - - * mood mode. Audio file selection works by spcifying mood - methods involving attributes, pattern matching for file names - and more. This allows rather sophisticated configurations - and is explained in more detail in INSTALL. - - * rename detection. If files are moved or renamed, afs will - recognioze them despite of this change. - -Despite of all these features, paraslash is lightweight. The -stripped binary of para_server with all its features compiled in -mp3/ogg/aac support, http/dccp/ortp support) is about 150K on i386 -under Linux. para_audiod (see below) is even smaller. - ------------------------- -para_client (obligatory) ------------------------- - -The client program to connect to para_server. 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. - -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 encrypted -with a symmetric rc4 session key. - --------------------- -para_recv (optional) --------------------- - -A command line http/dccp/rtp stream grabber. The http mode of this tool -can be used to receive date from any http streaming source. - ----------------------- -para_filter (optional) ----------------------- - -A filter program that converts from stdin and writes to stdout. It -is completely independent from the rest of paraslash, so it might be -useful also for different purposes. - -para_filter combines several decoders (mp3, oggvorbis, aac) and a -volume normalizer New filters can be added easily due to the modular -design. If more than one filter is specified, the given filters -are 'piped' together in-memory, i.e. without calling any of the -read(2)/write(2)/select(2) etc. functions. - ------------------------ -para_write (obligatory) ------------------------ - -A modular audio stream writer. It supports a simple file writer -output plug-in and optional wav/raw players for alsa (linux-only, -Debian package: libasound2-dev) and Mac OS. para_write can also be -used as a stand-alone wav or raw audio player. - ---------------------------------------- -para_audiod (optional, but recommended) ---------------------------------------- - -The local daemon that collects information from para_server. - -It 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 output plug-in -(writer), e.g. the alsa writer on linux systems. It is possible to capture the -stream at any position in the filter chain. - -para_audiod starts an appropriate receiver, filter and player as soon as -para_server announces the availability (and the type) of an audio stream. -Moreover, it listens on a local socket and sends status information about -para_server and para_audiod to local clients on request. - --------------------------------------- -para_audioc (optional, but recommended) --------------------------------------- - -The client program which talks with para_audiod. Used to control -para_audiod, to receive status info, or to grab the stream at any -point in the filter chain. - -para_audioc (hence para_audiod) is needed by para_gui, para_sdl_gui -and para_krell, see below. - -------------------- -para_gui (optional) -------------------- - -Themable ncurses-based gui. It calls para_audioc and presents -the obtained information in an ncurses window. para_gui provides -key-bindings for the most common commands and new key-bindings can -be added easily. - --------------------- -para_fade (optional) --------------------- - -A (Linux-only) alarm clock and volume-fader. - --------------------------- -bash_completion (optional) --------------------------- - -A small bash script for inclusion in ~/.bashrc. It gives you command -line completion for some paraslash commands. - ------------- -Requirements ------------- - -In any case you need - - - gcc, the gnu compiler collection (shipped with distro): gcc-3.3 - or newer is required. - - gnu make (shipped with disto, might be called gmake) - - bash - - openssl (needed by server, client): usually shipped with - distro, but you might have to install the "development package" - (called libssl-dev on debian systems) as well: - http://www.openssl.org/ - - software mixing, e.g. ALSA and the direct mixing plugin (dmix) - -The mp3 decoder of para_filter is based on libmad: If you prefer to -use the libmad package provided by your distributor, make sure to -install the corresponding development package as well. Otherwise, -just download libmad from http://www.underbit.com/products/mad/ - -For ogg vorbis streams you'll need libogg, libvorbis, libvorbisfile, -The corresponding Debian packages are called libogg-dev libvorbis-dev, -other distributors chose similar names. All of these are also -available at http://www.xiph.org/downloads/ - -For aac files (m4a) you'll need libfaad. Get it at -http://www.audiocoding.com/modules/wiki/?page=AAC - -If you intend to use the optional ortp streamer, you'll need libortp: -http://www.linphone.org/ortp/ - -------- -LICENSE -------- - -Distribution of paraslash is covered by the GNU GPL. See file COPYING. - ----------- -THE AUTHOR ----------- - -Andre Noll Comments and bug reports are welcome.