Tag (tagger)

From Hydrogenaudio Knowledgebase
Jump to: navigation, search
This document is a stub. You can help Hydrogenaudio Knowledgebase by expanding it.

Tag is an open-source command line tool for Windows that may be used to tag numerous audio files, using various tagging schemes, including ID3v1, ID3v2, APEv1, APEv2, Vorbis and FLAC.

Tag can tag files automatically from their filename, by attempting to guess the filename format from one of fifty presets. You can also view tags for files, and create playlists.


  • Tag files using ID3v1, APEv1, APEv2, Vorbis, FLAC and Lyrics
  • View tags
  • Copy tags from one file to another
  • Tag from filename
  • Remove all tags or only ID3v2
  • Tag files recursively
  • Create playlists
  • Set tag values from the contents of a file
  • Piping support
  • Convert tags to different format
  • Remove tags
  • Generate Winamp playlists (optionally with AlbumList extensions and playing times)
  • Generate text files with information about tracks and album (format customizable)
  • Test mode that shows what would happen without actually doing anything to files


Tag was originally developed by Case, but he stopped developing Tag after version 2.0.39.

Neil Popham (Synthetic Soul) took over the development of Tag starting version 2.0.40. The latest version is 2.0.50.

Additional Reading[edit]

  • Wapet, also written by Case

Command Line Help[edit]

Version 2.0.50

Usage: Tag [options] <filenames / directories / @file_with_parameters>
Wildcards are supported in filenames and directories

 --title   <value> : set title to <value>
 --artist  <value> : set artist to <value>
 --album   <value> : set album to <value>
 --year    <value> : set year to <value>
 --comment <value> : set comment to <value>
 --track   <value> : set track number to <value>
 --genre   <value> : set genre to <value>

Tag fields can also be set with:
 -t <item=x>       : set tag item <item> to value <x>
 -f <item=x>       : set tag item <item> from content of file <x>
 -u <item=x>       : set tag item <item> to value <x> (x is UTF-8 coded)

 --help            : show full help
 --hideinfo        : don't display file information
 --hidetags        : don't display tags
 --hidenames       : don't display filenames
 --simple          : use simple tag display format
 --recursive       : search files recursively in all subdirectories
 --fromfile <file> : copy tag information from <file>
 --allow <item=x>  : allow access to files with specified properties only
 --auto            : generate tags from filenames
 --scheme <scheme> : specify file structure scheme (ie. L/A - N - T)
 --autoscheme      : select automatically best scheme from list of schemes
 --nomagic         : use plain schemes, disable extra automations
 --chreplace       : use character replacing when tagging
 --rentag          : rename files to match scheme, filename from tag data
 --rename <scheme> : rename files to <scheme>, filename generated from old name
 --move            : when renaming move files to subdirectories
 --overwrite       : overwrite existing files when renaming
 --trackinc        : use incremental track numbering
 --caps            : capitalize words
 --Caps            : capitalize only first word
 --lower           : convert all characters to lower case
 --upper           : convert all characters to upper case
 --tcaps <item>    : capitalize words in tag field <item>
 --tCaps <item>    : capitalize only first word in tag field <item>
 --tlower <item>   : convert all characters to lower case in tag field <item>
 --tupper <item>   : convert all characters to upper case in tag field <item>
 --nozero          : ignore leading zeros on track numbers
 --zeropad         : add trailing zero to track number if missing
 --commafix        : fix comma separated artist field (x, the -> the x)
 --spacefix        : replaces underscore (_) and %20 with space
 --itemfix         : fix item names in APE v1.0/2.0 tags
 --umlfix          : fix umlauts (ae -> ä, oe -> ö, ue -> ü)
 --swapta          : swap title <--> artist
 --remove          : remove all tags
 --removeid3v2     : remove only ID3v2 tags
 --removeid3v2u    : remove only unnecessary ID3v2 tags (fields fit in ID3v1)
 --playlist        : generate one playlist per directory
 --oneplaylist     : generate one playlist from all files
 --playlists       : generate one playlist per album in current directory
 --a-artist <x>    : set album artist to <x>
 --a-title <x>     : set album title to <x>
 --onlyfiles       : writes only filenames in playlist, no extra information
 --dirname         : use directory name for playlist naming
 --plname <name>   : use <name> as playlist name.
 --slashes         : use slashes '/' instead of backslashes '\' in playlists
 --nospaces        : replaces space by underscore in names of written files
 --sort <by>       : sort playlist only by <x>
 --sort+ <x>       : add new playlist sorting property <x>
 --sortdesc        : sort in descending order
 --newdate         : don't keep files original date/time
 --oldtype         : use old tag format
 --ape2            : default to APE v2.0
 --force <tag>     : force use of selected tag type
 --extid3          : extend over long title field into comment field with id3
 --nocheck         : don't check file extension
 --test            : test mode, no files will be modified
 --paranoid        : return non-zero code on warnings/non-critical errors
 --tofile <scheme> : save screen output to file, name generated from <scheme>
 --tofileext <ext> : use extension <ext> instead of .txt
 --tofilen <name>  : save screen output to file <name>
 --tocue <scheme>  : output cuesheet tag to file, name generated from <scheme>
 --tocuen <name>   : output cuesheet tag to file <name>
 --tocuea          : output cuesheet tag to file, name generated from source
 --tostdoutn <tag> : write <tag> value to stdout
 --stdout          : write tag details to stdout instead of stderr
 --nfo <file>      : generate .nfo file and save to <file>
 --listdefaults    : view default settings
 --listexceptions  : view list of exceptions in capitalize function
 --listgenres      : view list of possible ID3v1 tag genres
 --listpresets     : view list of defined presets
 --decode          : use external decoder and use <scheme> to name output
 --acculen         : display length more accurately
 --ansioutput      : don't convert output to OEM codepage
 --<number>        : use predefined preset <number>

External links[edit]