blob: fc79bf2ebd6f103b97c336a82a312eea7c30e614 [file] [log] [blame]
Josh Coalsoneb7a8e42002-12-21 03:27:14 +00001.\" This manpage has been automatically generated by docbook2man
2.\" from a DocBook document. This tool can be found at:
3.\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>
4.\" Please send any bug reports, improvements, comments, patches,
5.\" etc. to Steve Cheng <steve@ggi-project.org>.
Josh Coalson26d92532005-02-03 04:19:15 +00006.TH "METAFLAC" "1" "02 February 2005" "" ""
Josh Coalsoneb7a8e42002-12-21 03:27:14 +00007.SH NAME
8metaflac \- program to list, add, remove, or edit metadata in one or more FLAC files.
9.SH SYNOPSIS
10
11\fBmetaflac\fR [ \fB\fIoptions\fB\fR ] [ \fB\fIoperations\fB\fR ] \fB\fIFLACfile\fB\fR\fI ...\fR
12
13.SH "DESCRIPTION"
14.PP
15Use \fBmetaflac\fR to list, add, remove, or edit
16metadata in one or more FLAC files. You may perform one major operation,
17or many shorthand operations at a time.
18.SH "OPTIONS"
19.TP
20\fB--preserve-modtime\fR
21Preserve the original modification time in spite of edits.
22.TP
23\fB--with-filename\fR
24Prefix each output line with the FLAC file name (the default if
25more than one FLAC file is specified).
26.TP
27\fB--no-filename\fR
28Do not prefix each output line with the FLAC file name (the default
29if only one FLAC file is specified).
30.TP
31\fB--dont-use-padding\fR
32By default metaflac tries to use padding where possible to avoid
33rewriting the entire file if the metadata size changes. Use this
34option to tell metaflac to not take advantage of padding this way.
35.SH "SHORTHAND OPERATIONS"
36.TP
37\fB--show-md5sum\fR
38Show the MD5 signature from the STREAMINFO block.
39.TP
40\fB--show-min-blocksize\fR
41Show the minimum block size from the STREAMINFO block.
42.TP
43\fB--show-max-blocksize\fR
44Show the maximum block size from the STREAMINFO block.
45.TP
46\fB--show-min-framesize\fR
47Show the minimum frame size from the STREAMINFO block.
48.TP
49\fB--show-max-framesize\fR
50Show the maximum frame size from the STREAMINFO block.
51.TP
52\fB--show-sample-rate\fR
53Show the sample rate from the STREAMINFO block.
54.TP
55\fB--show-channels\fR
56Show the number of channels from the STREAMINFO block.
57.TP
58\fB--show-bps\fR
59Show the # of bits per sample from the STREAMINFO block.
60.TP
61\fB--show-total-samples\fR
62Show the total # of samples from the STREAMINFO block.
63.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000064\fB--show-vendor-tag\fR
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000065Show the vendor string from the VORBIS_COMMENT block.
66.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000067\fB--show-tag=name\fR
68Show all tags where the the field name matches 'name'.
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000069.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000070\fB--remove-tag=name\fR
71Remove all tags whose field name is 'name'.
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000072.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000073\fB--remove-first-tag=name\fR
74Remove first tag whose field name is 'name'.
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000075.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000076\fB--remove-all-tags\fR
77Remove all tags, leaving only the vendor string.
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000078.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000079\fB--set-tag=field\fR
80Add a tag. The field must comply with the
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000081Vorbis comment spec, of the form "NAME=VALUE". If there is
Josh Coalson41b22d52004-09-15 00:52:48 +000082currently no tag block, one will be created.
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000083.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000084\fB--import-tags-from=file\fR
85Import tags from a file. Use '-' for stdin. Each
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000086line should be of the form NAME=VALUE. Multi-line comments
Josh Coalson41b22d52004-09-15 00:52:48 +000087are currently not supported. Specify --remove-all-tags and/or
88--no-utf8-convert before --import-tags-from if necessary.
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000089.TP
Josh Coalson41b22d52004-09-15 00:52:48 +000090\fB--export-tags-to=file\fR
91Export tags to a file. Use '-' for stdin. Each
Josh Coalsoneb7a8e42002-12-21 03:27:14 +000092line will be of the form NAME=VALUE. Specify
93--no-utf8-convert if necessary.
94.TP
95\fB--import-cuesheet-from=file\fR
Josh Coalson91ccea92005-02-02 04:35:49 +000096Import a cuesheet from a file. Use '-' for stdin. Only one
97FLAC file may be specified. A seekpoint will be added for each
98index point in the cuesheet to the SEEKTABLE unless
99--no-cued-seekpoints is specified.
Josh Coalsoneb7a8e42002-12-21 03:27:14 +0000100.TP
101\fB--export-cuesheet-to=file\fR
102Export CUESHEET block to a cuesheet file, suitable for use by
Josh Coalson91ccea92005-02-02 04:35:49 +0000103CD authoring software. Use '-' for stdout. Only one FLAC file
Josh Coalsoneb7a8e42002-12-21 03:27:14 +0000104may be specified on the command line.
105.TP
106\fB--add-replay-gain\fR
107Calculates the title and album gains/peaks of the given FLAC
108files as if all the files were part of one album, then stores
109them in the VORBIS_COMMENT block. The tags are the same as
110those used by vorbisgain. Existing ReplayGain tags will be
111replaced. If only one FLAC file is given, the album and title
112gains will be the same. Since this operation requires two
113passes, it is always executed last, after all other operations
114have been completed and written to disk. All FLAC files
115specified must have the same resolution, sample rate, and
116number of channels. The sample rate must be one of 8, 11.025,
11712, 16, 22.05, 24, 32, 44.1, or 48 kHz.
118.TP
119\fB--add-seekpoint={\fI#\fB|\fIX\fB|\fI#x\fB|\fI#s\fB}\fR
120Add seek points to a SEEKTABLE block. Using #, a seek point at
121that sample number is added. Using X, a placeholder point is
122added at the end of a the table. Using #x, # evenly spaced seek
123points will be added, the first being at sample 0. Using #s, a
124seekpoint will be added every # seconds (# does not have to be a
125whole number; it can be, for example, 9.5, meaning a seekpoint
126every 9.5 seconds). If no SEEKTABLE block exists, one will be
127created. If one already exists, points will be added to the
128existing table, and any duplicates will be turned into placeholder
129points. You may use many --add-seekpoint options; the resulting
130SEEKTABLE will be the unique-ified union of all such values.
131Example: --add-seekpoint=100x --add-seekpoint=3.5s will add 100
132evenly spaced seekpoints and a seekpoint every 3.5 seconds.
133.TP
134\fB--add-padding=length\fR
135Add a padding block of the given length (in bytes). The overall
136length of the new block will be 4 + length; the extra 4 bytes is
137for the metadata block header.
138.SH "MAJOR OPERATIONS"
139.TP
140\fB--list\fR
141List the contents of one or more metadata blocks to stdout. By
142default, all metadata blocks are listed in text format. Use the
143following options to change this behavior:
144.RS
145.TP
146\fB--block-number=#[,#[...]]\fR
147An optional comma-separated list of block numbers to display.
148The first block, the STREAMINFO block, is block 0.
149.TP
150\fB--block-type=type[,type[...]]\fR
151.TP
152\fB--except-block-type=type[,type[...]]\fR
Josh Coalson91ccea92005-02-02 04:35:49 +0000153An optional comma-separated list of block types to be included
Josh Coalsoneb7a8e42002-12-21 03:27:14 +0000154or ignored with this option. Use only one of --block-type or
155--except-block-type. The valid block types are: STREAMINFO,
156PADDING, APPLICATION, SEEKTABLE, VORBIS_COMMENT. You may
157narrow down the types of APPLICATION blocks displayed as
158follows:
159
160APPLICATION:abcd The APPLICATION block(s) whose textual repre-
161sentation of the 4-byte ID is "abcd"
162APPLICATION:0xXXXXXXXX The APPLICATION block(s) whose hexadecimal big-
163endian representation of the 4-byte ID is
164"0xXXXXXXXX". For the example "abcd" above the
165hexadecimal equivalalent is 0x61626364
166.sp
167.RS
168.B "Note:"
169if both --block-number and --[except-]block-type are
170specified, the result is the logical AND of both
171arguments.
172.RE
173.TP
174\fB--application-data-format=hexdump|text\fR
175If the application block you are displaying contains binary
176data but your --data-format=text, you can display a hex dump
177of the application data contents instead using
178--application-data-format=hexdump.
179.RE
180.TP
181\fB--remove\fR
182Remove one or more metadata blocks from the metadata. Unless
183--dont-use-padding is specified, the blocks will be replaced with
184padding. You may not remove the STREAMINFO block.
185.RS
186.TP
187\fB--block-number=#[,#[...]]\fR
188.TP
189\fB--block-type=type[,type[...]]\fR
190.TP
191\fB--except-block-type=type[,type[...]]\fR
192See --list above for usage.
193.sp
194.RS
195.B "Note:"
196if both --block-number and --[except-]block-type are
197specified, the result is the logical AND of both arguments.
198.RE
199.RE
200.TP
201\fB--remove-all\fR
202Remove all metadata blocks (except the STREAMINFO block) from the
203metadata. Unless --dont-use-padding is specified, the blocks will
204be replaced with padding.
205.TP
206\fB--merge-padding\fR
207Merge adjacent PADDING blocks into single blocks.
208.TP
209\fB--sort-padding\fR
210Move all PADDING blocks to the end of the metadata and merge them
211into a single block.
212.SH "SEE ALSO"
213.PP
214flac(1).