A minimal CLI tool inspired by vidir, enabling fast batch editing of audio metadata in your favorite text editor (default is your $EDITOR system var).
- Collects audio files from given paths
- Extracts tags using
mutagenand writes them into a temp file in a structuredjsonformat - Lets you edit the json in your preferred text editor
- Validates changes, detects conflicts, and translates the json updates to audio file tags
- Supported formats:
- MP3
- FLAC
Install through pip:
$ pip install vitagOr clone the repository:
$ git clone https://github.com/Tx270/vitag
$ cd vitag
# build locally and install with pip
$ pip install .
# or manually install dependencies and run
$ pip install mutagen typer
$ python3 "./cli.py"For more info check --help
vitag [PATH ...] \
[--recursive -r] \
[--editor -e TEXT] \
[--verbose -v] \
[--extensions -x TEXT]# Edit all audio files in a folder
vitag "Omnium Gatherum/"
# Edit all audio files in current directory that have mp3 or wav extensions
vitag --extensions mp3,wav
# Edit multiple paths at once with custom editor
vitag "01 Robot Stop.mp3" "Fishing for Fishies/" -e nano
# Recursive scan (for example useful for albums with many disks)
vitag "Petrodragonic Apocalypse/" -rThe star (*) symbol means that the tag is not the same between all given files
{
"artist": "King Gizzard",
"album": "*",
"genre": "*",
"year": 2018
}You can edit, add and remove tags by editing the json
{
"artist": "King Gizzard",
"album": "*",
"genre": "pop",
"year": 2020
}In the example above, in all selected files:
artistandalbumtags will stay the same for each filegenretag will be changed to pop regardless of the previous valueyeartag will be changed to 2020.
- Extensions:
- Add
--extensionoption to filter file types - Test with more audio formats
- Add supported audio formats to the README file
- Add
- UI/UX:
- Add progress bars for loading and saving tags
- Add better error messages
- Distribution:
- Upload package to PyPI
- Features:
- Add cover art support
See LICENSE