


METAFLAC(1)                                           METAFLAC(1)


NAME
       metaflac  - program to list, add, remove, or edit metadata
       in one or more FLAC files.

SYNOPSIS
       metaflac [ options ] [ operations ] FLACfile ...


DESCRIPTION
       Use metaflac 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.

OPTIONS
       --preserve-modtime
              Preserve the original modification time in spite of
              edits.

       --with-filename
              Prefix  each  output  line  with the FLAC file name
              (the default if more than one FLAC file  is  speci-
              fied).

       --no-filename
              Do  not  prefix each output line with the FLAC file
              name (the default if only one FLAC file  is  speci-
              fied).

       --dont-use-padding
              By default metaflac tries to use padding where pos-
              sible 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.

SHORTHAND OPERATIONS
       --show-md5sum
              Show the MD5 signature from the STREAMINFO block.

       --show-min-blocksize
              Show  the  minimum  block  size from the STREAMINFO
              block.

       --show-max-blocksize
              Show the maximum block  size  from  the  STREAMINFO
              block.

       --show-min-framesize
              Show  the  minimum  frame  size from the STREAMINFO
              block.

       --show-max-framesize
              Show the maximum frame  size  from  the  STREAMINFO
              block.




                         02 February 2005                       1





METAFLAC(1)                                           METAFLAC(1)


       --show-sample-rate
              Show the sample rate from the STREAMINFO block.

       --show-channels
              Show  the  number  of  channels from the STREAMINFO
              block.

       --show-bps
              Show the # of bits per sample from  the  STREAMINFO
              block.

       --show-total-samples
              Show  the  total  #  of samples from the STREAMINFO
              block.

       --show-vendor-tag
              Show the  vendor  string  from  the  VORBIS_COMMENT
              block.

       --show-tag=name
              Show  all  tags  where  the  the field name matches
              'name'.

       --remove-tag=name
              Remove all tags whose field name is 'name'.

       --remove-first-tag=name
              Remove first tag whose field name is 'name'.

       --remove-all-tags
              Remove all tags, leaving only the vendor string.

       --set-tag=field
              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.

       --import-tags-from=file
              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.

       --export-tags-to=file
              Export tags to a file.  Use '-'  for  stdin.   Each
              line will be of the form NAME=VALUE.  Specify --no-
              utf8-convert if necessary.

       --import-cuesheet-from=file
              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



                         02 February 2005                       2





METAFLAC(1)                                           METAFLAC(1)


              specified.

       --export-cuesheet-to=file
              Export CUESHEET block to a cuesheet file,  suitable
              for use by CD authoring software.  Use '-' for std-
              out.  Only one FLAC file may be  specified  on  the
              command line.

       --add-replay-gain
              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 in the VORBIS_COMMENT
              block.  The tags are the same as those used by vor-
              bisgain.    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  exe-
              cuted  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, 22.05, 24, 32, 44.1,
              or 48 kHz.

       --add-seekpoint={#|X|#x|#s}
              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.  Exam-
              ple: --add-seekpoint=100x --add-seekpoint=3.5s will
              add  100  evenly  spaced seekpoints and a seekpoint
              every 3.5 seconds.

       --add-padding=length
              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.

MAJOR OPERATIONS
       --list 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:



                         02 February 2005                       3





METAFLAC(1)                                           METAFLAC(1)


              --block-number=#[,#[...]]
                     An optional comma-separated  list  of  block
                     numbers  to  display.   The first block, the
                     STREAMINFO block, is block 0.

              --block-type=type[,type[...]]

              --except-block-type=type[,type[...]]
                     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, SEEK-
                     TABLE,  VORBIS_COMMENT.  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"   APPLICA-
                     TION:0xXXXXXXXX   The  APPLICATION  block(s)
                     whose hexadecimal big- endian representation
                     of the 4-byte ID is "0xXXXXXXXX".   For  the
                     example  "abcd" above the hexadecimal equiv-
                     alalent is 0x61626364

                     Note:    if    both    --block-number    and
                     --[except-]block-type   are  specified,  the
                     result is the logical AND of both arguments.

              --application-data-format=hexdump|text
                     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.

       --remove
              Remove  one  or more metadata blocks from the meta-
              data.  Unless --dont-use-padding is specified,  the
              blocks  will be replaced with padding.  You may not
              remove the STREAMINFO block.

              --block-number=#[,#[...]]

              --block-type=type[,type[...]]

              --except-block-type=type[,type[...]]
                     See --list above for usage.

                     Note:    if    both    --block-number    and
                     --[except-]block-type   are  specified,  the
                     result is the logical AND of both arguments.




                         02 February 2005                       4





METAFLAC(1)                                           METAFLAC(1)


       --remove-all
              Remove  all  metadata blocks (except the STREAMINFO
              block)  from  the  metadata.   Unless   --dont-use-
              padding  is  specified, the blocks will be replaced
              with padding.

       --merge-padding
              Merge adjacent PADDING blocks into single blocks.

       --sort-padding
              Move all PADDING blocks to the end of the  metadata
              and merge them into a single block.

SEE ALSO
       flac(1).










































                         02 February 2005                       5


