I read somewhere that it is possible to rip youtube videos (music only) without the need for converting it into an mp3 as such.

The online conversion process (naturally) results in loss of quality, and (apparently) it is possible to preserve the original video’s audio quality via a direct rip. If so, how would it be done and what format would it be in anyway?

thanks

  • ѕєχυαℓ ρσℓутσρє
    link
    English
    46
    edit-2
    11 months ago

    This is what I use for my personal archive:

    yt-dlp -f bestaudio/best --extract-audio --embed-metadata --embed-thumbnail --recode opus --audio-quality 0

    It does recode to opus but since the bestaudio is usually in that format already, you don’t need it most of the time. You can skip the --recode opus part if you want to. I keep it because I like having a “uniform” collection. You can probably change the bestaudio/best part to simply bestaudio without losing much as well.

  • Dettweiler
    link
    fedilink
    English
    2911 months ago

    YouTube compresses the video as soon as it’s uploaded, so it’s unlikely you can obtain any sort of lossless download. You may be able to get a .wav or similar download of a video’s audio track, but there will still be compression losses from the YouTube side.

  • @guitarsarereal@sh.itjust.works
    link
    fedilink
    English
    2911 months ago

    if you use yt-dlp or youtube-dl’s -F flag you can get back a list of available formats. There are typically separately encoded audio tracks for most content on youtube, meaning you can just give it the stream id and get an m4a or webm file with no extra work.

    • @XEAL@lemm.ee
      link
      fedilink
      English
      1211 months ago

      The fork yt-dlp already downloads in the highest quality.

      The problem is that, that’s (sometimes?) webm format…

      • neo (he/him)
        link
        fedilink
        English
        311 months ago

        WARNING: webm doesn’t support embedding a thumbnail, mkv will be used

        Embed thumbnails, you’ll never see a webm again.

        • @XEAL@lemm.ee
          link
          fedilink
          English
          211 months ago

          I resorted to a shitty script that gets the most m4a video quality using grep and awk.

          Is the thumbnail embedding a yt-dlp feature?

          • neo (he/him)
            link
            fedilink
            English
            2
            edit-2
            11 months ago

            yes but i think it’s also present in youtube-dl --embed-thumbnail

  • @pr06lefs@lemmy.ml
    link
    fedilink
    English
    2711 months ago

    I dunno about the qualilty but I do yt-dlp -x and it downloads and extracts just the audio portion.

    • @infinull@lemmy.dbzer0.com
      link
      fedilink
      English
      2211 months ago

      This uses ffmpeg under the hood and muxes the file into a .m4a file without transcoding. Basically keeping whatever compression youtube used for the audio (which is some sort of mpeg4 compatible audio, probably depends a little bit)

      This still recompressed, but it’s the best you can do using youtube as the source.

      • uploader (almost certainly, but theoretically you could skip this step if you encoded your video well) compresses audio
      • uploader uploads to youtube
      • youtube re-compresses the audio again (almost certainly transcoding into a different codec)
  • @Kissaki@feddit.de
    link
    fedilink
    English
    2311 months ago

    yt-dlp has the -F parameter to list the available stream formats. (uppercase F to list, lowercase f to select)

    I use -f 251 to download the opus audio stream, and afterwards use ffmpeg -i file -c copy file.opus to copy the opus audio stream in an opus file format file (codec copy so without encoding losses).

  • @lea@feddit.de
    link
    fedilink
    English
    911 months ago

    If you want an online tool, cobalt.tools can rip the original youtube audio if you choose “best” format in settings -> 🎶. It’s also FOSS with no tracker/ad garbage so I can recommend it as an alternative for yt-dlp which has been mentioned already.

  • @BMP5k@feddit.uk
    link
    fedilink
    English
    811 months ago

    I believe Jdownloader 2 lets you do link grabber with YouTube links that can download audio only with a choice of format.

  • @BetaDoggo_@lemmy.world
    link
    fedilink
    English
    611 months ago

    Get yt-dlp then run: yt-dlp -x ‘video-url’

    I believe if you’re willing to check the format codes on the video you can download audio only but both will get you the least compressed audio available.

  • @Thorny_Insight@lemm.ee
    link
    fedilink
    English
    4
    edit-2
    11 months ago

    I use this app for it. Even adds the correct artist, title, album and such to the file aswell. I tried several similar apps but this was by far the best.

  • @sho@lemmy.ml
    link
    fedilink
    English
    211 months ago

    Easiest way is to use an Indivious instance, if you are on desktop or use the Newpipe App if on Android.

  • @rikonium@discuss.tchncs.de
    link
    fedilink
    English
    1
    edit-2
    11 months ago

    Not a direct answer but for a while I had iTunes Match as a companion service which could be an imperfect workaround to get your hands on 256 Kbps AAC versions. (if it matches, which can’t be manually done)

    I bailed when it glitched on a couple songs and syncing broke for a while. Direct iTunes sync hasn’t let me down since but it was nice while it lasted and the Matched songs I had are still kicking.

    Of course it requires using iTunes and paying for that $25 for a non-guaranteed quality boost.