Daenyth / audiotag

A command line tool for ID3/Ogg tag editing. It features pattern matching and recursive directory traversal. It is suitable for editing single files and tagging en masse.

This URL has Read+Write access

Ryan McGuigan (author)
Sun Mar 22 08:43:01 -0700 2009
Daenyth (committer)
Sun Mar 22 08:43:01 -0700 2009
name age message
file COPYING Sun Mar 22 08:34:12 -0700 2009 audiotag v0.6 2003-11-02 [Ryan McGuigan]
file ChangeLog Loading commit data...
file README
file audiotag
README
REQUIREMENTS
  To use Audiotag, you must have:

  1. Perl >= 5.6
  2. At least one of...
     - id3tag and id3info (from id3lib, id3lib.sourceforge.net) in $PATH
     - vorbiscomment (from vorbis-tools, xiph.org/ogg/vorbis) in $PATH
     - metaflac (from flac, flac.sourceforge.net) in $PATH

INSTALL
  Just copy `audiotag' to /usr/local/bin (or somewhere in your $PATH)

USAGE
  % audiotag [OPTION]... [FILE]...

  tip: Always use the -p option before running it for real!

  Examples:

  Set GENRE to "Metal"
  % audiotag -g Metal *.mp3 *.ogg

  Guess and set TRACKNUM - guess track uses the simple pattern '(\d\d)\.'
  % audiotag -G *.mp3 *.ogg

  Set TITLE based on a pattern match of the filename - This example would
  work for files with a name in the form "Mudvayne - 01. Shadow of a Man.ogg"
  % audiotag --title-pattern '.*?\d\d\. (.*?)\.ogg' *.ogg

  Same as above, but don't really do anything, just see what it WOULD do
  % audiotag --pretend --title-pattern '.*?\d\d\. (.*?)\.ogg' *.ogg

  Rename files based on their meta-data, so the filenames are in the form:
  "TRACKNUM. Artist (Album Name) Song Title.ogg"
  eg. "02. Tool (Undertow) Prison Sex.ogg"
  % audiotag --rename-files --rename-pattern '%t. %a (%A) %s' *.ogg

BUGS
  - comment field support isn't fully functional for MP3s, because, for some
    reason, comment fields in MP3s are key/value pairs...  which doesn't
    translate to ogg and flac.  And id3tag doesn't support MP3 comment fields
    very well to begin with either.

  - the --rename-files option will fail(ungracefully) if illegal filename
    characters are in a track's meta-data, eg. '/' on *nix(and most other
    systems), or '\' on 'doze(but who cares?).