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
deleted by creator
The fork yt-dlp already downloads in the highest quality.
The problem is that, that’s (sometimes?) webm format…
WARNING: webm doesn’t support embedding a thumbnail, mkv will be used
Embed thumbnails, you’ll never see a webm again.
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?
yes but i think it’s also present in youtube-dl
--embed-thumbnail
deleted by creator
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 thebestaudio
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 thebestaudio/best
part to simplybestaudio
without losing much as well.Does it skip the recode completely if the format is already opus?
Yes, it does. It just repackages it from
.m4a
to.opus
without re-encoding the actual audio stream.
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.
deleted by creator
I believe Jdownloader 2 lets you do link grabber with YouTube links that can download audio only with a choice of format.
I dunno about the qualilty but I do
yt-dlp -x
and it downloads and extracts just the audio portion.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)
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 useffmpeg -i file -c copy file.opus
to copy the opus audio stream in an opus file format file (codeccopy
so without encoding losses).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.
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.
+1 for MediaHuman, if you’re wanting a GUI. Super simple and powerful. It’s paid software but there are cracks around.
It’s not paid though?
I think the YouTube Downloader is paid and they might be getting it confused.
Oh I’m four days late but yes. The YouTube downloader also downloads audio, I didn’t realize they had a separate program that only downloads audio. Weird.
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.
Easiest way is to use an Indivious instance, if you are on desktop or use the Newpipe App if on Android.