#music #audio #tagging #mp3 #organiser

app mack

An opinionated, fast music organiser

16 releases (stable)

1.4.0 May 8, 2023
1.2.2 Jul 23, 2022
1.1.1 Nov 28, 2021
1.0.1 May 7, 2021
0.1.0 Sep 6, 2018

#61 in Filesystem

Download history 22/week @ 2023-02-09 36/week @ 2023-02-16 3/week @ 2023-03-09 26/week @ 2023-03-16 23/week @ 2023-04-06 53/week @ 2023-04-13 29/week @ 2023-04-20 14/week @ 2023-04-27 56/week @ 2023-05-04 8/week @ 2023-05-11 1/week @ 2023-05-18 18/week @ 2023-05-25

83 downloads per month

MIT license

26KB
612 lines

mack | Tests

mack is an opinionated, fast music organiser. It enforces:

  • Directory layout
  • File name format
  • Metadata consistency (e.g., consistent "feat" tagging)
  • Format consistency (e.g., ID3 version)
  • ...and more!

Examples of fixes

  • Moving featured artists from the artist tag to the title
  • Enforcing a consistent "feat" format in title tags
  • Whitespace normalisation
  • Renaming files to format "{artist}/{album}/{track} {title}", or another format specified with --fmt

Usage

See --help. An example invocation is:

% mack --dry-run -o Music .
01 Pyramid.mp3: renamed to Music/宇宙コンビニ/染まる音を確認したら/01 Pyramid.mp3
02 8films.mp3: renamed to Music/宇宙コンビニ/染まる音を確認したら/02 8films.mp3
03 tobira.mp3: renamed to Music/宇宙コンビニ/染まる音を確認したら/03 tobira.mp3
04 Compass.mp3: renamed to Music/宇宙コンビニ/染まる音を確認したら/04 Compass.mp3
05 strings.mp3: renamed to Music/宇宙コンビニ/染まる音を確認したら/05 strings.mp3

You can see what would be changed first using --dry-run.

Installation

cargo install mack

Performance

mack has a strong focus on performance. Files which were not updated since the last mack run will not be examined at all. On a sample modern laptop with a mid-spec SSD, this means that we only take 0.005 seconds to run over ~3500 files under most circumstances (0.015 seconds on the very first run).

Configuration

If you don't want a particular file to be touched by mack, add _NO_MACK as a substring anywhere in the comment tag.

Dependencies

~6MB
~130K SLoC