An open API service indexing awesome lists of open source software.

https://github.com/ivan-ayub97/metatag

A modern audio metadata editor with MusicBrainz integration, cover art support, and an intuitive interface
https://github.com/ivan-ayub97/metatag

audio metadata-editor metadata-management music musicbrainz musicbrainz-api mutagen pyqt5-desktop-application python qt5-gui tag

Last synced: 12 months ago
JSON representation

A modern audio metadata editor with MusicBrainz integration, cover art support, and an intuitive interface

Awesome Lists containing this project

README

          

[Download the EXE from Google Drive](https://drive.google.com/file/d/1noVr8WXN2tWL-xoOV3PKoUF0mCyapiUl/view?usp=sharing)
![Metatag](Banner.png)

A modern audio metadata editor with **MusicBrainz** integration, cover art support, and an intuitive interface

---

## Contributions

Contributions are welcome!

1. Fork the repository.
2. Create a branch for your feature or fix.
3. Submit a Pull Request with a clear description.

For bug reports or suggestions, contact me at: [negroayub97@gmail.com](mailto:negroayub97@gmail.com).

---

## ๐Ÿ“ธ Interface Preview

### ๐Ÿ”น General Interface

![Edit Tags](Captures/Edit_Options.png)

### ๐Ÿ”น MusicBrainz Search

![Search UI](Captures/Search_UI.png)

### ๐Ÿ”น MusicBrainz Submission

![Submit UI](Captures/Submission_UI.png)

---

## โœจ Key Features

### ๐ŸŽง Metadata Editing

- Supports `.mp3`, `.flac`, `.m4a`, `.ogg` files
- Edit title, artist, album, year, genre, track number, comments

### ๐Ÿ–ผ๏ธ Album Art

- Add, change, or remove cover art
- Preview embedded artwork
- Supports `.jpg`, `.png` images

### ๐ŸŒ MusicBrainz Integration

- Search and auto-apply metadata from MusicBrainz
- Submit new releases directly from the app

### ๐Ÿง  Automation

- Rename files using custom patterns
- Autofill forms using existing metadata
- Visual indicators for unsaved changes

### ๐Ÿ›ก๏ธ Error Handling

- Safe error recovery
- Robust handling of malformed files

---

## ๐Ÿ› ๏ธ Development Status โ€” v3.0

| Component | Status | Notes |
| -------------------- | -------------- | ------------------------------------------------------ |
| Metadata Editing | ๐ŸŸข Complete | Per-field editing, supports multiple formats |
| Album Art | ๐ŸŸข Complete | Preview + editing integrated |
| MusicBrainz (Search) | ๐ŸŸข Complete | Search by artist/album, select and apply release |
| MusicBrainz (Submit) | ๐ŸŸก Functional | Requires authentication, community-reviewed submission |
| File Renaming | ๐ŸŸข Complete | Pattern-based renaming like `%artist% - %title%` |
| GUI Interface | ๐ŸŸข Improved | Dark theme, responsive layout |
| Drag & Drop | ๐ŸŸข Implemented | Drag files directly into the table |

---

## ๐ŸŽฎ How to Use

1. Launch the app.

2. Select your audio files using the **"Load Files"** button.

3. Select a file to edit its metadata individually.

4. Optional: Use MusicBrainz search or submit a new release from within the app.

---

## ๐Ÿ“ฆ Dependencies

### Core

- `PyQt5` (>=5.15.0)
- `mutagen` (>=1.45.1)
- `musicbrainzngs` (>=0.7.1)
- `qtawesome`
- `requests`

---

## ๐Ÿ”ฅ Recent Enhancements

- โœ… MusicBrainz submission from within the interface
- โœ… Smart file renaming
- โœ… Search and apply metadata
- โœ… Visual cover art editor

---

## โš ๏ธ Known Issues

- MusicBrainz submission requires authentication and may fail due to API issues
- Large files may cause performance issues

---

## ๐Ÿ’ป System Requirements

- Python 3.7+
- All listed dependencies installed
- A working `ffmpeg` setup in the system

---

## ๐Ÿ“„ License

Distributed under the **[MIT License](LICENSE)**.

---

## ๐Ÿ‘ค Author

**Ivรกn Eduardo Chavez Ayub**
๐Ÿ”— [GitHub](https://github.com/Ivan-Ayub97)
๐Ÿ“ง [negroayub97@gmail.com](mailto:negroayub97@gmail.com)
๐Ÿ› ๏ธ Tech: Python, PyQt5, mutagen, MusicBrainz API

---

## ๐ŸŒŸ Why Metatag?

Because you need a **simple, powerful, and beautiful** metadata editor.
Metatag is an **open, intuitive, and evolving** tool built with creators in mind.