I’ve been using Clipgrab (macOS) to download music (mp3s) from YouTube. I’ve seen some mentions that the quality (real bitrate as opposed to what the file states) is bad to begin with on YouTube and that downloaders might make it worse. How bad is the quality of what I’m downloading? Any better downloaders or does the quality suck to begin with?
yt-dlp can just download the audio. It usually comes down in m4a at quality that I would describe as “very listenable”. So only the first of those three steps are mandatory if you do it that way.
yt-dlp -x <url>
But is the source separate on YT’s server is what I’m wondering.
If not, there’s a transcoding stage
deleted by creator
It varies based on the age of the video, newer ones do indeed have separate audio downloads. You can force audio only with
yt-dlp -f bestaudio <url>
This will cause the script to only consider audio-only formats, if bandwidth is a concern. However, how it decides which one is “best” is beyond me. For example, I tried one video and got a webm that contains only an audio track:
~ $ yt-dlp -f bestaudio https://www.youtube.com/watch?v=dQw4w9WgXcQ [youtube] Extracting URL: https://www.youtube.com/watch?v=dQw4w9WgXcQ [youtube] dQw4w9WgXcQ: Downloading webpage [youtube] dQw4w9WgXcQ: Downloading ios player API JSON [youtube] dQw4w9WgXcQ: Downloading android player API JSON [youtube] dQw4w9WgXcQ: Downloading m3u8 information [info] dQw4w9WgXcQ: Downloading 1 format(s): 251 [download] Destination: /data/data/com.termux/files/home/storage/movies/ytdl/20091025__Rick_Astley_-_Never_Gonna_Give_You_Up_Official_Music_Video.webm [download] 100% of 3.28MiB in 00:00:00 at 6.91MiB/s
Yes, I deleted my comment after I checked the command line I was using and testing it out. The CPU usage was because I was using the
--audio-format
flag with something other than m4a/opus or whatever it is that youtube uses natively. And the file I saw on disk was not the video, it was the audio file in youtube’s native format.For reference, I’m using
$ytdl -f "bestaudio/best" -ciw -o "$audioroot/%(title)s (%(upload_date>%Y-%m-%d)s).%(ext)s" --extract-audio --audio-quality 0 --audio-format mp3 "$vidurl"
.Here is an alternative Piped link(s): https://piped.video/watch?v=dQw4w9WgXcQ
https://piped.video/watch?v=dQw4w9WgXcQ
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source, check me out at GitHub.