mirror of https://github.com/xiph/flac
305 lines
11 KiB
Groff
305 lines
11 KiB
Groff
.\" 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 "METAFLAC" "1" "2013/04/30" "" ""
|
|
|
|
.SH NAME
|
|
metaflac \- program to list, add, remove, or edit metadata in one or more FLAC files.
|
|
.SH SYNOPSIS
|
|
|
|
\fBmetaflac\fR [ \fB\fIoptions\fB\fR ] [ \fB\fIoperations\fB\fR ] \fB\fIFLACfile\fB\fR\fI ...\fR
|
|
|
|
.SH "DESCRIPTION"
|
|
.PP
|
|
Use \fBmetaflac\fR to list, add, remove, or edit
|
|
metadata in one or more FLAC files. You may perform one major operation,
|
|
or many shorthand operations at a time.
|
|
.SH "OPTIONS"
|
|
.TP
|
|
\fB--preserve-modtime\fR
|
|
Preserve the original modification time in spite of edits.
|
|
.TP
|
|
\fB--with-filename\fR
|
|
Prefix each output line with the FLAC file name (the default if
|
|
more than one FLAC file is specified).
|
|
.TP
|
|
\fB--no-filename\fR
|
|
Do not prefix each output line with the FLAC file name (the default
|
|
if only one FLAC file is specified).
|
|
.TP
|
|
\fB--no-utf8-convert\fR
|
|
Do not convert tags from UTF-8 to local charset, or vice versa. This is
|
|
useful for scripts, and setting tags in situations where the locale is wrong.
|
|
.TP
|
|
\fB--dont-use-padding\fR
|
|
By default metaflac tries to use padding where possible to avoid
|
|
rewriting the entire file if the metadata size changes. Use this
|
|
option to tell metaflac to not take advantage of padding this way.
|
|
.SH "SHORTHAND OPERATIONS"
|
|
.TP
|
|
\fB--show-md5sum\fR
|
|
Show the MD5 signature from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-min-blocksize\fR
|
|
Show the minimum block size from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-max-blocksize\fR
|
|
Show the maximum block size from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-min-framesize\fR
|
|
Show the minimum frame size from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-max-framesize\fR
|
|
Show the maximum frame size from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-sample-rate\fR
|
|
Show the sample rate from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-channels\fR
|
|
Show the number of channels from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-bps\fR
|
|
Show the # of bits per sample from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-total-samples\fR
|
|
Show the total # of samples from the STREAMINFO block.
|
|
.TP
|
|
\fB--show-vendor-tag\fR
|
|
Show the vendor string from the VORBIS_COMMENT block.
|
|
.TP
|
|
\fB--show-tag=name\fR
|
|
Show all tags where the field name matches 'name'.
|
|
.TP
|
|
\fB--remove-tag=name\fR
|
|
Remove all tags whose field name is 'name'.
|
|
.TP
|
|
\fB--remove-first-tag=name\fR
|
|
Remove first tag whose field name is 'name'.
|
|
.TP
|
|
\fB--remove-all-tags\fR
|
|
Remove all tags, leaving only the vendor string.
|
|
.TP
|
|
\fB--set-tag=field\fR
|
|
Add a tag. The field must comply with the
|
|
Vorbis comment spec, of the form "NAME=VALUE". If there is
|
|
currently no tag block, one will be created.
|
|
.TP
|
|
\fB--set-tag-from-file=field\fR
|
|
Like --set-tag, except the VALUE is a filename whose
|
|
contents will be read verbatim to set the tag value.
|
|
Unless --no-utf8-convert is specified, the contents will be
|
|
converted to UTF-8 from the local charset. This can be used
|
|
to store a cuesheet in a tag (e.g.
|
|
--set-tag-from-file="CUESHEET=image.cue"). Do not try to
|
|
store binary data in tag fields! Use APPLICATION blocks for
|
|
that.
|
|
.TP
|
|
\fB--import-tags-from=file\fR
|
|
Import tags from a file. Use '-' for stdin. Each
|
|
line should be of the form NAME=VALUE. Multi-line comments
|
|
are currently not supported. Specify --remove-all-tags and/or
|
|
--no-utf8-convert before --import-tags-from if necessary. If
|
|
FILE is '-' (stdin), only one FLAC file may be specified.
|
|
.TP
|
|
\fB--export-tags-to=file\fR
|
|
Export tags to a file. Use '-' for stdout. Each
|
|
line will be of the form NAME=VALUE. Specify
|
|
--no-utf8-convert if necessary.
|
|
.TP
|
|
\fB--import-cuesheet-from=file\fR
|
|
Import a cuesheet from a file. Use '-' for stdin. Only one
|
|
FLAC file may be specified. A seekpoint will be added for each
|
|
index point in the cuesheet to the SEEKTABLE unless
|
|
--no-cued-seekpoints is specified.
|
|
.TP
|
|
\fB--export-cuesheet-to=file\fR
|
|
Export CUESHEET block to a cuesheet file, suitable for use by
|
|
CD authoring software. Use '-' for stdout. Only one FLAC file
|
|
may be specified on the command line.
|
|
.TP
|
|
\fB--import-picture-from={\fIFILENAME\fB|\fISPECIFICATION\fB}\fR
|
|
Import a picture and store it in a PICTURE metadata block. More than one --import-picture-from command can be specified. Either a filename for the picture file or a more complete specification form can be used. The SPECIFICATION is a string whose parts are separated by | (pipe) characters. Some parts may be left empty to invoke default values. FILENAME is just shorthand for "||||FILENAME". The format of SPECIFICATION is
|
|
|
|
[TYPE]|[MIME-TYPE]|[DESCRIPTION]|[WIDTHxHEIGHTxDEPTH[/COLORS]]|FILE
|
|
|
|
TYPE is optional; it is a number from one of:
|
|
|
|
0: Other
|
|
|
|
1: 32x32 pixels 'file icon' (PNG only)
|
|
|
|
2: Other file icon
|
|
|
|
3: Cover (front)
|
|
|
|
4: Cover (back)
|
|
|
|
5: Leaflet page
|
|
|
|
6: Media (e.g. label side of CD)
|
|
|
|
7: Lead artist/lead performer/soloist
|
|
|
|
8: Artist/performer
|
|
|
|
9: Conductor
|
|
|
|
10: Band/Orchestra
|
|
|
|
11: Composer
|
|
|
|
12: Lyricist/text writer
|
|
|
|
13: Recording Location
|
|
|
|
14: During recording
|
|
|
|
15: During performance
|
|
|
|
16: Movie/video screen capture
|
|
|
|
17: A bright coloured fish
|
|
|
|
18: Illustration
|
|
|
|
19: Band/artist logotype
|
|
|
|
20: Publisher/Studio logotype
|
|
|
|
The default is 3 (front cover). There may only be one picture each of type 1 and 2 in a file.
|
|
|
|
MIME-TYPE is optional; if left blank, it will be detected from the file. For best compatibility with players, use pictures with MIME type image/jpeg or image/png. The MIME type can also be --> to mean that FILE is actually a URL to an image, though this use is discouraged.
|
|
|
|
DESCRIPTION is optional; the default is an empty string.
|
|
|
|
The next part specifies the resolution and color information. If the MIME-TYPE is image/jpeg, image/png, or image/gif, you can usually leave this empty and they can be detected from the file. Otherwise, you must specify the width in pixels, height in pixels, and color depth in bits-per-pixel. If the image has indexed colors you should also specify the number of colors used. When manually specified, it is not checked against the file for accuracy.
|
|
|
|
FILE is the path to the picture file to be imported, or the URL if MIME type is -->
|
|
|
|
For example, "|image/jpeg|||../cover.jpg" will embed the JPEG file at ../cover.jpg, defaulting to type 3 (front cover) and an empty description. The resolution and color info will be retrieved from the file itself.
|
|
|
|
The specification "4|-->|CD|320x300x24/173|http://blah.blah/backcover.tiff" will embed the given URL, with type 4 (back cover), description "CD", and a manually specified resolution of 320x300, 24 bits-per-pixel, and 173 colors. The file at the URL will not be fetched; the URL itself is stored in the PICTURE metadata block.
|
|
.TP
|
|
\fB--export-picture-to=file\fR
|
|
Export PICTURE block to a file. Use '-' for stdout. Only one FLAC file may be specified on the command line. The first PICTURE block will be exported unless --export-picture-to is preceded by a --block-number=# option to specify the exact metadata block to extract. Note that the block number is the one shown by --list.
|
|
.TP
|
|
\fB--add-replay-gain\fR
|
|
Calculates the title and album gains/peaks of the given FLAC
|
|
files as if all the files were part of one album, then stores
|
|
them as FLAC tags. The tags are the same as
|
|
those used by vorbisgain. Existing ReplayGain tags will be
|
|
replaced. If only one FLAC file is given, the album and title
|
|
gains will be the same. Since this operation requires two
|
|
passes, it is always executed last, after all other operations
|
|
have been completed and written to disk. All FLAC files
|
|
specified must have the same resolution, sample rate, and
|
|
number of channels. The sample rate must be one of 8, 11.025,
|
|
12, 16, 18.9, 22.05, 24, 28, 32, 37.8, 44.1, 48, 56, 64, 88.2,
|
|
96, 112, 128, 144, 176.4, or 192kHz.
|
|
.TP
|
|
\fB--scan-replay-gain\fR
|
|
Like --add-replay-gain, but only analyzes the files rather
|
|
than writing them to the tags.
|
|
.TP
|
|
\fB--remove-replay-gain\fR
|
|
Removes the ReplayGain tags.
|
|
.TP
|
|
\fB--add-seekpoint={\fI#\fB|\fIX\fB|\fI#x\fB|\fI#s\fB}\fR
|
|
Add seek points to a SEEKTABLE block. 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). If no SEEKTABLE block exists, one will be
|
|
created. If one already exists, points will be added to the
|
|
existing table, and any duplicates will be turned into placeholder
|
|
points. You may use many --add-seekpoint options; the resulting
|
|
SEEKTABLE will be the unique-ified union of all such values.
|
|
Example: --add-seekpoint=100x --add-seekpoint=3.5s will add 100
|
|
evenly spaced seekpoints and a seekpoint every 3.5 seconds.
|
|
.TP
|
|
\fB--add-padding=length\fR
|
|
Add a padding block of the given length (in bytes). The overall
|
|
length of the new block will be 4 + length; the extra 4 bytes is
|
|
for the metadata block header.
|
|
.SH "MAJOR OPERATIONS"
|
|
.TP
|
|
\fB--list\fR
|
|
List the contents of one or more metadata blocks to stdout. By
|
|
default, all metadata blocks are listed in text format. Use the
|
|
following options to change this behavior:
|
|
.RS
|
|
.TP
|
|
\fB--block-number=#[,#[...]]\fR
|
|
An optional comma-separated list of block numbers to display.
|
|
The first block, the STREAMINFO block, is block 0.
|
|
.TP
|
|
\fB--block-type=type[,type[...]]\fR
|
|
.TP
|
|
\fB--except-block-type=type[,type[...]]\fR
|
|
An optional comma-separated list of block types to be included
|
|
or ignored with this option. Use only one of --block-type or
|
|
--except-block-type. The valid block types are: STREAMINFO,
|
|
PADDING, APPLICATION, SEEKTABLE, VORBIS_COMMENT, PICTURE. You
|
|
may narrow down the types of APPLICATION blocks displayed as
|
|
follows:
|
|
|
|
APPLICATION:abcd The APPLICATION block(s) whose textual repre-
|
|
sentation of the 4-byte ID is "abcd"
|
|
APPLICATION:0xXXXXXXXX The APPLICATION block(s) whose hexadecimal big-
|
|
endian representation of the 4-byte ID is
|
|
"0xXXXXXXXX". For the example "abcd" above the
|
|
hexadecimal equivalalent is 0x61626364
|
|
.sp
|
|
.RS
|
|
.B "Note:"
|
|
if both --block-number and --[except-]block-type are
|
|
specified, the result is the logical AND of both
|
|
arguments.
|
|
.RE
|
|
.TP
|
|
\fB--application-data-format=hexdump|text\fR
|
|
If the application block you are displaying contains binary
|
|
data but your --data-format=text, you can display a hex dump
|
|
of the application data contents instead using
|
|
--application-data-format=hexdump.
|
|
.RE
|
|
.TP
|
|
\fB--remove\fR
|
|
Remove one or more metadata blocks from the metadata. Unless
|
|
--dont-use-padding is specified, the blocks will be replaced with
|
|
padding. You may not remove the STREAMINFO block.
|
|
.RS
|
|
.TP
|
|
\fB--block-number=#[,#[...]]\fR
|
|
.TP
|
|
\fB--block-type=type[,type[...]]\fR
|
|
.TP
|
|
\fB--except-block-type=type[,type[...]]\fR
|
|
See --list above for usage.
|
|
.sp
|
|
.RS
|
|
.B "Note:"
|
|
if both --block-number and --[except-]block-type are
|
|
specified, the result is the logical AND of both arguments.
|
|
.RE
|
|
.RE
|
|
.TP
|
|
\fB--remove-all\fR
|
|
Remove all metadata blocks (except the STREAMINFO block) from the
|
|
metadata. Unless --dont-use-padding is specified, the blocks will
|
|
be replaced with padding.
|
|
.TP
|
|
\fB--merge-padding\fR
|
|
Merge adjacent PADDING blocks into single blocks.
|
|
.TP
|
|
\fB--sort-padding\fR
|
|
Move all PADDING blocks to the end of the metadata and merge them
|
|
into a single block.
|
|
.SH "SEE ALSO"
|
|
.PP
|
|
flac(1).
|