flac/man/flac.sgml

599 lines
16 KiB
Plaintext

<!doctype refentry PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
<!-- Fill in your name for FIRSTNAME and SURNAME. -->
<!ENTITY dhfirstname "<firstname>Matt</firstname>">
<!ENTITY dhsurname "<surname>Zimmerman</surname>">
<!-- Please adjust the date whenever revising the manpage. -->
<!ENTITY dhdate "<date>June 26, 2001</date>">
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
allowed: see man(7), man(1). -->
<!ENTITY dhsection "<manvolnum>1</manvolnum>">
<!ENTITY dhemail "<email>mdz@debian.org</email>">
<!ENTITY dhusername "Matt Zimmerman">
<!ENTITY dhucpackage "<refentrytitle>FLAC</refentrytitle>">
<!ENTITY dhpackage "flac">
<!ENTITY debian "<productname>Debian GNU/Linux</productname>">
<!ENTITY gnu "<acronym>GNU</acronym>">
]>
<refentry>
<docinfo>
<address>
&dhemail;
</address>
<author>
&dhfirstname;
&dhsurname;
</author>
<copyright>
<year>2001</year>
<holder>&dhusername;</holder>
</copyright>
&dhdate;
</docinfo>
<refmeta>
&dhucpackage;
&dhsection;
</refmeta>
<refnamediv>
<refname>&dhpackage;</refname>
<refpurpose>Free Lossless Audio Codec</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>flac</command>
<arg><option><replaceable>OPTION</replaceable></option></arg>
<arg choice=plain><replaceable>infile</replaceable></arg>
<arg choice=plain><replaceable>...</replaceable></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
<para>This manual page documents briefly the
<command>flac</command> command.</para>
<para>This manual page was written for the &debian;
distribution because the original program does not have a
manual page. Instead, it has documentation in HTML
format; see below.</para>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<para>A summary of options is included below. For a complete
description, see the HTML documentation.</para>
<refsect2>
<title>Generic Options</title>
<variablelist>
<varlistentry>
<term><option>-H</option>
</term>
<listitem>
<para>Show detailed help screen</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-d</option>
</term>
<listitem>
<para>Decode (default behavior is encode)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-c</option>
</term>
<listitem>
<para>Encode from standard input, or decode to
standard output</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-t</option>
</term>
<listitem>
<para>Test a flac encoded file (same as -d
except no decoded file is written)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-a</option>
</term>
<listitem>
<para>Analyze a flac encoded file (same as -d
except an analysis file is written)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-s</option>
</term>
<listitem>
<para>Silent mode (do not write runtime
encode/decode statistics to stdout)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-o</option> <replaceable>filename</replaceable></term>
<listitem>
<para>Force the output file name (usually flac just
changes the extension). May only be used when
encoding a single file. May not be used in
conjunction with --output-prefix.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--output-prefix</option> <replaceable>string</replaceable></term>
<listitem>
<para>Prefix each output file name with the given
string. This can be useful for encoding/decoding
files to a different directory. Make sure if your
string is a path name that it ends with a trailing
`/' (slash).</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--delete-input-file</option>
</term>
<listitem>
<para>Automatically delete the input file after a
successful encode or decode. If there was an
error (including a verify error) the input file
is left intact.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--skip</option> <replaceable>samples</replaceable></term>
<listitem>
<para>Skip the specified number of samples at the
beginning of the input file (can be used for both
encoding and decoding)</para>
</listitem>
</varlistentry>
</variablelist>
</refsect2>
<refsect2>
<title>Analysis Options</title>
<variablelist>
<varlistentry>
<term><option>--a-rtext</option>
</term>
<listitem>
<para>Includes the residual signal in the analysis
file. This will make the file very big, much
larger than even the decoded file.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--a-rgp</option>
</term>
<listitem>
<para>Generates a gnuplot file for every subframe;
each file will contain the residual distribution
of the subframe. This will create a lot of
files.</para>
</listitem>
</varlistentry>
</variablelist>
</refsect2>
<refsect2>
<title>Encoding Options</title>
<variablelist>
<varlistentry>
<term><option>--ogg</option></term>
<listitem>
<para>When encoding, generate Ogg-FLAC output instead
of native-FLAC. Ogg-FLAC streams are FLAC streams
wrapped in an Ogg transport layer. The resulting
file should have an '.ogg' extension and will still
be decodable by <TT><B>flac</B></TT>.<P></para>
<para>When decoding, force the input to be treated as
Ogg-FLAC. This is useful when piping input from
stdin or when the filename does not end in '.ogg'.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--lax</option></term>
<listitem>
<para>Allow encoder to generate non-Subset
files.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--sector-align</option></term>
<listitem>
<para>Align encoding of multiple CD format WAVE
files on sector boundaries. See the HTML
documentation for more information.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-S</option> <replaceable>{ # | X | #x }</replaceable></term>
<listitem>
<para>
Include a point or points in a SEEKTABLE. Using #,
a seek point at that sample number is added. Using
X, a placeholder point is added at the end of a the
table. Using #x, # evenly spaced seek points will
be added, the first being at sample 0. You may use
many -S options; the resulting SEEKTABLE will be the
unique-ified union of all such values. With no -S
options, flac defaults to '-S 100x'. Use -S- for
no SEEKTABLE. Note: '-S #x' will not work if the
encoder can't determine the input size before
starting. Note: if you use '-S #' and # is >=
samples in the input, there will be either no seek
point entered (if the input size is determinable
before encoding starts) or a placeholder point (if
input size is not determinable).</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-P</option> <replaceable>bytes</replaceable></term>
<listitem>
<para>Tell the encoder to write a PADDING metadata
block of the given length (in bytes) after the
STREAMINFO block. -P 0 implies no PADDING block,
which is the default. This is useful if you plan
to tag the file later with an APPLICATION block;
instead of having to rewrite the entire file later
just to insert your block, you can write directly
over the PADDING block.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-b</option> <replaceable>blocksize</replaceable></term>
<listitem>
<para>Default is 1152 for -l 0, else 4608; must be
192/576/1152/2304/4608/256/512/1024/2048/4096/8192/16384/32768
(unless --lax is used)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-m</option></term>
<listitem>
<para>Try mid-side coding for each frame (stereo
input only)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-M</option></term>
<listitem>
<para>Loose mid-side coding for all frames (stereo
input only)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-0</option>..<option>-8</option></term>
<listitem>
<para>Fastest compression..highest compression
(default is -5). These are synonyms for other
options:</para>
<variablelist>
<varlistentry>
<term><option>-0</option></term>
<listitem>
<para>Synonymous with -l 0 -b 1152 -r 2,2
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-1</option></term>
<listitem>
<para>Synonymous with -l 0 -b 1152 -M -r 2,2
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-2</option></term>
<listitem>
<para>Synonymous with -l 0 -b 1152 -m -r 3
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-3</option></term>
<listitem>
<para>Synonymous with -l 6 -b 4608 -r 3,3
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-4</option></term>
<listitem>
<para>Synonymous with -l 8 -b 4608 -M -r 3,3
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-5</option></term>
<listitem>
<para>Synonymous with -l 8 -b 4608 -m -r 3,3
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-6</option></term>
<listitem>
<para>Synonymous with -l 8 -b 4608 -m -r 4
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-7</option></term>
<listitem>
<para>Synonymous with -l 8 -b 4608 -m -e -r 6
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-8</option></term>
<listitem>
<para>Synonymous with -l 12 -b 4608 -m -e -r 6
</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-e</option></term>
<listitem>
<para>Do exhaustive model search
(expensive!)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-E</option></term>
<listitem>
<para>Do escape coding in the entropy coder. This
causes the encoder to use an unencoded representation
of the residual in a partition if it is smaller. It
increases the runtime and usually results in an
improvement of less than 1%.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-l</option> <replaceable>max_lpc_order</replaceable></term>
<listitem>
<para>0 => use only fixed predictors</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-p</option></term>
<listitem>
<para>Do exhaustive search of LP coefficient
quantization (expensive!). Overrides -q,
does nothing if using -l 0</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-q</option> <replaceable>bits</replaceable></term>
<listitem>
<para>Precision of the quantized linear-predictor
coefficients, 0 => let encoder decide (min is 5,
default is 0)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-r</option> <replaceable>[level,]level</replaceable></term>
<listitem>
<para>Set the [min,]max residual partition order
(0..16). min defaults to 0 if unspecified. Default
is -r 3,3.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-R</option> <replaceable>#</replaceable></term>
<listitem>
<para>Set the Rice parameter search distance.
Default is 0.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-V</option></term>
<listitem>
<para>Verify a correct encoding by decoding the
output in parallel and comparing to the
original</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-S-</option> <option>-m-</option> <option>-M-</option> <option>-e-</option> <option>-E-</option> <option>-p-</option> <option>-V-</option> <option>--delete-input-file-</option> <option>--lax-</option> <option>--ogg-</option>
</term>
<listitem>
<para>These flags can be used to invert the sense
of the corresponding normal option.</para>
</listitem>
</varlistentry>
</variablelist>
</refsect2>
<refsect2>
<title>Format Options</title>
<variablelist>
<varlistentry>
<term><option>-fb</option></term>
<listitem>
<para>Big-endian byte order</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-fl</option></term>
<listitem>
<para>Little-endian byte order</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-fc</option>
<replaceable>channels</replaceable></term>
<listitem>
<para>Set number of channels.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-fp</option>
<replaceable>bits_per_sample</replaceable></term>
<listitem>
<para>Set bits per sample.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-fs</option>
<replaceable>sample_rate</replaceable></term>
<listitem>
<para>Set sample rate (in Hz).</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-fu</option></term>
<listitem>
<para>Unsigned samples (default is signed)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-fr</option></term>
<listitem>
<para>Force to raw format (even if filename ends
in <filename>.wav</filename>).</para>
</listitem>
</varlistentry>
</variablelist>
</refsect2>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
<para>The programs are documented fully by HTML format
documentation, available in
<filename>/usr/share/doc/flac/html</filename> on
&debian; systems.</para>
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para>This manual page was written by &dhusername; &dhemail; for
the &debian; system (but may be used by others).</para>
<!-- <para>Permission is granted to copy, distribute and/or modify
this document under the terms of the <acronym>GNU</acronym> Free
Documentation License, Version 1.1 or any later version
published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts and no Back-Cover Texts. A copy
of the license can be found under
<filename>/usr/share/common-licenses/FDL</filename>.</para> -->
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->