I’ve had this concept in my head for a while, I’m kind of amazed it doesn’t exist yet.

I want to send a link to a music track to an app on my server, probably yt, maybe Spotify, and have that track be archived on my server, with the metadata from the service, preferably in a place Jellyfin can get at it.

There’s a few ways to do that with YT playlist links, but not with adhoc requests for individual tracks, as far as I can see.

Is this not something that exists? I’m thinking it might not be too hard to write, if it doesn’t.

  • tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    15
    ·
    edit-2
    2 days ago

    opus can’t be tagged

    I’m pretty sure that it supports tagging.

    goes to try it out

    $ yt-dlp -x https://www.youtube.com/shorts/syF8M3aeiWs >/dev/null
    $ opustags beep\ sound\ effect\ \[syF8M3aeiWs\].opus |grep -v ^METADATA
    language=eng
    encoder=Lavf61.7.100
    title=beep sound effect
    date=20230316
    purl=https://www.youtube.com/watch?v=syF8M3aeiWs
    synopsis=beep
    DESCRIPTION=https://www.youtube.com/watch?v=syF8M3aeiWs
    artist=Seth's old channel 
    $
    

    If you mean that this MusicBrainz Picard thing doesn’t support tagging Opus, it sounds like it does:

    https://community.metabrainz.org/t/musicbrainz-picard-doesnt-support-opus-files/467209

    I have been having trouble tagging .opus files. Every time I try to edit .opus files I get:

    (error: read b’\x1aE\xdf\xa3’, expected b’OggS’, at 0x0)

    Looks like this is not a valid Ogg Opus file. Opus is just an audio codec, not a file format. Files with the file extension .opus are supposed to be inside an Ogg container, and that’s what Picard supports.

    Your’s seems to be a Matroska file, and Picard does not support Matroska files yet.

    And looking at the output of yt-dlp -x, it looks like it’s Opus in an Ogg container:

    $ file beep\ sound\ effect\ \[syF8M3aeiWs\].opus
    beep sound effect [syF8M3aeiWs].opus: Ogg data, Opus audio, version 0.1, stereo, 48000 Hz (Input Sample Rate)
    $
    

    EDIT: Note that my ~/.config/yt-dlp/config file is:

    --embed-subs
    --write-auto-subs
    --embed-metadata
    --embed-chapters
    --embed-thumbnail
    --sponsorblock-mark=all
    

    It may be that one needs --embed-metadata on the yt-dlp command-line if one isn’t setting it in their yt-dlp config file to get the above tags; it might be that none normally get set.

    • Chaser@lemmy.zip
      link
      fedilink
      English
      arrow-up
      4
      ·
      2 days ago

      Awesome! I just learned something today. Thanks for pointing it out so detailed!