Skip to content

4626k/tagqt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TagQt

A music metadata editor built with Python and Qt

License: MIT FOSS Platform Python 3.10+

Screenshot

TagQt Screenshot

What is this

TagQt is a desktop music metadata editor for Windows and Linux. It reads and writes tags for MP3, FLAC, OGG, M4A, and WAV files. You can edit files one at a time or select multiple files and apply changes in bulk.

The interface uses the Catppuccin color theme with four flavors: Latte, Frappé, Macchiato, and Mocha. There is a command palette (Ctrl+K) for quick access to every action.

Features

TagQt can auto-tag files from MusicBrainz, filling in artist, album, year, track number, and genre. It fetches lyrics from multiple providers including Musixmatch (word-synced and line-synced) and LRCLIB. Provider order and selection are configurable. It can search and download album artwork with configurable cover resolution.

A built-in music player lets you play through your tracks in display order. When a track has LRC timestamps in its lyrics, the lyrics box highlights the current line in sync with playback.

Files can be batch renamed using tag patterns like %artist% - %title%. FLAC files can be re-encoded to 24 bit 48kHz using ffmpeg. Korean and CJK text in lyrics and tags can be romanized automatically. Metadata can be imported and exported as CSV, and filename or tag case can be converted between title case, upper, and lower.

You can drag and drop files or folders directly onto the window to load them.

Keyboard Shortcuts

Shortcut Action
Ctrl+O Open a folder
Ctrl+S Save changes
Ctrl+G Toggle global edit for all visible files
Ctrl+A Select all files
Ctrl+K Open the command palette
Ctrl+Q Quit the app
Escape Exit global edit mode

Installation

From a Release

Download the latest build from Releases. On Windows, run the installer .exe. On Linux, download the AppImage, make it executable with chmod +x, and run it.

From Source

Requires Python 3.10 or later.

git clone https://github.com/selr1/tagqt.git
cd tagqt
pip install -r requirements.txt
python main.py

Dependencies

Package Purpose
PySide6 Qt GUI framework
mutagen Reads and writes audio metadata
Pillow Image processing for cover art
requests HTTP requests for lyrics, covers, and MusicBrainz
musicbrainzngs MusicBrainz API client
koroman Korean and CJK romanization
syncedlyrics Musixmatch lyrics provider

Optional: ffmpeg is needed for FLAC re-encoding and must be on your PATH.

Building

Check .github/workflows/release.yml for the full build steps. The CI builds a Windows installer and a Linux AppImage on every version tag push.

Contributing

Contributions are welcome. Open an issue or submit a pull request.

About

Music metadata editor with Catppucin themes.

Resources

Stars

Watchers

Forks

Contributors