-include(header.m4)
-<qu>
-text "
-para_afh, the audio format handler tool, is a stand-alone program
-contained in the paraslash package for analyzing and streaming audio
-files. It can be used to
-
- - print tech info about the given audio file to stdout.
- In particular, the 'chunk table' of the audio file, an array
- of offsets within the audio file, may be printed. This table
- can be used by other programs unaware of the particular audio
- format to stream the audio file.
-
- - write selected parts of the given audio file in complete
- chunks without decoding. Thus para_afh can be used to 'cut'
- an audio file.
-
- - write selected parts of the given audio files 'just in time'
- to stdout. This may be useful for third-party software that
- is capable of reading from stdin.
-"
-</qu>
+args "--unamed-opts=audio_file --no-handle-version --no-handle-help"
+
+purpose "Print information about audio file(s)"
+include(header.m4)
include(loglevel.m4)
<qu>
-defgroup "mode"
-#--------------
-groupdesc="
- There are two modes of operation: Info mode and stream mode,
- one of which must be selected by the corresponding option.
- See below.
-"
-required
-
-groupoption "info" i
-#~~~~~~~~~~~~~~~~~~~
-"select info mode"
-group="mode"
-details="
- In this mode, the program prints technical information about
- the given audio file to stdout.
-"
-
-groupoption "stream" s
-#~~~~~~~~~~~~~~~~~~~~~
-"select stream mode"
-group="mode"
-details="
- If this mode is selected, the selected parts of the content
- of the audio file are written to stdout. Only complete chunks
- with respect of the underlying audio format are written.
- For example, only complete frames in case of mp3 files.
-"
-section "Options for info mode"
-#==============================
+###################################
+section "printing meta information"
+###################################
-option "chunk_table" c
+option "chunk-table" c
#~~~~~~~~~~~~~~~~~~~~~
"print also the chunk table"
flag off
-dependon="info"
+details = "
+ The 'chunk table' of an audio file is an array of offsets
+ within the audio file. Each offset corresponds to chunk
+ of encoded data. The exact meaning of 'chunk' depends on
+ the audio format.
+
+ Programs which are unaware of the particular audio format can
+ read the chunk table to obtain the timing information needed
+ to stream the file.
+"
-option "human" u
-#~~~~~~~~~~~~~~~
-"use human-readable output format"
+option "parser-friendly" p
+#~~~~~~~~~~~~~~~~~~~~~~~~~
+"do not use human-readable output format"
flag off
-dependon = "info"
details = "
Currently this option only affects the format of the chunk table,
- so it has no effect if --chunk_table is not given.
+ so it has no effect if --chunk-table is not given.
- The human-readable output consists of one output line per
- chunk and the output contains also the chunk number, the
- duration and the size of each chunk.
+ The human-readable output (the default) consists of one output
+ line per chunk and the output contains also the chunk number,
+ the duration and the size of each chunk. The parser-friendly
+ output prints only the offsets, in one line.
"
-section "Options for stream mode"
-#================================
+#############################
+section "modifying meta tags"
+#############################
+option "modify" m
+#~~~~~~~~~~~~~~~~
+"modify (rather than print) tags"
+flag off
+details = "
+ When this option is given, para_afh creates the result file
+ as a temporary copy of the given file(s), but with meta
+ tags changed according to the options below. On errors,
+ the temporary file is removed, leaving the original file
+ unchanged. On success, if --backup is given, the original
+ file is moved away. Finally the temporary file is renamed to
+ the name of the original file.
+"
-option "begin_chunk" b
-#~~~~~~~~~~~~~~~~~~~~~
-"skip a number of chunks"
-int typestr="chunk_num"
-default="0"
-dependon="stream"
-optional
-details="
- The chunk_num argument must be between -num_chunks and
- num_chunks - 1 inclusively where num_chunks is the total number
- of chunks which is printed when using the --info option. If
- chunk_num is negative, the given number of chunks are counted
- backwards from the end of the file. For example --begin_chunk
- -100 instructs para_afh to start output at chunk num_chunks
- - 100. This is mainly useful for cutting off the end of an
- audio file.
+option "backup" b
+"create backup of the original file"
+flag off
+details = "
+ The backup suffix is '~', i.e. a single tilde character is appended
+ to the given file name.
"
-option "end_chunk" e
-#~~~~~~~~~~~~~~~~~~~
-"only write up to chunk chunk_num"
-int typestr="chunk_num"
-dependon="stream"
+option "year" y
+#~~~~~~~~~~~~~~
+"set the year tag"
+string typestr="year"
optional
-details="
- For the chunk_num argument the same rules as for --begin_chunk
- apply. The default is to write up to the last chunk.
-"
-option "just_in_time" j
-#~~~~~~~~~~~~~~~~~~~~~~
-"use timed writes"
-flag off
-dependon="stream"
-details="
- Write the specified chunks of data 'just in time', i.e. the
- write of each chunk is delayed until the time it is needed
- by the decoder/player in order to guarantee an uninterrupted
- audio stream.
-"
+option "title" t
+#~~~~~~~~~~~~~~~
+"set the title tag"
+string typestr="title"
+optional
+
+option "artist" a
+#~~~~~~~~~~~~~~~~
+"set the artist/author tag"
+string typestr="artist"
+optional
+
+option "album" A
+#~~~~~~~~~~~~~~~
+"set the album tag"
+string typestr="album"
+optional
+
+option "comment" C
+#~~~~~~~~~~~~~~~~~
+"set the comment tag"
+string typestr="comment"
+optional
-option "no_header" H
-#~~~~~~~~~~~~~~~~~~~
-"do not write an audio file header"
-flag off
-dependon="stream"
-details="
- If an audio format needs information about the audio file
- in a format-specific header in order to be understood by
- the decoding software, a suitable header is automatically
- send. This option changes the default behaviour, i.e. no
- header is written.
-"
</qu>