X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=web%2Fmanual.md;h=15386134771c2921ecf840347e8179aecc374e1a;hp=3b9c270973b7419b82c7587be912817608c5ddd5;hb=f0c49ce075c3c950a0488c6cf32e63621cc3c574;hpb=becfb4be64a123630775b6517279ed20e4b498f8 diff --git a/web/manual.md b/web/manual.md index 3b9c2709..15386134 100644 --- a/web/manual.md +++ b/web/manual.md @@ -187,7 +187,7 @@ Requirements git clone git://git.tuebingen.mpg.de/osl cd osl && make && sudo make install && sudo ldconfig - sudo apt-get install autoconf libssl-dev help2man gengetopt \ + sudo apt-get install autoconf libssl-dev help2man gengetopt m4 \ libmad0-dev libid3tag0-dev libasound2-dev libvorbis-dev \ libfaad-dev libspeex-dev libFLAC-dev libsamplerate-dev realpath \ libasound2-dev libao-dev libreadline-dev libncurses-dev \ @@ -221,6 +221,9 @@ executables. - [help2man](ftp://ftp.gnu.org/pub/gnu/help2man) is used to create the man pages. +- [m4](ftp://ftp.gnu.org/pub/gnu/m4/). Some source files are generated +from templates by the m4 macro processor. + Optional: - [openssl](http://www.openssl.org/) or @@ -751,8 +754,8 @@ these commands. The image, lyrics, moods and playlists tables are all blob tables. Blob tables consist of three columns each: The identifier which is -a positive non-negative number that is auto-incremented, the name -(an arbitrary string) and the content (the blob). +a positive number that is auto-incremented, the name (an arbitrary +string) and the content (the blob). All blob tables support the same set of actions: cat, ls, mv, rm and add. Of course, _add_ is used for adding new blobs to the table @@ -776,21 +779,19 @@ or playlist is activated with the select command. ### The score table ### -Unlike all other tables the contents of the score table remain in -memory and are never stored on disk. The score table contains two -columns: The SHA1 hash value (of an audio file) and its current -score. - -However, only those files which are admissible for the current mood -or playlist are contained in the score table. The audio file selector -always chooses the row with the highest score as the file to stream -next. While doing so, it computes the new score and updates the -last_played and the num_played fields in the audio file table. +The score table describes those audio files which are admissible for +the current mood or playlist (see below). The table has two columns: +a pointer to a row of the audio file table and a score value. -The score table is recomputed by the select command which loads a -mood or playlist. Audio files are chosen for streaming from the rows -of the score table on a highest-score-first basis. +Unlike all other tables of the database, the score table remains in +memory and is never stored on disk. It is initialized at startup and +recomputed when the select command loads a new mood or playlist. +When the audio file selector is asked to open the next audio file, +it picks the row with the highest score, opens the corresponding +file and passes the file descriptor to the virtual streaming system. +At this point the last_played and the num_played fields of the selected +file are updated and the score is recomputed. Playlists and moods ------------------- @@ -1825,9 +1826,6 @@ developer machine. paraslash development. It is necessary for cloning the git repository and for getting updates. -- [m4](ftp://ftp.gnu.org/pub/gnu/m4/). Some input files for gengetopt -are generated from templates by the m4 macro processor. - - [autoconf](ftp://ftp.gnu.org/pub/gnu/autoconf/) GNU autoconf creates the configure file which is shipped in the tarballs but has to be generated when compiling from git.