X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=m4%2Fgengetopt%2Faudiod.m4;fp=m4%2Fgengetopt%2Faudiod.m4;h=9aabd575b0519cc5f763219e135c3726c6e38611;hb=2829202e393e4b0095d62739910ae56f04e83326;hp=0000000000000000000000000000000000000000;hpb=66b0f375732897cb76cfbefbb03ed951c4ed24ba;p=paraslash.git diff --git a/m4/gengetopt/audiod.m4 b/m4/gengetopt/audiod.m4 new file mode 100644 index 00000000..9aabd575 --- /dev/null +++ b/m4/gengetopt/audiod.m4 @@ -0,0 +1,208 @@ +include(header.m4) +define(CURRENT_PROGRAM,para_audiod) +define(DEFAULT_CONFIG_FILE,~/.paraslash/audiod.conf) + + +######################### +section "General options" +######################### + + +include(loglevel.m4) +include(color.m4) +include(config_file.m4) +include(logfile.m4) +include(log_timing.m4) +include(daemon.m4) +include(user.m4) +include(group.m4) + + +######################## +section "Audiod options" +######################## + +option "force" F +#~~~~~~~~~~~~~~~ +"force startup" +flag off +details=" + If this flag is not given, para_audiod refuses to start if the + well-known socket file (see the --socket option) already exists + because this usually means that para_audiod is already running + and listening on that socket. After a crash or if para_audiod + received a SIGKILL signal, a stale socket file might remain and + you have to use --force once to force startup of para_audiod. +" + +option "mode" m +#~~~~~~~~~~~~~~ +"startup mode" +string typestr="mode" +default="on" +optional +details=" + Para_audiod supports three modes of operation: On, off and + standby (sb). This option selects the mode that should be + used on startup. If para_audiod operates in \"on\" mode, it + will connect to para_server in order to receive its status + information. If para_server announces the availability of an + audio stream, para_audiod will automatically download, decode + and play the audio stream according to the given stream I/O + options, see below. + + In \"standby\" mode, para_audiod will only receive the + status information from para_server but will not download + the audio stream. + + In \"off\" mode, para_audiod does not connect para_server at + all, but still listens on the local socket for connections. +" + +option "socket" s +#~~~~~~~~~~~~~~~~ +"well-known socket" +string typestr="filename" +optional +details=" + Para_audiod uses a \"well-known\" socket to listen + on for connections from para_audioc. This socket is a + special file in the file system; its location defaults to + /var/paraslash/audiod_sock.. + + para_audioc, the client program used to connect to para_audiod, + opens this socket in order to talk to para_audiod. If the + default value for para_audiod is changed, para_audioc must be + instructed to use also \"filename\" for connecting para_audiod. +" + +option "user_allow" - +#~~~~~~~~~~~~~~~~~~~~ +"allow this uid" +int typestr="uid" +default="-1" +optional +multiple +details=" + Allow the user identified by \"uid\" to connect to para_audiod. + May be specified multiple times. If not specified at all, + all users are allowed to connect. + + This feature requires unix socket credentials and is currently + only supported on Linux systems. On other operating systems, + the option is silently ignored and all local users are allowed + to connect to para_audiod. +" + +option "clock_diff_count" - +#~~~~~~~~~~~~~~~~~~~~~~~~~~ +"sync clock on startup" +int typestr="count" +default="0" +optional +details=" + Check the clock difference between the host running para_server + and the local host running para_audiod that many times before + starting any stream I/0. Set this to non-zero for non-local + setups if the clocks of these two hosts are not synchronized + by ntp or similar. +" + +############################# +section "Stream I/O options" +############################# + +option "receiver" r +#~~~~~~~~~~~~~~~~~~ +"select receiver" +string typestr="receiver_spec" +default="http" +optional +multiple +details=" + This option may be given multiple times, for each audio format + separately. If multiple definitions for an audio format are + given, the first one is selected. + + The \"receiver_spec\" consists of an audio format specifier + and one or more receiver arguments, separated by a colon. + + The audio format specifier is a regular expression which + specifies the set of audio formats for which this option + should apply. + + If any receiver options are present, the whole receiver + argument must be quoted: + + -r 'mp3:http -i my.host.org -p 8009' + + Since a single dot '.' matches the name of any audio format, + specifying '.' instead of 'mp3' above activates the http + receiver for all audio formats. + +" + +option "filter" f +#~~~~~~~~~~~~~~~~ +"Specify the filter configuration." +string typestr = "filter_spec" +optional +multiple +details = " + This option may be given multiple times. The \"filter_spec\" + consists of an audio format specifier (see above), the name + of the filter, and any options for that filter. Note that + order matters. + + The compiled-in defaults apply to all audio formats for which + no --filter option was given. These defaults depend on the + receiver being used. + + For HTTP streams, only the decoder for the current audio + format is activated. UDP and DCCP streams, on the other + hand, are sent FEC-encoded by para_server. In order to play + such streams, the receiver output must be FEC-decoded first, + i.e. fed to the fecdec filter. Therefore the default for UDP + and DCCP streams is to activate the fecdec filter, followed + by the decoding filter for the audio format. + + Examples: + + --filter 'mp3:mp3dec' + + --filter 'mp3|aac:compress --inertia 5 --damp 2' + + --filter '.:fecdec' + +" + +option "writer" w +#~~~~~~~~~~~~~~~~ +"Specify stream writer." +string typestr="writer_spec" +optional +multiple +details=" + May be given multiple times, even multiple times for the same + audio format. Default value is \"alsa\" for all supported + audio formats. Example: + + --writer 'aac|wma:oss' + +" + +option "stream_delay" - +#~~~~~~~~~~~~~~~~~~~~~~ +"time for client sync" +int typestr="milliseconds" +default="200" +optional +details=" + Add the given amount of milliseconds to the stream start time + announced by para_server and do not send data to the writer + before that time (modulo clock difference). + + This is useful mainly for synchronizing the audio output of + different clients. +" +