Skip to content

RillingDev/musicbrainz-enricher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MusicBrainz Enricher

A Java application to enrich MusicBrainz data from linked sources.

About

Queries the MusicBrainz API and fetches data from linked sources like Discogs or Spotify.

Requirements

  • Java Runtime Environment 21
  • Docker

Supported Relationship Sources

  • Releases (mode = release)
    • Apple Music / iTunes
    • Bandcamp
    • Discogs
    • Junodownload
    • Spotify
  • Release Groups (mode = release-group)
    • Allmusic
    • Discogs
    • Wikidata

Configuration

This application uses Spring Boot, which allows for easy handling of configurations. See the Spring Boot documentation for details.

  • musicbrainz-enricher.host (Either "test.musicbrainz.org" or "musicbrainz.org")
  • Credentials
    • Musicbrainz
      • musicbrainz-enricher.musicbrainz.username
      • musicbrainz-enricher.musicbrainz.password
    • Discogs API(can be left empty to use (slower) unauthenticated discogs API access)
      • musicbrainz-enricher.discogs.token
    • Spotify API (can be left empty to disable spotify API access)
      • musicbrainz-enricher.spotify.client-id
      • musicbrainz-enricher.spotify.client-secret

Usage

Before starting, set up a copy of the MusicBrainz database using https://github.com/metabrainz/musicbrainz-docker locally with the database port open.

The first step is gathering data:

java -jar musicbrainz-enricher*.jar gather.

This will go through every relevant relationship and gather data from the referenced URLs. The results are persisted locally and are not submitted yet.

After gathering is complete, you can submit the merged data that was collected to MusicBrainz:

java -jar musicbrainz-enricher*.jar gather.

History

The application will remember entities checked already and will not re-check them. To reset this, truncate the *_history_entry and enricher_release_group_result tables in the musicbrainz_enricher schema.

About

A Java application to enrich MusicBrainz data from linked sources.

Topics

Resources

License

Stars

Watchers

Forks

Languages