.\" This manpage has been automatically generated by docbook2man 
.\" from a DocBook document.  This tool can be found at:
.\" <http://shell.ipoline.com/~elmert/comp/docbook2X/> 
.\" Please send any bug reports, improvements, comments, patches, 
.\" etc. to Steve Cheng <steve@ggi-project.org>.
.TH "FLAC" "1" "10 January 2003" "" ""
.SH NAME
flac \- Free Lossless Audio Codec
.SH SYNOPSIS

\fBflac\fR [ \fB\fIOPTION\fB\fR ] \fB\fIinfile\fB\fR \fB\fI...\fB\fR

.SH "DESCRIPTION"
.PP
This manual page documents briefly the
\fBflac\fR command.
.PP
This manual page was written for the Debian GNU/Linux
distribution because the original program does not have a
manual page.  Instead, it has documentation in HTML
format; see below.
.SH "OPTIONS"
.PP
A summary of options is included below.  For a complete
description, see the HTML documentation.
.SS "GENERAL OPTIONS"
.TP
\fB-v, --version \fR
Show the flac version number
.TP
\fB-h, --help \fR
Show basic usage and a list of all options
.TP
\fB-H, --explain \fR
Show detailed explanation of usage and all options
.TP
\fB-d, --decode \fR
Decode (the default behavior is to encode)
.TP
\fB-t, --test \fR
Test a flac encoded file (same as -d
except no decoded file is written)
.TP
\fB-a, --analyze \fR
Analyze a flac encoded file (same as -d
except an analysis file is written)
.TP
\fB-c, --stdout \fR
Write output to stdout
.TP
\fB-s, --silent \fR
Silent mode (do not write runtime
encode/decode statistics to stderr)
.TP
\fB-o \fIfilename\fB, --output-name=\fIfilename\fB\fR
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.
.TP
\fB--output-prefix=\fIstring\fB\fR
Prefix each output file name with the given
string.  This can be useful for encoding or decoding
files to a different directory.  Make sure if your
string is a path name that it ends with a trailing
`/' (slash).
.TP
\fB--delete-input-file \fR
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.
.TP
\fB--skip={\fI#\fB|\fImm:ss.ss\fB}\fR
Skip over the first number of samples of the input.
This works for both encoding and decoding, but not
testing.  The alternative form mm:ss.ss can be used
to specify minutes, seconds, and fractions of a
second.
.TP
\fB--until={\fI#\fB|[\fI+\fB|\fI-\fB]\fImm:ss.ss\fB}\fR
Stop at the given sample number for each input file.
This works for both encoding and decoding, but not testing.
The given sample number is not included in the decoded
output.  The alternative form mm:ss.ss can be used to
specify minutes, seconds, and fractions of a second.  If a
`+' (plus) sign is at the beginning, the --until point is
relative to the --skip point.  If a `-' (minus) sign is at
the beginning, the --until point is relative to end of the
audio.
.TP
\fB--ogg\fR
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 flac.

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'.
.TP
\fB--serial-number=\fI#\fB\fR
When used with --ogg, specifies the serial
number to use for the FLAC stream.  When encoding and
no serial number is given, flac uses '0'.  When
decoding and no number is given, flac uses the serial
number of the first page.
.SS "ANALYSIS OPTIONS"
.TP
\fB--residual-text \fR
Includes the residual signal in the analysis
file.  This will make the file very big, much
larger than even the decoded file.
.TP
\fB--residual-gnuplot \fR
Generates a gnuplot file for every subframe;
each file will contain the residual distribution
of the subframe.  This will create a lot of
files.
.SS "DECODING OPTIONS"
.TP
\fB-F, --decode-through-errors \fR
By default flac stops decoding with an error
and removes the partially decoded file if it
encounters a bitstream error.  With -F, errors are
still printed but flac will continue decoding to
completion.  Note that errors may cause the decoded
audio to be missing some samples or have silent
sections.
.SS "ENCODING OPTIONS"
.TP
\fB-V, --verify\fR
Verify a correct encoding by decoding the
output in parallel and comparing to the
original
.TP
\fB--lax\fR
Allow encoder to generate non-Subset
files.
.TP
\fB--replay-gain\fR
Calculate ReplayGain values and store in
Vorbis comments, similar to vorbisgain.  Title
gains/peaks will be computed for each input
file, and an album gain/peak will be computed
for all files.  All input files must have the
same resolution, sample rate, and number of
channels.  Only mono and stereo files are
allowed, and the sample rate must be one of
8, 11.025, 12, 16, 22.05, 24, 32, 44.1, or 48
kHz.  Also note that this option may leave a
few extra bytes in a PADDING block as the exact
size of the tags is not known until all files
are processed.  Note that this option cannot be
used when encoding to standard output (stdout).
.TP
\fB--cuesheet=\fIfilename\fB\fR
Import the given cuesheet file and store it in a
CUESHEET metadata block.  This option may only be used
when encoding a single file.  A seekpoint will be added
for each index point in the cuesheet to the SEEKTABLE
unless --no-cued-seekpoints is specified.
.TP
\fB--sector-align\fR
Align encoding of multiple CD format WAVE
files on sector boundaries.  See the HTML
documentation for more information.
.TP
\fB-S {\fI#\fB|\fIX\fB|\fI#x\fB|\fI#s\fB}, --seekpoint={\fI#\fB|\fIX\fB|\fI#x\fB|\fI#s\fB}\fR
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.  Using #s, a
seekpoint will be added every # seconds (# does not
have to be a whole number; it can be, for example, 9.5,
meaning a seekpoint every 9.5 seconds).  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 10s'.  Use --no-seektable
for no SEEKTABLE.  Note: '-S #x' and '-S #s' 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).
.TP
\fB-P \fI#\fB, --padding=\fI#\fB\fR
Tell the encoder to write a PADDING metadata
block of the given length (in bytes) after the
STREAMINFO block.  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.  Note that the total length
of the PADDING block will be 4 bytes longer than
the length given because of the 4 metadata block
header bytes.  You can force no PADDING block at
all to be written with --no-padding.  The encoder
writes a PADDING block of 4096 bytes by default.
.TP
\fB-T \fIFIELD=VALUE\fB, --tag=\fIFIELD=VALUE\fB\fR
Add a Vorbis comment.  The comment must adhere
to the Vorbis comment spec; i.e. the FIELD must
contain only legal characters, terminated by an
\&'equals' sign.  Make sure to quote the comment if
necessary.  This option may appear more than once
to add several comments.  NOTE: all tags will be
added to all encoded files.
.TP
\fB-b \fI#\fB, --blocksize=\fI#\fB\fR
Specify the block size in samples.  The
default is 1152 for -l 0, else 4608; must be one of
192, 576, 1152, 2304, 4608, 256, 512, 1024, 2048,
4096, 8192, 16384, or 32768 (unless --lax is used)
.TP
\fB-m, --mid-side\fR
Try mid-side coding for each frame (stereo
input only)
.TP
\fB-M, --adaptive-mid-side\fR
Adaptive mid-side coding for all frames (stereo
input only)
.TP
\fB-0..-8, --compression-level-0..--compression-level-8\fR
Fastest compression..highest compression
(default is -5).  These are synonyms for other
options:
.RS
.TP
\fB-0, --compression-level-0\fR
Synonymous with -l 0 -b 1152 -r 2,2
.TP
\fB-1, --compression-level-1\fR
Synonymous with -l 0 -b 1152 -M -r 2,2
.TP
\fB-2, --compression-level-2\fR
Synonymous with -l 0 -b 1152 -m -r 3
.TP
\fB-3, --compression-level-3\fR
Synonymous with -l 6 -b 4608 -r 3,3
.TP
\fB-4, --compression-level-4\fR
Synonymous with -l 8 -b 4608 -M -r 3,3
.TP
\fB-5, --compression-level-5\fR
Synonymous with -l 8 -b 4608 -m -r 3,3
.TP
\fB-6, --compression-level-6\fR
Synonymous with -l 8 -b 4608 -m -r 4
.TP
\fB-7, --compression-level-7\fR
Synonymous with -l 8 -b 4608 -m -e -r 6
.TP
\fB-8, --compression-level-8\fR
Synonymous with -l 12 -b 4608 -m -e -r 6
.RE
.TP
\fB--fast\fR
Fastest compression.  Currently
synonymous with -0.
.TP
\fB--best\fR
Highest compression.  Currently
synonymous with -8.
.TP
\fB-e, --exhaustive-model-search\fR
Do exhaustive model search
(expensive!)
.TP
\fB-l \fI#\fB, --max-lpc-order=\fI#\fB\fR
Set the maximum LPC order; 0 means use only the fixed predictors
.TP
\fB-p, --qlp-coeff-precision-search\fR
Do exhaustive search of LP coefficient
quantization (expensive!).  Overrides -q;
does nothing if using -l 0
.TP
\fB-q \fI#\fB, --qlp-coeff-precision=\fI#\fB\fR
Precision of the quantized linear-predictor
coefficients, 0 => let encoder decide (min is 5,
default is 0)
.TP
\fB-r [\fI#\fB,]\fI#\fB, --rice-partition-order=[\fI#\fB,]\fI#\fB\fR
Set the [min,]max residual partition order
(0..16). min defaults to 0 if unspecified.  Default
is -r 3,3.
.SS "FORMAT OPTIONS"
.TP
\fB--endian={\fIbig\fB|\fIlittle\fB}\fR
Set the byte order for samples
.TP
\fB--channels=\fI#\fB\fR
Set number of channels.
.TP
\fB--bps=\fI#\fB\fR
Set bits per sample.
.TP
\fB--sample-rate=\fI#\fB\fR
Set sample rate (in Hz).
.TP
\fB--sign={\fIsigned\fB|\fIunsigned\fB}\fR
Set the sign of samples (the default is signed).
.TP
\fB--force-aiff-format\fR
Force the decoder to output AIFF format.  This option
is not needed if the output filename (as set by -o) ends
with \fI.aiff\fR.  Also, this option has no
effect when encoding since input AIFF is auto-detected.
.TP
\fB--force-raw-format\fR
Force input (when encoding) or output (when decoding)
to be treated as raw samples (even if filename ends
in \fI.wav\fR).
.SS "NEGATIVE OPTIONS"
.TP
\fB--no-adaptive-mid-side\fR
.TP
\fB--no-decode-through-errors\fR
.TP
\fB--no-delete-input-file\fR
.TP
\fB--no-exhaustive-model-search\fR
.TP
\fB--no-lax\fR
.TP
\fB--no-mid-side\fR
.TP
\fB--no-ogg\fR
.TP
\fB--no-padding\fR
.TP
\fB--no-qlp-coeff-precision-search\fR
.TP
\fB--no-residual-gnuplot\fR
.TP
\fB--no-residual-text\fR
.TP
\fB--no-sector-align\fR
.TP
\fB--no-seektable\fR
.TP
\fB--no-silent\fR
.TP
\fB--no-verify\fR
These flags can be used to invert the sense
of the corresponding normal option.
.SH "SEE ALSO"
.PP
metaflac(1).
.PP
The programs are documented fully by HTML format
documentation, available in
\fI/usr/share/doc/flac/html\fR on
Debian GNU/Linux systems.
.SH "AUTHOR"
.PP
This manual page was written by Matt Zimmerman <mdz@debian.org> for
the Debian GNU/Linux system (but may be used by others).
