Files
Alexander a1f6701bac feat: initial implementation of metadata aggregator
- gRPC service with MusicBrainz provider
- PostgreSQL schema with migrations
- Service layer with database-first caching
- Repository pattern for data access
- YAML configuration support
- Research documentation for 17 music metadata projects
2026-04-28 16:28:53 +02:00
..

MusicMetaLinker

Overview

Python library for entity linking and knowledge augmentation for music metadata. Links music tracks to external sources (MusicBrainz, AcousticBrainz, YouTube Music, Deezer) for metadata enrichment.

Key Features

  • Purpose: Entity linking across music databases
  • Sources: MusicBrainz, AcousticBrainz, YouTube Music, Deezer
  • Matching: Intelligent service selection based on available metadata
  • License: MIT

Source

Resource URL
Repository https://github.com/andreamust/MusicMetaLinker
PyPI https://pypi.org/project/MusicMetaLinker

How It Works

  1. Service Selection: Evaluates available metadata, selects best external service
  2. Information Retrieval: Connects to service API, searches for best match
  3. Filtering and Return: Filters results, returns enriched metadata

Usage Example

from musicmetalinker import MusicMetaLinker

# Initialize with known metadata
linker = MusicMetaLinker(
    track_name="Bohemian Rhapsody",
    artist_name="Queen",
    album_name="A Night at the Opera"
)

# Get linked metadata
track_name = linker.get_track()
artist_name = linker.get_artist()
album_name = linker.get_album()
duration = linker.get_duration()
isrc = linker.get_isrc()

# Get external IDs
links = {
    'mbid': linker.get_mbid(),
    'isrc': linker.get_isrc(),
    'deezer_id': linker.get_deezer_id()
}

# Or query by single identifier
linker = MusicMetaLinker(mbid="b10bbbfc-cf9e-42e0-be17-e2c3e1d2600d")
linker = MusicMetaLinker(isrc="GBUM71029604")

Installation

pip install MusicMetaLinker

Notes

  • Best for enriching existing metadata with external links
  • Automatic service selection based on input
  • Can query by MBID, ISRC, or Deezer ID directly