Skip to content

Support Request: Musicbrainz (as link aggregator and metadata) #13673

@RiedleroD

Description

@RiedleroD

Checklist

  • I'm reporting a new site support request
  • I've verified that I have updated yt-dlp to nightly or master (update instructions)
  • I've checked that all provided URLs are playable in a browser with the same IP and same login details
  • I've checked that none of provided URLs violate any copyrights or contain any DRM to the best of my knowledge
  • I've searched the bugtracker for similar requests including closed ones. DO NOT post duplicates
  • I've read about sharing account credentials and am willing to share it if required

Region

Worldwide

Example URLs

Provide a description that is worded well enough to be understood

musicbrainz is a database for music. it would be very nice to be able to give yt-dlp a musicbrainz release or recording, and make it download using the attached external links (if any).

Examples:

Using the example recording, what yt-dlp should do:

  • look for links in page
    (found: youtube, spotify, tidal)
    (supported: youtube, spotify)
  • choose one of the links for download
    (for example, youtube)
    (keep spotify link as fallback if necessary)
  • download using the appropriate extractor (in this example, youtube)

Using example album 1:

  • look for links in album page
    (found: none)
  • get individual recordings
    per recording (except track 2, error out on that one):
    • look for links in recording page
      (found: audionetwork.com, youtube)
      (supported: youtube)
    • download recording using the youtube extractor

Using example album 2:

  • look for links in album page
    (found: Bandcamp)
    (supported: Bandcamp)
  • download whole album using bandcamp extractor

Notes

since musicbrainz has lots and lots of metadata, adding that to the downloaded material would be very nice. If nothing else, adding the album ID and/or recording ID for picard to pick up later would be very helpful.

Provide verbose output that clearly demonstrates the problem

  • Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
  • If using API, add 'verbose': True to YoutubeDL params instead
  • Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output

[debug] Command-line config: ['-vU', 'https://musicbrainz.org/release/14ff6f9b-6848-4252-97c5-3a8426eeff8a']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2025.06.30 from yt-dlp/yt-dlp [b01878449]
[debug] Python 3.13.5 (CPython x86_64 64bit) - Linux-6.15.4-arch2-1.1-x86_64-with-glibc2.41 (OpenSSL 3.5.1 1 Jul 2025, glibc 2.41)
[debug] exe versions: ffmpeg 7.1.1 (setts), ffprobe 7.1.1, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.23.0, brotlicffi-1.1.0.0, certifi-2025.06.15, mutagen-1.47.0, requests-2.32.4, secretstorage-3.3.3, sqlite3-3.50.2, urllib3-2.5.0, websockets-15.0.1
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets
[debug] Plugin directories: none
[debug] Loaded 1857 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: stable@2025.06.30 from yt-dlp/yt-dlp
yt-dlp is up to date (stable@2025.06.30 from yt-dlp/yt-dlp)
[generic] Extracting URL: https://musicbrainz.org/release/14ff6f9b-6848-4252-97c5-3a8426eeff8a
[generic] 14ff6f9b-6848-4252-97c5-3a8426eeff8a: Downloading webpage
WARNING: [generic] Falling back on generic information extractor
[generic] 14ff6f9b-6848-4252-97c5-3a8426eeff8a: Extracting information
[debug] Looking for embeds
ERROR: Unsupported URL: https://musicbrainz.org/release/14ff6f9b-6848-4252-97c5-3a8426eeff8a
Traceback (most recent call last):
  File "/usr/lib/python3.13/site-packages/yt_dlp/YoutubeDL.py", line 1662, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/lib/python3.13/site-packages/yt_dlp/YoutubeDL.py", line 1797, in __extract_info
    ie_result = ie.extract(url)
  File "/usr/lib/python3.13/site-packages/yt_dlp/extractor/common.py", line 752, in extract
    ie_result = self._real_extract(url)
  File "/usr/lib/python3.13/site-packages/yt_dlp/extractor/generic.py", line 2579, in _real_extract
    raise UnsupportedError(url)
yt_dlp.utils.UnsupportedError: Unsupported URL: https://musicbrainz.org/release/14ff6f9b-6848-4252-97c5-3a8426eeff8a

Metadata

Metadata

Assignees

No one assigned

    Labels

    site-requestRequest to support a new websitetriageUntriaged issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions