FLAC(1) FLAC(1)
NAME
flac - Free Lossless Audio Codec
SYNOPSIS
flac [ OPTION ] infile ...
DESCRIPTION
This manual page documents briefly the flac command.
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.
OPTIONS
A summary of options is included below. For a complete description,
see the HTML documentation.
GENERAL OPTIONS
-v, --version
Show the flac version number
-h, --help
Show basic usage and a list of all options
-H, --explain
Show detailed explanation of usage and all options
-d, --decode
Decode (the default behavior is to encode)
-t, --test
Test a flac encoded file (same as -d except no decoded file is
written)
-a, --analyze
Analyze a flac encoded file (same as -d except an analysis file
is written)
-c, --stdout
Write output to stdout
-s, --silent
Silent mode (do not write runtime encode/decode statistics to
stderr)
-o filename, --output-name=filename
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.
--output-prefix=string
Prefix each output file name with the given string. This can
be useful for encoding or decoding files to a different direc-
tory. Make sure if your string is a path name that it ends
with a trailing '/' (slash).
--delete-input-file
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.
--skip={#|mm:ss.ss}
Skip over the first number of samples of the input. This works
for both encoding and decoding, but not testing. The alterna-
tive form mm:ss.ss can be used to specify minutes, seconds, and
fractions of a second.
--until={#|[+|-]mm:ss.ss}
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, sec-
onds, 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.
--ogg 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'.
--serial-number=#
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.
ANALYSIS OPTIONS
--residual-text
Includes the residual signal in the analysis file. This will
make the file very big, much larger than even the decoded file.
--residual-gnuplot
Generates a gnuplot file for every subframe; each file will
contain the residual distribution of the subframe. This will
create a lot of files.
DECODING OPTIONS
-F, --decode-through-errors
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 decod-
ing to completion. Note that errors may cause the decoded
audio to be missing some samples or have silent sections.
ENCODING OPTIONS
-V, --verify
Verify a correct encoding by decoding the output in parallel
and comparing to the original
--lax Allow encoder to generate non-Subset files.
--replay-gain
Calculate ReplayGain values and store in Vorbis comments, simi-
lar 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).
--cuesheet=filename
Import the given cuesheet file and store it in a CUESHEET meta-
data block. This option may only be used when encoding a sin-
gle file. A seekpoint will be added for each index point in
the cuesheet to the SEEKTABLE unless --no-cued-seekpoints is
specified.
--sector-align
Align encoding of multiple CD format WAVE files on sector
boundaries. See the HTML documentation for more information.
-S {#|X|#x|#s}, --seekpoint={#|X|#x|#s}
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).
-P #, --padding=#
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.
-T FIELD=VALUE, --tag=FIELD=VALUE
Add a Vorbis comment. The comment must adhere to the Vorbis
comment spec; i.e. the FIELD must contain only legal charac-
ters, 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.
-b #, --blocksize=#
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)
-m, --mid-side
Try mid-side coding for each frame (stereo input only)
-M, --adaptive-mid-side
Adaptive mid-side coding for all frames (stereo input only)
-0..-8, --compression-level-0..--compression-level-8
Fastest compression..highest compression (default is -5).
These are synonyms for other options:
-0, --compression-level-0
Synonymous with -l 0 -b 1152 -r 2,2
-1, --compression-level-1
Synonymous with -l 0 -b 1152 -M -r 2,2
-2, --compression-level-2
Synonymous with -l 0 -b 1152 -m -r 3
-3, --compression-level-3
Synonymous with -l 6 -b 4608 -r 3,3
-4, --compression-level-4
Synonymous with -l 8 -b 4608 -M -r 3,3
-5, --compression-level-5
Synonymous with -l 8 -b 4608 -m -r 3,3
-6, --compression-level-6
Synonymous with -l 8 -b 4608 -m -r 4
-7, --compression-level-7
Synonymous with -l 8 -b 4608 -m -e -r 6
-8, --compression-level-8
Synonymous with -l 12 -b 4608 -m -e -r 6
--fast Fastest compression. Currently synonymous with -0.
--best Highest compression. Currently synonymous with -8.
-e, --exhaustive-model-search
Do exhaustive model search (expensive!)
-l #, --max-lpc-order=#
Set the maximum LPC order; 0 means use only the fixed predic-
tors
-p, --qlp-coeff-precision-search
Do exhaustive search of LP coefficient quantization (expen-
sive!). Overrides -q; does nothing if using -l 0
-q #, --qlp-coeff-precision=#
Precision of the quantized linear-predictor coefficients, 0 =>
let encoder decide (min is 5, default is 0)
-r [#,]#, --rice-partition-order=[#,]#
Set the [min,]max residual partition order (0..16). min
defaults to 0 if unspecified. Default is -r 3,3.
FORMAT OPTIONS
--endian={big|little}
Set the byte order for samples
--channels=#
Set number of channels.
--bps=#
Set bits per sample.
--sample-rate=#
Set sample rate (in Hz).
--sign={signed|unsigned}
Set the sign of samples (the default is signed).
--force-aiff-format
Force the decoder to output AIFF format. This option is not
needed if the output filename (as set by -o) ends with .aiff.
Also, this option has no effect when encoding since input AIFF
is auto-detected.
--force-raw-format
Force input (when encoding) or output (when decoding) to be
treated as raw samples (even if filename ends in .wav).
NEGATIVE OPTIONS
--no-adaptive-mid-side
--no-decode-through-errors
--no-delete-input-file
--no-exhaustive-model-search
--no-lax
--no-mid-side
--no-ogg
--no-padding
--no-qlp-coeff-precision-search
--no-residual-gnuplot
--no-residual-text
--no-sector-align
--no-seektable
--no-silent
--no-verify
These flags can be used to invert the sense of the correspond-
ing normal option.
SEE ALSO
metaflac(1).
The programs are documented fully by HTML format documentation, avail-
able in /usr/share/doc/flac/html on Debian GNU/Linux systems.
AUTHOR
This manual page was written by Matt Zimmerman for
the Debian GNU/Linux system (but may be used by others).
10 January 2003 FLAC(1)
UNIX/Linux commands referenced on this page:
- file
- as
- write
- at
- make
- size
- more
- raw