Print what is being done.
[/help]
+[subcommand addatt]
+ purpose = add new attribute(s)
+ non-opts-name = attribute...
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ This adds new attributes to the attribute table. At most 64 attributes
+ may be defined.
+ [/description]
+
+[subcommand check]
+ purpose = run integrity checks on database tables
+ aux_info = AFS_READ
+ [description]
+ If no options are given, all checks are run.
+ [/description]
+ [option aft]
+ short_opt = a
+ summary = run audio file table checks
+ [help]
+ Report stale paths and invalid image and lyrics ids of the audio
+ file table.
+ [/help]
+ [option attribute]
+ short_opt = A
+ summary = check for invalid attributes
+ [help]
+ Report audio files whose attribute bitmask is invalid, i.e., has a bit
+ set which does not correspond to any attribute of the attribute table.
+ [/help]
+ [option mood]
+ short_opt = m
+ summary = check for invalid mood definitions
+ [help]
+ Run syntax checks on all moods of the mood table.
+ [/help]
+ [option playlist]
+ short_opt = p
+ summary = find invalid paths in playlists
+ [help]
+ Check all playlists for paths not contained in the audio file table.
+ [/help]
+
+[subcommand cpsi]
+ purpose = copy selected parts of the audio file selector info
+ non-opts-name = source pattern...
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ If no option, or only --verbose is given, all fields of the audio
+ file selector info structure are copied to each row of the audio file
+ table whose path matches at least one of the given patterns. Otherwise,
+ only those fields which correspond to the given options are copied.
+ [/description]
+ [option attribute-bitmap]
+ short_opt = a
+ summary = copy the attribute bitmap
+ [option image-id]
+ short_opt = i
+ summary = copy the image id
+ [option lyrics-id]
+ short_opt = y
+ summary = copy the lyrics id
+ [option lastplayed]
+ short_opt = l
+ summary = copy the lastplayed timestamp
+ [option numplayed]
+ short_opt = n
+ summary = copy the numplayed counter
+ [option verbose]
+ short_opt = v
+ summary = enable verbose mode
+
[subcommand ff]
purpose = jump N seconds forward or backward
synopsis = n[-]
to the server process has the same effect as running this command.
[/description]
+[subcommand init]
+ purpose = initialize the database tables for the audio file selector
+ synopsis = [table_name...]
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ When invoked without arguments, this command creates all
+ tables: audio_files, attributes, scores, moods, lyrics, images,
+ playlists. Otherwise only the given tables are created.
+ [/description]
+
[subcommand jmp]
purpose = reposition the current stream
non-opts-name = n
n <= 100.
[/description]
+[subcommand lsatt]
+ purpose = list attributes
+ aux_info = AFS_READ
+ [description]
+ Print the list of all defined attributes which match the given
+ pattern. If no pattern is given, the full list is printed.
+ [/description]
+
+ [option id-sort]
+ short_opt = i
+ summary = sort attributes by id
+ [help]
+ The default is to sort alphabetically by name.
+
+ Attributes are internally represented as an 64 bit array. The attribute
+ id is the bit number in this array.
+ [/help]
+ [option long]
+ short_opt = l
+ summary = print long listing
+ [help]
+ The long listing prints the attribute id in addition to the name of
+ the attribute. The id is printed as a decimal number and is separated
+ from the name by a tab character.
+ [/help]
+ [option reverse]
+ short_opt = r
+ summary = reverse sort order
+
+[subcommand mvatt]
+ purpose = rename an attribute
+ synopsis = source dest
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ Rename the attribute given by the first argument to the destination
+ given by the second argument. It is an error if the destination
+ attribute exists.
+ [/description]
+
[subcommand next]
purpose = close the stream and start to stream the next audio file
aux_info = VSS_READ | VSS_WRITE
Set the 'P' (playing) bit of the vss status flags.
[/description]
+[subcommand rm]
+ purpose = remove rows from the audio file table
+ non-opts-name = pattern...
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ Remove all rows of the audio file table which match any of the given
+ patterns. Note that this affects only the database table; the command
+ won't touch your audio files on disk.
+ [/description]
+ [option verbose]
+ short_opt = v
+ summary = print paths of deleted rows
+ [option force]
+ short_opt = f
+ summary = don't complain if nothing was removed
+ [option pathname-match]
+ short_opt = p
+ summary = modify matching behaviour
+ [help]
+ Match a slash in the path only with a slash in pattern and not by an
+ asterisk (*) or a question mark (?) metacharacter, nor by a bracket
+ expression ([]) containing a slash (see fnmatch(3)).
+ [/help]
+
+[subcommand rmatt]
+ purpose = remove attribute(s)
+ non-opts-name = pattern...
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ Remove all attributes which match any given pattern. All information
+ about the removed attributes in the audio file table is lost.
+ [/description]
+
+[subcommand select]
+ purpose = activate a mood or a playlist
+ non-opts-name = specifier/name
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ The specifier is either 'm' or 'p' to indicate whether a playlist or
+ a mood should be activated. Example:
+
+ select m/foo
+
+ activates the mood named 'foo'.
+ [/description]
+
[subcommand sender]
purpose = control paraslash senders
synopsis = [sender cmd [arguments]]
[/description]
+[subcommand setatt]
+ purpose = set or unset attributes
+ synopsis = attribute{+|-}... pattern...
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ Set ('+') or unset ('-') the given attributes for all audio files
+ matching the given pattern. Example:
+
+ setatt rock+ punk+ pop- '*foo.mp3'
+
+ sets the 'rock' and the 'punk' attribute and unsets the 'pop' attribute
+ of all files ending with 'foo.mp3'.
+ [/description]
+
[subcommand si]
purpose = print server info
aux_info = NO_PERMISSION_REQUIRED
necessary to send SIGKILL.
[/description]
+[subcommand touch]
+ purpose = manipulate the afs information of audio files
+ non-opts-name = pattern...
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ This command modifies the afs info structure of all rows of the audio
+ file table whose path matches at least one of the given patters.
+
+ If at least one option is given which takes a number as its argument,
+ only those fields of the afs info structure are updated which
+ correspond to the given options while all other fields stay unmodified.
+
+ If no such option is given, the lastplayed field is set to the current
+ time and the value of the numplayed field is increased by one while
+ all other fields are left unchanged. This mimics what happens when
+ the virtual streaming system selects the file for streaming.
+
+ If the file is admissible for the current mood (or contained in the
+ current playlist), its score is recomputed according to the changed
+ values.
+ [/description]
+ [option numplayed]
+ short_opt = n
+ summary = set the numplayed count manually
+ arg_type = uint32
+ arg_info = required_arg
+ typestr = num
+ [help]
+ The numplayed count of an audio file is the number of times the file
+ was selected for streaming. It is one of the inputs to the scoring
+ function which determines the order in which admissible files are
+ streamed.
+
+ The virtual streaming system increases this number automatically each
+ time it opens the file for streaming.
+ [/help]
+ [option lastplayed]
+ short_opt = l
+ summary = set the lastplayed time manually
+ arg_type = uint64
+ arg_info = required_arg
+ typestr = num
+ [help]
+ The lastplayed time of an audio file is the time when the file was
+ last opened for streaming.
+
+ Like the numplayed count, it is an input for the scoring function
+ and is updated automatically by the virtual streaming system.
+
+ The argument must be a number of seconds since the epoch. Example:
+
+ touch -l=$(date +%s) file
+
+ sets the lastplayed time of 'file' to the current time.
+ [/help]
+ [option image-id]
+ short_opt = i
+ summary = set the image id
+ arg_type = uint32
+ arg_info = required_arg
+ typestr = num
+ [help]
+ The afs info structure of each row of the audio file table contains
+ a slot for the image id of the audio file that corresponds to the
+ row. The image id stored in this slot refers to the key in the image
+ table that identifies the blob.
+
+ When a new audio file is added to the audio file table, its image
+ id starts out as zero, indicating that there is no image associated
+ with the file. Setting the image id to a non-zero number associates
+ the file with a particular blob of the image table, for example the
+ cover art of the album in jpg format.
+ [/help]
+ [option lyrics-id]
+ short_opt = y
+ summary = set the lyrics id
+ arg_type = uint32
+ arg_info = required_arg
+ typestr = num
+ [help]
+ This option works just like --image-id, but sets the lyrics ID rather
+ than the image id.
+ [/help]
+ [option amp]
+ short_opt = a
+ summary = set the amplification value (0-255)
+ arg_type = uint32
+ arg_info = required_arg
+ typestr = num
+ [help]
+ The amplification value of an audio file is a number which is stored
+ in the afs info structure.
+
+ The value determines the scaling factor by which the amplitude of
+ the decoded samples should be multiplied in order to normalize the
+ volume. A value of zero means no amplification, 64 means the amplitude
+ should be multiplied by a factor of two, 128 by three and so on.
+
+ The amp filter of para_audiod amplifies the volume according to
+ this value.
+ [/help]
+ [option verbose]
+ short_opt = v
+ summary = explain what is being done
+ [option pathname-match]
+ short_opt = p
+ summary = modify matching behaviour
+ [help]
+ Match a slash in the path only with a slash in pattern and not by an
+ asterisk (*) or a question mark (?) metacharacter, nor by a bracket
+ expression ([]) containing a slash (see fnmatch(3)).
+ [/help]
+
[subcommand version]
purpose = print the git version string of para_server
aux_info = NO_PERMISSION_REQUIRED