this post was submitted on 21 May 2024
36 points (92.9% liked)

Linux

48287 readers
632 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

ytdl is a small script for Linux as an alternative interface to yt-dlp (which itself is a fork from youtube-dl, to download YouTube videos). My goal is to make some of its functionality a bit more accessible for the daily usage. This includes predefined settings and narrowing it down to options I care most about.

all 9 comments
sorted by: hot top controversial new old
[–] Psyhackological@lemmy.ml 5 points 6 months ago (2 children)

Probably the yt-dlp config could easily reduce complexity and leverage yt-dlp the most. However cool project though.

[–] CrabAndBroom@lemmy.ml 5 points 6 months ago (1 children)

TBH I just set an alias to alias yt='yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/mp4"' and then yt [URL of video] is all I need to type.

[–] thingsiplay@beehaw.org 1 points 5 months ago (1 children)

Hi, a little bit late to reply, but I just saw your comment. Agreed with you, if this is all you need, its better to have simple alias than using a foreign script from someone else. I had something like this too, but it was not enough for me. In example when I want to download entire playlist (which would create dedicated subfolder as well), or want to extract the audio for music only. And I also want to download or embed meta informations and other files.

Once you see whats possible, you won't go back (at least for me). yt-dlp is very complex by its nature and my script is a hope to make a few steps easier, and to bring attention to really cool features such as sponsorblock. Also I just recently found out it can repack the output format to "mp4" in example, which I added it as an option -f .

Sorry for the lengthy reply to a comment that was not targeted to me, but I felt like telling you this. Have a good day!

[–] CrabAndBroom@lemmy.ml 1 points 5 months ago

Oh yeah I do other more complicated things when necessary, that's just my day-to-day thing for when I need to grab a copy of a video quickly!

[–] thingsiplay@beehaw.org 2 points 6 months ago

Still need someone to understand all the options, write a correct configuration. A configuration is still a single configuration for a single use case and would a different one based on what I want to do, and it still requires a script with options. There are some option dependencies, that are not possible without a script. I believe this script would help other users too, who just pick one or two options from this short list.

[–] Lemmchen@feddit.de 5 points 6 months ago (2 children)

Doesn't seem that much simpler, tbh.

[–] thingsiplay@beehaw.org 2 points 6 months ago

yt-dlp --help vs ytdl -h and you still need to read the man yt-dlp to understand some concepts.

[–] TheAnonymouseJoker@lemmy.ml 2 points 6 months ago* (last edited 6 months ago)

All I do is

For 360p, yt-dlp -f 134+250 URL

For 720p, yt-dlp -f 136+250 URL

If I want the maximum audio quality that YouTube never makes available, change 250 to 251.

This gives me AV1 encoded video stream with OPUS 64kbps audio (or 128kbps for code 251). Anything beyond 720p encoded by Google is usually a waste, unless there is some specific reason you need 1080 or 2K marginally better resolution increase. The VMAF cutoff for YouTube encoded videos is optimal around 720p AV1.

If I need to ensure whatever I am downloading works on some TV via a USB pendrive, instead of AV1, I will select the VP9 video stream (243 or 247 codes). Verifying quickly via yt-dlp -F URL helps.