Provided by: mp3info_0.8.5a+dfsg-1_amd64 bug

NAME

       mp3info - MP3 technical info viewer and ID3 tag editor

SYNOPSIS

       mp3info [ -h | -G ]

       mp3info [-x] [-F] [-r a|m|v] [-p FORMAT_STRING] file...

       mp3info [-d] file...

       mp3info  [-i]  [-t  title]  [-a  artist]  [-l album] [-y year] [-c comment] [-n track] [-g
       genre] file...

DESCRIPTION

       mp3info is a utility used to read and modify the ID3 tags in MPEG layer 3 (MP3) files.  It
       can also (optionally) display various technical attributes of the MP3 file.

OPTIONS

       -a artist
              Specify ID3 artist name

       -c comment
              Specify ID3 comment

       -g genre
              Specify  ID3  genre  (use  -G  option for a list of valid genres).  You may specify
              either a genre name or a number.

       -l album
              Specify ID3 album name

       -n track
              Specify ID3 v1.1 track number

       -t title
              Specify ID3 track title

       -y year
              Specify ID3 copyright year

       -G     Display a list of valid genres and their associated numeric codes.  These  are  the
              only values accepted by the -g switch.

       -h     Display a help page

       -x     Display technical attributes of the MP3 file

       -r a|m|v
              Report  bit  rate of Variable Bit Rate (VBR) files as one of the following (See the
              section below entitled Bit Rates for more information):

              a - Average bit rate [float](Note: this option also causes the bit rates of non-VBR
                     files to be displayed as floating point values).
              m - Median bit rate [integer]
              v - Simply use the word 'Variable' [string] (this is the default).

       -i     Edit ID3 tag interactively (uses curses/ncurses functions)

       -d     Delete ID3 tag (if one exists)

       -f     Force Mode: Treat all files as MP3s even if MP3 frames can't be found

       -F     Do  a  Full  scan  for  technical information (see the section Speed Considerations
              below for more information)

       -p "FORMAT_STRING"

              Print MP3 attributes according to FORMAT_STRING.  FORMAT_STRING  is  similar  to  a
              printf(3)  format  string  in  that it is printed verbatim except for the following
              conversions and escape sequences. Any conversion specifier may  optionally  include
              the  various alignment, precision, and field width modifiers accepted by printf(3).
              See the EXAMPLES section below for examples of  how  format  strings  are  used  in
              mp3info.

              Conversion Specifiers

                 %f     Filename without the path [string]
                 %F     Filename with the path [string]
                 %k     File size in KB [integer]
                 %a     Artist [string]
                 %c     Comment [string]
                 %g     Musical genre [string]
                 %G     Musical genre number [integer]
                 %l     Album name [string]
                 %n     Track [integer]
                 %t     Track Title [string]
                 %y     Year [string]
                 %C     Copyright flag [string]
                 %e     Emphasis [string]
                 %E     CRC Error protection [string]
                 %L     MPEG Layer [string]
                 %O     Original material flag [string]
                 %o     Stereo/mono mode [string]
                 %p     Padding [string]
                 %v     MPEG Version [float]
                 %u     Number of good audio frames [integer]
                 %b     Number of corrupt audio frames [integer]
                 %Q     Sampling frequency in Hz [integer]
                 %q     Sampling frequency in kHz [integer]
                 %r     Bit Rate in kbps (type and meaning affected by -r option)
                 %m     Playing time: minutes only [integer]
                 %s     Playing  time:  seconds  only [integer] (usually used in conjunction with
                        %m)
                 %S     Total playing time in seconds [integer]
                 %%     A single percent sign

              Escape Sequences

                 \n     Newline
                 \t     Horizontal tab
                 \v     Vertical tab
                 \b     Backspace
                 \r     Carriage Return
                 \f     Form Feed
                 \a     Audible Alert (terminal bell)
                 \xhh   Any arbitrary character specified by the hexadecimal number hh
                 \ooo   Any arbitrary character specified by the octal number ooo
                 \\     A single backslash character

USAGE

       Specifying MP3 files without any other options displays the existing ID3 tag (if any).

       Specifying a track number of 0 reverts an ID3 tag to 1.0 format

       Non-specified ID3 fields, if existent, will remain unchanged.

       Genres can be specified as numbers or names: -g 17 same as -g Rock

       Multiple word fields must be enclosed in quotes (eg: -t "A title")

