fixup - Music directory fixer

Performs various checks and fixes to directories of audio files.

Names

fixup

Description

Operates on directories at a time, fixing each as a unit (album, compilation, live set, etc.). All of these should have common dates, for example but other characteristics may vary. The --type should be used whenever possible, lp is the default.

The following test and fixes always apply:

  1. Every file will be given an ID3 tag if one is missing.
  2. Set ID3 v2.4.
  3. Set a conistent album name for all files in the directory.
  4. Set a consistent artist name for all files, unless the type is various in which case the artist may vary (but must exist).
  5. Ensure each file has a title.
  6. Ensure each file has a track # and track total.
  7. Ensure all files have a release and original release date, unless the type is live in which case the recording date is set.
  8. All ID3 frames of the following types are removed: USER, PRIV
  9. All ID3 files have TLEN (track length in ms) set (or updated).
  10. The album/dir type is set in the tag. Types of lp and various do not have this field set since the latter is the default and the former can be determined during sync. In ID3 terms the value is in TXXX (description: eyeD3#album_type).
  11. Files are renamed as follows: - Type various: ${track:num} - ${artist} - ${title} - All other types: ${artist} - ${track:num} - ${title}
  12. Directories are renamed as follows: - Type live: ${best_date:prefer_recording} - ${album} - All other types: ${best_date:prefer_release} - ${album}

Album types:

  • lp: A traditinal “album” of songs from a single artist. No extra info is written to the tag since this is the default.
  • ep: A short collection of songs from a single artist. The string ‘ep’ is written to the tag’s eyeD3#album_type field.
  • various: A collection of songs from different artists. The string ‘various’ is written to the tag’s eyeD3#album_type field.
  • live: A collection of live recordings from a single artist. The string ‘live’ is written to the tag’s eyeD3#album_type field.
  • compilation: A collection of songs from various recordings by a single artist. The string ‘compilation’ is written to the tag’s eyeD3#album_type field.
  • demo: A demo recording by a single artist. The string ‘demo’ is written to the tag’s eyeD3#album_type field.

Options

-t {lp,ep,compilation,live,various,demo}, --type {lp,ep,compilation,live,various,demo}
                      How to treat each directory. The default is 'lp',
                      although you may be prompted for an alternate choice
                      if the files look like another type.
--fix-case            Fix casing on each string field by capitalizing each
                      word.
-n, --dry-run         Only print the operations that would take place, but
                      do not execute them.
--no-prompt           Exit if prompted.
--dotted-dates        Separate date with '.' instead of '-' when naming
                      directories.

Table Of Contents

Previous topic

classic - Tag Viewer/Editor

Next topic

itunes-podcast - Convert files so iTunes recognizes them as poscasts

This Page