NOTES

       Speed Considerations
              In order to determine certain technical attributes (playing time, number of frames,
              number  of bad frames, and in a few cases the bit rate) with absolute certainty, it
              would be necessary to read the entire MP3 file.  Mp3info normally  tries  to  speed
              things  up  by  reading  a  handful  of  frames from various points in the file and
              estimating the statistics for  the  rest  of  the  file  based  on  those  samples.
              Usually,  this results in very accurate estimates.  Audio playing times are usually
              off by no more than a second, and the number of frames is off by  less  than  0.1%.
              Often  the estimates agree exactly with the full scans.  Nevertheless, the user may
              wish to ensure that she is getting exact information.

              One should specify the -F switch if one wants mp3info to read the entire  MP3  file
              when  determining  this  information.   Note  that  a  full  scan  will only affect
              mp3info's output if the -x switch  is  used  or  the  -p  switch  is  used  with  a
              FORMAT_SPECIFIER  containing  %m,  %s,  %S, %u or (rarely) %r.  Using the -F switch
              under  other  conditions  will  only  slow  down  mp3info.   Also   note   that   a
              FORMAT_SPECIFIER  containing %b or a VBR MP3 file will automatically trigger a full
              scan even if the -F switch is not used.

              Several users have noted that the %u specifier used alone:

              mp3info -p "%u" song.mp3

              sometimes gives a different number of good  frames  than  when  used  with  the  %b
              specifier:

              mp3info -p "%u %b" song.mp3

              This  is  because  when  you use %u by itself, mp3info only estimates the number of
              frames based on the bitrate and the  size  of  the  file.   When  you  use  the  %b
              specifier,  you  force  mp3info  to  do a full scan of the file which guarantees an
              accurate count of both the good and bad  frames.   If  you  want  to  guarantee  an
              accurate count of the number of good frames when using %u by itself, you should use
              the -F option.

       Bit Rates
              MP3 files are made up of  many  (usually  several  thousand)  audio  blocks  called
              'frames'.   Each  of  these  frames  is  encoded  at  a  specific  'bit rate' which
              determines both the quality of the sound and the size of  the  frame  itself.   Bit
              rates  can  range from 8 Kb/s (kilobits per second) to 320 Kb/s.  Note that the MP3
              specification only allows 14 discreet bit rates for an MP3 file, so, for  instance,
              a stereo MP3 could have frames with bit rates of 128 Kb/s and 160 Kb/s, but nowhere
              in between.

              Audio frames with high bit rates sound much better than those with lower bit rates,
              but  take  up more space.  Obviously, one would like to use a bit rate that is only
              high enough to maintain a comfortable level of audio quality.   Normally,  all  the
              frames  in an MP3 file are encoded at the same bit rate.  A few MP3 files, however,
              are encoded such that the bit rate may vary from one frame to the next.  These  MP3
              files  are  called  Variable Bit Rate (or VBR) files.   Since VBR files do not have
              one single bit rate, attempting to report the bit rate of the file as a  whole  can
              be  problematic.   Consequently,  mp3info  allows  you to specify how you want this
              value reported.

              The default is to simply print  the  word  'Variable'  where  the  bit  rate  would
              normally  appear.   Another  option is to print the mathematical average of all the
              frames.  This has the advantage  of  being  completely  accurate,  but  the  number
              printed  may  not  correspond  to  one  of  the 14 discreet bit rates that would be
              allowed for that file.  The third alternative solves that problem by  allowing  the
              bit  rate  to be reported as the median bit rate which is what you would get if you
              lined up all the frames in the file by bit rate from lowest to highest  and  picked
              the frame closest to the middle of the line.

              For  more  specific  usage  information,  see  the  -r switch and the %r conversion
              specifier under the description of -p's FORMAT_SPECIFIER.

EXAMPLES

       Display existing ID3 tag information (if any) in song.mp3

              mp3info song.mp3

       Set the title, author and genre of song.mp3. (All other fields unchanged)

              mp3info -t "Song Title" -a Author -g "Rock & Roll" song.mp3

       Set the album field of all MP3 files in the current directory to "The White Album"

              mp3info -l "The White Album" *.mp3

       Delete the entire ID3 tag from song1.mp3 and song2.mp3

              mp3info -d song1.mp3 song2.mp3

       Delete the comment field from the ID3 tags of all MP3 files in the current directory. (All
       other fields unchanged)

              mp3info -c "" *.mp3

       Display  the Title, Artist, Album, and Year of all MP3 files in the current directory.  We
       include the labels 'File', etc. and insert newlines (\n) to make things more readable  for
       humans:

              mp3info -p "File: %f\nTitle: %t\nArtist: %a\nAlbum: %l\nYear: %y\n\n" *.mp3

       Say  you want to build a spreadsheet of your MP3 files.  Here's a command you might use to
       help you accomplish that.  Most spreadsheet programs will import an ASCII file and treat a
       given  character  as  a  field  separator.   A  commonly  used  field separator is the tab
       character.  For each MP3 file in the current directory, we want to  output  the  filename,
       title,  artist,  and  album  on  a single line and have the fields separated by a tab (\t)
       character.  Note that you must include a newline (\n) at the end of the format  string  in
       order to get each file's information on a separate line.  Here's the command:

              mp3info -p "%f\t%t\t%a\t%l\t%y\n" *.mp3

       Some  spreadsheets  or  other software may allow importing data from flat files where each
       field is a specific width.  Here's where the format modifiers come into play.   This  next
       command  outputs  the  same  information as the command above, but uses fixed-width fields
       instead of tab separators.  The filename field is defined as 50 characters wide, the title
       field is defined as 31 characters wide, and so on.

              mp3info -p "%50f%31t%31a%31l%4y\n" *.mp3

       The  problem  with  the  output  of  this  command is that all strings are normally right-
       justified within their fields.  This looks a little odd since most western languages  read
       from  left  to right.  In order to make the fields left-justified, add a minus sign (-) in
       front of the field-width:

              mp3info -p "%-50f%-31t%-31a%-31l%-4y\n" *.mp3

       Now suppose you just want the running time of each  MP3  file  specified  in  minutes  and
       seconds.  Simple enough:

              mp3info -p "%f: %m:%s\n" *.mp3

       You  may  notice  when  you  do this, however, that leading zeros are not displayed in the
       seconds field (%s).  So for instance, if you had a track four minutes and two seconds long
       its  running time would be displayed as '4:2' instead of '4:02'.  In order to tell mp3info
       to pad an integer field with zeros, you need to use a field width  modifier  and  place  a
       zero  in  front  of  it.   The  following  command is the same as the previous one, but it
       specifies that mp3info is to display the seconds field with a  fixed  field-width  of  two
       characters and to pad the field with leading zeros if necessary:

              mp3info -p "%f: %m:%02s\n" *.mp3

       The  last  trick  we  have  to  show  you  is  the  precision specifier for floating point
       variables.  The following command displays the filename and average bit rate for  all  MP3
       files in the current directory.

              mp3info -r a -p "%f %r\n" *.mp3

       By  default, the floating point value of the average bit rate is displayed with six digits
       past the decimal point (ex: 175.654332).  If you are like me, this seems  like  a  bit  of
       overkill.   At most you want one or two digits beyond the decimal place displayed.  Or you
       might not want any.  The following command displays the average bit rate with  first  two,
       then zero digits beyond the decimal point:

              mp3info -r a -p "%f %.2r %.0r\n" *.mp3

       If  you  wanted  to specify a field width for a floating point value, you could do that by
       placing the field-width before the decimal point in the field modifier.  This command does
       just  that  -- specifying an average bit-rate field six characters wide that will show two
       digits of precision beyond the decimal point:

              mp3info -r a -p "%f %6.2r\n" *.mp3

BUGS

       There's no "save and quit" in interactive mode. You must fill in all the fields  (even  if
       it  is  with blanks) and let the program finish by itself.  CTRL+C does leave MP3info, but
       the data isn't saved.

       Using space to erase tags in  interactive  mode  does  not  work  correctly  if  you  then
       backspace over the deleted text.

       The  title,  author,  album,  and  comment fields are limited to 30 characters.  This is a
       limitation of the ID3 1.0 tag format, not MP3Info.  If you specify the track number  (with
       the  -n  switch), the ID3 1.0 tag becomes a 1.1 tag and the comment field is limited to 28
       characters.  This is because the difference between ID3 1.0 and 1.1 is that the tag number
       is  stored in the last byte of the comment field.  This trick "borrows" two bytes from the
       fixed-length comment field effectively reducing the maximum comment by two characters.

       Genres cannot be specified arbitrarily.  They must be specified from a pre-determined list
       (use mp3info -G to see that list).  Again, this is a limitation of the ID3 1.0 tag format.

       Only  ID3  versions 1.0 and 1.1 are supported.  ID3V2 is a much more powerful standard and
       is  planned  for  some  as-yet-undetermined  future  version.   Unfortunately,   a   clean
       implementation  is  a  heck of a lot of work and I'm unbelievably lazy, so don't hold your
       breath.  It is probably worth noting at this juncture, however, that I do accept  patches.
       :-)

       Exit codes are somewhat haphazard and not well documented.

AUTHOR

       Cedric Tefft <cedric@phreaker.net>

SEE ALSO

       printf(3)