{"slug": "yt-dlp", "name": "yt-dlp", "category": "terminal", "category_name": "Terminal and shell", "description": "Command-line tool for downloading video and audio from YouTube and many other sites.", "recommenders": 18, "commenters": 34, "warners": 1, "score": 19.05, "rising": -0.58, "first": "2025-11-05", "latest": "2026-10-31", "why": "HN commenters recommend it as a dependable video and audio downloader and as a building block for scripts, transcription pipelines and music libraries.", "why_is_quote": false, "has_verdict": true, "sentiment": {"recommend": 18, "neutral": 16, "compare": 1, "warn": 1}, "spark": [4, 1, 1, 0, 0, 2, 0, 4, 2, 3, 0, 1], "listed": true, "loved": ["Pipeline building block", "Audio and music"], "caveat": "YouTube breakage", "short_quote": "at least yt-dlp will shard out multiple piece-downloaders, and I can get the video in a few seconds or minutes", "icon": true, "domain": null, "github_repo": "github.com/yt-dlp/yt-dlp", "official_url": "https://github.com/yt-dlp/yt-dlp", "pricing": "open source", "aliases": ["yt-dlp"], "verdict": [{"text": "HN commenters recommend it as a dependable video and audio downloader", "cites": [{"id": 787854049, "item_id": 49240878, "url": "https://news.ycombinator.com/item?id=49240878", "by": "eliorpom", "date": "2026-08-10", "stance": "recommend", "quote": "I found the best downloader out there: yt-dlp.", "excerpt": "Hi HN, I'm Elior, a video editor. Every week, I need to grab something from YouTube, whether it's a sound effect, a music track, or a video clip. I also like having a few videos available offline, for instance, when I'm on a plane. At first, I used online YouTube downloaders to get these assets, but I quickly realized their limitations: tons of ads, countdown timers before the download starts, and getting whatever qu", "context": "video editor", "use_case": "downloading YouTube media", "switched_from": "online YouTube downloaders", "story": "Show HN: TBD: a native, minimalist macOS front end for yt-dlp"}, {"id": 775780144, "item_id": 48486259, "url": "https://news.ycombinator.com/item?id=48486259", "by": "nan60", "date": "2026-06-10", "stance": "recommend", "quote": "yt-dlp feels so perfect for what it was designed to do.", "excerpt": "I don't know if its polished in the traditional sense, but yt-dlp feels so perfect for what it was designed to do.", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: What software feels exceptionally polished?"}, {"id": 733762864, "item_id": 45860179, "url": "https://news.ycombinator.com/item?id=45860179", "by": "al_borland", "date": "2025-11-08", "stance": "recommend", "quote": "It\u2019s worked on pretty much everything I\u2019ve tried it on so far.", "excerpt": "I end up using yt-dlp on macOS/Linux to download videos if needed. It\u2019s worked on pretty much everything I\u2019ve tried it on so far. Though admittedly not at seamless as a button being injected into the page itself.", "context": "macOS/Linux user", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: Windows/Linux software that has no real equivalent on macOS?"}, {"id": 733913025, "item_id": 45869564, "url": "https://news.ycombinator.com/item?id=45869564", "by": "Elfener", "date": "2025-11-09", "stance": "recommend", "quote": "yt-dlp thankfully works", "excerpt": "I've switched to watching youtube videos using mpv. yt-dlp thankfully works, and this way, I can watch the video any way I want.", "context": "", "use_case": "playing YouTube videos in mpv", "switched_from": "", "story": "YouTube A/B testing removing playback speed controls"}]}, {"text": " and as a building block for scripts, transcription pipelines and music libraries.", "cites": [{"id": 775209473, "item_id": 48450592, "url": "https://news.ycombinator.com/item?id=48450592", "by": "epiccoleman", "date": "2026-06-08", "stance": "neutral", "quote": "a little CLI wrapper around yt-dlp for my most common use cases", "excerpt": "All kinds of random stuff really, but to filter it down to only the noteworthy ones: Tuber[0] - this is my favorite, use it multiple times a week. It's just a little CLI wrapper around yt-dlp for my most common use cases - downloading the video, or the audio, or the subs. And then, if you've got the Claude CLI installed, it can also shoot the subs through Claude for a summary. I use it all the time, it's a great litt", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: What are tools you have made for yourself since the advent of AI"}, {"id": 790500864, "item_id": 49406304, "url": "https://news.ycombinator.com/item?id=49406304", "by": "loveparade", "date": "2026-08-23", "stance": "recommend", "quote": "I download the raw audio track with yt-dlp", "excerpt": "I built my own pipeline for this because in my experience the YouTube auto transcripts are quite bad. I download the raw audio track with yt-dlp, give it to qwen asr for raw transcription, then DeepSeek flash for transcription cleanup, formatting, corrections with web search enabled, etc. I use openrouter to call the models. It's a few cents per video (mostly the asr model at ~12 cents per hour) and quality is great.", "context": "", "use_case": "downloading audio and transcripts", "switched_from": "", "story": "Ask HN: Anyone set up ways to easily obtain and read transcripts from Ted, YT?"}, {"id": 768436080, "item_id": 48027255, "url": "https://news.ycombinator.com/item?id=48027255", "by": "zoogies", "date": "2026-05-05", "stance": "neutral", "quote": "I used yt-dlp to rip bodycam videos from youtube", "excerpt": "I've always enjoyed watching police bodycam videos and finding out that it was close to me, so I was surprised when I found out that nobody had tried to make an explorable map of them yet. I used yt-dlp to rip bodycam videos from youtube, distil-large-v3 to extract transcripts on my rtx 3070, and deepseek-v4-flash to output classifications. I host the entire thing on GitHub pages with an issue/PR system that allows t", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Interactive US police bodycam map"}, {"id": 742935824, "item_id": 46433489, "url": "https://news.ycombinator.com/item?id=46433489", "by": "oldsklgdfth", "date": "2025-12-30", "stance": "recommend", "quote": "If I want something new I use yt-dlp and get specific songs.", "excerpt": "In the past year I bought a Ruizu clip-on MP3 player. If I want something new I use yt-dlp and get specific songs. It's nice having a device not connected to the internet. In the past I used jellyfin.", "context": "", "use_case": "downloading songs", "switched_from": "", "story": "Ask HN: How to go back to listening to MP3s?"}]}, {"text": " The most common complaint is that YouTube changes break it or block heavy use,", "cites": [{"id": 782105328, "item_id": 48881583, "url": "https://news.ycombinator.com/item?id=48881583", "by": "TacticalCoder", "date": "2026-07-12", "stance": "warn", "quote": "It works, then doesn't anymore.", "excerpt": "BTW the year is 2026 and we've got LLMs, is there, at long last, an easy way to have an YouTube downloader I can run in a container (say with Podman) that actually works? Do I need to be logged in with a Google account for it to work? I always, since decades I want to say, ran into troubles whenever I download Youtube vids (no matter which tool I use, yt-dlp or other). It works, then doesn't anymore. Are you simply, ", "context": "", "use_case": "downloading YouTube videos", "switched_from": "", "story": "Yt-Dlp Sequence Diagrams"}, {"id": 805034208, "item_id": 50314638, "url": "https://news.ycombinator.com/item?id=50314638", "by": "adrian_b", "date": "2026-10-31", "stance": "recommend", "quote": "Now, used only for infrequently downloading single clips, yt-dlp works again fine.", "excerpt": "That is true. I use yt-dlp to download sporadically some YouTube clips and it works fine. However, once I attempted to download a complete YouTube list of clips, with a total size of several tens of GB. Towards the end of the list, after a couple of hours or so, the download was interrupted. Then my IP address was completely banned for YouTube, regardless of the browser used. The ban lasted for a couple of weeks. Now", "context": "", "use_case": "downloading YouTube clips", "switched_from": "", "story": "Cloudflare Turnstile solver library (no headless browser required)"}, {"id": 734415472, "item_id": 45900967, "url": "https://news.ycombinator.com/item?id=45900967", "by": "rob", "date": "2025-11-12", "stance": "recommend", "quote": "It's been working great by itself for the most part since the beginning of the year", "excerpt": "We use this for AI transcriptions internally on our Linode VPS server. It's been working great by itself for the most part since the beginning of the year, with only a couple of hiccups along the way. We do use a custom cookies.txt file generated on the server as well as generate a `po_token` every time, which seems to help. (I originally thought everything would just get blocked from a popular VPS provider, but surp", "context": "runs it on a Linode VPS", "use_case": "AI transcription pipeline downloads", "switched_from": "", "story": "Yt-dlp: External JavaScript runtime now required for full YouTube support"}]}, {"text": " so it needs frequent updates to keep working.", "cites": [{"id": 761459104, "item_id": 47591194, "url": "https://news.ycombinator.com/item?id=47591194", "by": "entropie", "date": "2026-03-31", "stance": "neutral", "quote": "Keeping yt-dlp up2date (and therefore) working is not that easy", "excerpt": "Which in the case of yt-dlp might not be fast enough. I use a telegram/mqtt/homeassistant wrapper (1) to let my mother download audiobooks which are saved in jellyfin so she can listen or download them from my (home)server. Keeping yt-dlp up2date (and therefore) working is not that easy, especially since I dont systemupdate every other week. There were a few phases yt-dlp version in nixpkgs-unstable were just not wor", "context": "runs home server", "use_case": "downloading audiobooks", "switched_from": "", "story": "Tell HN: Chrome says \"Suspicious Download\" when trying to download yt-dlp"}, {"id": 749695377, "item_id": 46855961, "url": "https://news.ycombinator.com/item?id=46855961", "by": "ce4", "date": "2026-02-02", "stance": "neutral", "quote": "YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\"", "excerpt": "I use it for lots of stuff, remote scanning from an old Canon flatbed scanner attached to my NAS (powered by a really ugly phone-local bash script, nothing else), rsync, renames (or the like using one liners), ssh tunnels to different destinations (to circumvent IP blockages) and of course YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\" - when it breaks, a git pull is a", "context": "", "use_case": "YouTube downloads", "switched_from": "", "story": "Termux"}]}], "praise": [{"label": "Pipeline building block", "summary": "Commenters build wrappers, GUIs and transcription or media pipelines on top of it.", "quotes": [{"id": 775209473, "item_id": 48450592, "url": "https://news.ycombinator.com/item?id=48450592", "by": "epiccoleman", "date": "2026-06-08", "stance": "neutral", "quote": "a little CLI wrapper around yt-dlp for my most common use cases", "excerpt": "All kinds of random stuff really, but to filter it down to only the noteworthy ones: Tuber[0] - this is my favorite, use it multiple times a week. It's just a little CLI wrapper around yt-dlp for my most common use cases - downloading the video, or the audio, or the subs. And then, if you've got the Claude CLI installed, it can also shoot the subs through Claude for a summary. I use it all the time, it's a great litt", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: What are tools you have made for yourself since the advent of AI"}, {"id": 790500864, "item_id": 49406304, "url": "https://news.ycombinator.com/item?id=49406304", "by": "loveparade", "date": "2026-08-23", "stance": "recommend", "quote": "I download the raw audio track with yt-dlp", "excerpt": "I built my own pipeline for this because in my experience the YouTube auto transcripts are quite bad. I download the raw audio track with yt-dlp, give it to qwen asr for raw transcription, then DeepSeek flash for transcription cleanup, formatting, corrections with web search enabled, etc. I use openrouter to call the models. It's a few cents per video (mostly the asr model at ~12 cents per hour) and quality is great.", "context": "", "use_case": "downloading audio and transcripts", "switched_from": "", "story": "Ask HN: Anyone set up ways to easily obtain and read transcripts from Ted, YT?"}, {"id": 768436080, "item_id": 48027255, "url": "https://news.ycombinator.com/item?id=48027255", "by": "zoogies", "date": "2026-05-05", "stance": "neutral", "quote": "I used yt-dlp to rip bodycam videos from youtube", "excerpt": "I've always enjoyed watching police bodycam videos and finding out that it was close to me, so I was surprised when I found out that nobody had tried to make an explorable map of them yet. I used yt-dlp to rip bodycam videos from youtube, distil-large-v3 to extract transcripts on my rtx 3070, and deepseek-v4-flash to output classifications. I host the entire thing on GitHub pages with an issue/PR system that allows t", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Interactive US police bodycam map"}]}, {"label": "Audio and music", "summary": "Used to pull audio tracks and specific songs for music libraries and audio systems.", "quotes": [{"id": 742935824, "item_id": 46433489, "url": "https://news.ycombinator.com/item?id=46433489", "by": "oldsklgdfth", "date": "2025-12-30", "stance": "recommend", "quote": "If I want something new I use yt-dlp and get specific songs.", "excerpt": "In the past year I bought a Ruizu clip-on MP3 player. If I want something new I use yt-dlp and get specific songs. It's nice having a device not connected to the internet. In the past I used jellyfin.", "context": "", "use_case": "downloading songs", "switched_from": "", "story": "Ask HN: How to go back to listening to MP3s?"}, {"id": 783087152, "item_id": 48942947, "url": "https://news.ycombinator.com/item?id=48942947", "by": "QuercusMax", "date": "2026-07-16", "stance": "recommend", "quote": "I've built myself a yt-dlp-based system to pipe audio into my multiroom audio system", "excerpt": "I pay for Youtube premium, which gives me unlimited Youtube Music usage with no ads. Yet I've built myself a yt-dlp-based system to pipe audio into my multiroom audio system (built on Snapcast). It will cache things locally so they play instantly, and I can mix my own music library with stuff from Youtube Music seamlessly, which is impossible with non-piratical means.", "context": "", "use_case": "pipe YouTube audio to multiroom", "switched_from": "", "story": "As a musician, I prefer illegal downloading over Spotify (2011)"}, {"id": 764422512, "item_id": 47776407, "url": "https://news.ycombinator.com/item?id=47776407", "by": "shevy-java", "date": "2026-04-15", "stance": "recommend", "quote": "if I need a good song I use yt-dlp on youtube and get it these days", "excerpt": "I used libgen quite a lot; new books were hard to find there, but many old books were available. Then libgen was kind of eliminated by the mega-corporation alliance. The latter is very hypocritical - see Meta and others sniffing off data to train for AI. Anna's Archive kind of semi-replaced libgen (a few libgen mirrors are sometimes back up but then disappear again) but for various reasons I don't quite like Anna's A", "context": "", "use_case": "downloading songs", "switched_from": "", "story": "Anna's Archive Loses $322M Spotify Piracy Case Without a Fight"}]}, {"label": "Reliability", "summary": "Users say it does its job well and works on most things they try.", "quotes": [{"id": 775780144, "item_id": 48486259, "url": "https://news.ycombinator.com/item?id=48486259", "by": "nan60", "date": "2026-06-10", "stance": "recommend", "quote": "yt-dlp feels so perfect for what it was designed to do.", "excerpt": "I don't know if its polished in the traditional sense, but yt-dlp feels so perfect for what it was designed to do.", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: What software feels exceptionally polished?"}, {"id": 733762864, "item_id": 45860179, "url": "https://news.ycombinator.com/item?id=45860179", "by": "al_borland", "date": "2025-11-08", "stance": "recommend", "quote": "It\u2019s worked on pretty much everything I\u2019ve tried it on so far.", "excerpt": "I end up using yt-dlp on macOS/Linux to download videos if needed. It\u2019s worked on pretty much everything I\u2019ve tried it on so far. Though admittedly not at seamless as a button being injected into the page itself.", "context": "macOS/Linux user", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: Windows/Linux software that has no real equivalent on macOS?"}, {"id": 734415472, "item_id": 45900967, "url": "https://news.ycombinator.com/item?id=45900967", "by": "rob", "date": "2025-11-12", "stance": "recommend", "quote": "It's been working great by itself for the most part since the beginning of the year", "excerpt": "We use this for AI transcriptions internally on our Linode VPS server. It's been working great by itself for the most part since the beginning of the year, with only a couple of hiccups along the way. We do use a custom cookies.txt file generated on the server as well as generate a `po_token` every time, which seems to help. (I originally thought everything would just get blocked from a popular VPS provider, but surp", "context": "runs it on a Linode VPS", "use_case": "AI transcription pipeline downloads", "switched_from": "", "story": "Yt-dlp: External JavaScript runtime now required for full YouTube support"}]}, {"label": "Archiving and offline", "summary": "Used to keep videos offline and archive ones that later disappear from the site.", "quotes": [{"id": 734396288, "item_id": 45899768, "url": "https://news.ycombinator.com/item?id=45899768", "by": "bdz", "date": "2025-11-12", "stance": "recommend", "quote": "I use yt-dlp (and back then youtube-dl) all the time to archive my liked videos.", "excerpt": "I use yt-dlp (and back then youtube-dl) all the time to archive my liked videos. Started back in around 2010, now I have tens of thousands of videos saved. Storage is cheap and a huge percent of them are not available anymore on the site. I also save temporary videos removed after a time for example NHK honbasho sumo highlights which are only available for a month or so then they permanently remove them.", "context": "", "use_case": "archiving liked videos", "switched_from": "youtube-dl", "story": "Yt-dlp: External JavaScript runtime now required for full YouTube support"}, {"id": 787854049, "item_id": 49240878, "url": "https://news.ycombinator.com/item?id=49240878", "by": "eliorpom", "date": "2026-08-10", "stance": "recommend", "quote": "I found the best downloader out there: yt-dlp.", "excerpt": "Hi HN, I'm Elior, a video editor. Every week, I need to grab something from YouTube, whether it's a sound effect, a music track, or a video clip. I also like having a few videos available offline, for instance, when I'm on a plane. At first, I used online YouTube downloaders to get these assets, but I quickly realized their limitations: tons of ads, countdown timers before the download starts, and getting whatever qu", "context": "video editor", "use_case": "downloading YouTube media", "switched_from": "online YouTube downloaders", "story": "Show HN: TBD: a native, minimalist macOS front end for yt-dlp"}]}, {"label": "Site coverage", "summary": "Works on a wide range of video sites beyond YouTube.", "quotes": [{"id": 774750226, "item_id": 48421889, "url": "https://news.ycombinator.com/item?id=48421889", "by": "picofarad", "date": "2026-06-05", "stance": "recommend", "quote": "works on a surprising number of video sites", "excerpt": "I have deepseek or grok write bash-likes in pwsh often enough to wonder what sort of things you're doing in pwsh... I use it to wrap ping.exe with colors and fewer columns, for example. yt-dlp wrapper to fetch 480p bestaudio with English subtitles, no playlist, works on a surprising number of video sites. It does make cmdlets up, you're right, there.", "context": "", "use_case": "downloading video audio with subtitles", "switched_from": "", "story": "What was your \"Oh Shit\" moment with GenAI?"}, {"id": 733762864, "item_id": 45860179, "url": "https://news.ycombinator.com/item?id=45860179", "by": "al_borland", "date": "2025-11-08", "stance": "recommend", "quote": "It\u2019s worked on pretty much everything I\u2019ve tried it on so far.", "excerpt": "I end up using yt-dlp on macOS/Linux to download videos if needed. It\u2019s worked on pretty much everything I\u2019ve tried it on so far. Though admittedly not at seamless as a button being injected into the page itself.", "context": "macOS/Linux user", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: Windows/Linux software that has no real equivalent on macOS?"}]}, {"label": "Fast downloads", "summary": "Splits downloads across parallel pieces to fetch slow-loading videos quickly.", "quotes": [{"id": 780591472, "item_id": 48786967, "url": "https://news.ycombinator.com/item?id=48786967", "by": "davydm", "date": "2026-07-04", "stance": "recommend", "quote": "at least yt-dlp will shard out multiple piece-downloaders, and I can get the video in a few seconds or minutes", "excerpt": "yeah, i use that often, eg when a video is slow on a website - at least yt-dlp will shard out multiple piece-downloaders, and I can get the video in a few seconds or minutes, and just watch it. Also great for anonymizing sharing videos - download the actual video, share that. Not an url (: In much the same vein, I rarely actually watch stuff _on_ netflix, through a browser - I watch sped up, and the quality just degr", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Rob Pike \u2013 'Concurrency Is Not Parallelism' [video]"}]}], "caveats": [{"label": "YouTube breakage", "summary": "Downloads from YouTube can stop working until fixes land.", "quotes": [{"id": 782105328, "item_id": 48881583, "url": "https://news.ycombinator.com/item?id=48881583", "by": "TacticalCoder", "date": "2026-07-12", "stance": "warn", "quote": "It works, then doesn't anymore.", "excerpt": "BTW the year is 2026 and we've got LLMs, is there, at long last, an easy way to have an YouTube downloader I can run in a container (say with Podman) that actually works? Do I need to be logged in with a Google account for it to work? I always, since decades I want to say, ran into troubles whenever I download Youtube vids (no matter which tool I use, yt-dlp or other). It works, then doesn't anymore. Are you simply, ", "context": "", "use_case": "downloading YouTube videos", "switched_from": "", "story": "Yt-Dlp Sequence Diagrams"}, {"id": 749695377, "item_id": 46855961, "url": "https://news.ycombinator.com/item?id=46855961", "by": "ce4", "date": "2026-02-02", "stance": "neutral", "quote": "YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\"", "excerpt": "I use it for lots of stuff, remote scanning from an old Canon flatbed scanner attached to my NAS (powered by a really ugly phone-local bash script, nothing else), rsync, renames (or the like using one liners), ssh tunnels to different destinations (to circumvent IP blockages) and of course YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\" - when it breaks, a git pull is a", "context": "", "use_case": "YouTube downloads", "switched_from": "", "story": "Termux"}]}, {"label": "Constant updates", "summary": "Keeping it current is necessary, and packaged versions sometimes lag or break.", "quotes": [{"id": 761459104, "item_id": 47591194, "url": "https://news.ycombinator.com/item?id=47591194", "by": "entropie", "date": "2026-03-31", "stance": "neutral", "quote": "Keeping yt-dlp up2date (and therefore) working is not that easy", "excerpt": "Which in the case of yt-dlp might not be fast enough. I use a telegram/mqtt/homeassistant wrapper (1) to let my mother download audiobooks which are saved in jellyfin so she can listen or download them from my (home)server. Keeping yt-dlp up2date (and therefore) working is not that easy, especially since I dont systemupdate every other week. There were a few phases yt-dlp version in nixpkgs-unstable were just not wor", "context": "runs home server", "use_case": "downloading audiobooks", "switched_from": "", "story": "Tell HN: Chrome says \"Suspicious Download\" when trying to download yt-dlp"}, {"id": 749695377, "item_id": 46855961, "url": "https://news.ycombinator.com/item?id=46855961", "by": "ce4", "date": "2026-02-02", "stance": "neutral", "quote": "YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\"", "excerpt": "I use it for lots of stuff, remote scanning from an old Canon flatbed scanner attached to my NAS (powered by a really ugly phone-local bash script, nothing else), rsync, renames (or the like using one liners), ssh tunnels to different destinations (to circumvent IP blockages) and of course YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\" - when it breaks, a git pull is a", "context": "", "use_case": "YouTube downloads", "switched_from": "", "story": "Termux"}]}, {"label": "Rate limits, bans", "summary": "Bulk downloads can trigger 429 errors or an IP ban from YouTube.", "quotes": [{"id": 805034208, "item_id": 50314638, "url": "https://news.ycombinator.com/item?id=50314638", "by": "adrian_b", "date": "2026-10-31", "stance": "recommend", "quote": "Now, used only for infrequently downloading single clips, yt-dlp works again fine.", "excerpt": "That is true. I use yt-dlp to download sporadically some YouTube clips and it works fine. However, once I attempted to download a complete YouTube list of clips, with a total size of several tens of GB. Towards the end of the list, after a couple of hours or so, the download was interrupted. Then my IP address was completely banned for YouTube, regardless of the browser used. The ban lasted for a couple of weeks. Now", "context": "", "use_case": "downloading YouTube clips", "switched_from": "", "story": "Cloudflare Turnstile solver library (no headless browser required)"}, {"id": 734415472, "item_id": 45900967, "url": "https://news.ycombinator.com/item?id=45900967", "by": "rob", "date": "2025-11-12", "stance": "recommend", "quote": "It's been working great by itself for the most part since the beginning of the year", "excerpt": "We use this for AI transcriptions internally on our Linode VPS server. It's been working great by itself for the most part since the beginning of the year, with only a couple of hiccups along the way. We do use a custom cookies.txt file generated on the server as well as generate a `po_token` every time, which seems to help. (I originally thought everything would just get blocked from a popular VPS provider, but surp", "context": "runs it on a Linode VPS", "use_case": "AI transcription pipeline downloads", "switched_from": "", "story": "Yt-dlp: External JavaScript runtime now required for full YouTube support"}]}, {"label": "Workarounds needed", "summary": "Server use may require cookies, po_tokens or switching clients.", "quotes": [{"id": 734415472, "item_id": 45900967, "url": "https://news.ycombinator.com/item?id=45900967", "by": "rob", "date": "2025-11-12", "stance": "recommend", "quote": "It's been working great by itself for the most part since the beginning of the year", "excerpt": "We use this for AI transcriptions internally on our Linode VPS server. It's been working great by itself for the most part since the beginning of the year, with only a couple of hiccups along the way. We do use a custom cookies.txt file generated on the server as well as generate a `po_token` every time, which seems to help. (I originally thought everything would just get blocked from a popular VPS provider, but surp", "context": "runs it on a Linode VPS", "use_case": "AI transcription pipeline downloads", "switched_from": "", "story": "Yt-dlp: External JavaScript runtime now required for full YouTube support"}]}, {"label": "JS engine dependency", "summary": "It needs a JavaScript engine such as Deno, which one user found heavy to build.", "quotes": [{"id": 772063233, "item_id": 48253952, "url": "https://news.ycombinator.com/item?id=48253952", "by": "sombragris", "date": "2026-05-23", "stance": "neutral", "quote": "I use Deno since yt-dlp required a JS engine and recommended it.", "excerpt": "My perspective is that of an user, not a developer. I use Deno since yt-dlp required a JS engine and recommended it. So while I don't use it for development, I have to build it for my system. This software is a beast to build and package. On first compilation, it spent like ~5-6 hours just pulling Rust crates. This time thankfully was significantly reduced once the relevant packages were in cargo cach\u00e9; only the chan", "context": "", "use_case": "video downloading", "switched_from": "", "story": "Deno 2.8"}]}, {"label": "Command-line only", "summary": "Terminal use is less seamless than an in-page button or GUI.", "quotes": [{"id": 733762864, "item_id": 45860179, "url": "https://news.ycombinator.com/item?id=45860179", "by": "al_borland", "date": "2025-11-08", "stance": "recommend", "quote": "It\u2019s worked on pretty much everything I\u2019ve tried it on so far.", "excerpt": "I end up using yt-dlp on macOS/Linux to download videos if needed. It\u2019s worked on pretty much everything I\u2019ve tried it on so far. Though admittedly not at seamless as a button being injected into the page itself.", "context": "macOS/Linux user", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: Windows/Linux software that has no real equivalent on macOS?"}, {"id": 763650450, "item_id": 47728153, "url": "https://news.ycombinator.com/item?id=47728153", "by": "FuzjaJadrowa", "date": "2026-04-10", "stance": "recommend", "quote": "I've been using yt-dlp and ffmpeg extensively for a while now", "excerpt": "Hi HN, I've been using yt-dlp and ffmpeg extensively for a while now, but I've always fiddled with terminal commands or used clunky online tools that aren't always reliable. While there are plenty of downloaders and converters on the market, I wanted to make something myself, just for fun. I wanted a dedicated, locally focused interface that combined downloading, conversion, and compression in one place. I initially ", "context": "", "use_case": "downloading video", "switched_from": "", "story": "Pulsar \u2013 Lightweight cross-platform GUI for FFmpeg and yt-dlp, built with Tauri"}]}], "who": [{"by": "eliorpom", "context": "video editor", "url": "https://news.ycombinator.com/item?id=49240878", "date": "2026-08-10"}, {"by": "anthk", "context": "HP Mini netbook user", "url": "https://news.ycombinator.com/item?id=48956423", "date": "2026-07-18"}, {"by": "entropie", "context": "runs home server", "url": "https://news.ycombinator.com/item?id=47591194", "date": "2026-03-31"}, {"by": "rob", "context": "runs it on a Linode VPS", "url": "https://news.ycombinator.com/item?id=45900967", "date": "2025-11-12"}, {"by": "al_borland", "context": "macOS/Linux user", "url": "https://news.ycombinator.com/item?id=45860179", "date": "2025-11-08"}], "tags": ["for transcription pipelines", "for music libraries", "for archiving videos", "for home servers", "for Linux and macOS users"], "use_cases": ["downloading videos", "downloading youtube videos", "video downloading", "downloading songs", "downloading video", "downloading youtube clips"], "compared": [{"slug": "ffmpeg", "name": "ffmpeg", "co": 5, "switched_from": 0, "switched_to": 0}, {"slug": "youtube-dl", "name": "youtube-dl", "co": 3, "switched_from": 1, "switched_to": 0}, {"slug": "mpv", "name": "mpv", "co": 4, "switched_from": 0, "switched_to": 0}, {"slug": "gemini", "name": "Gemini", "co": 3, "switched_from": 0, "switched_to": 0}, {"slug": "deepseek-v4-flash", "name": "DeepSeek V4 Flash", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "gptel", "name": "gptel", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "emacs", "name": "Emacs", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49405684", "title": "Ask HN: Anyone set up ways to easily obtain and read transcripts from Ted, YT?", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=48907063", "title": "Reviving a 15-year-old netbook with Arch Linux", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=48486225", "title": "Ask HN: What software feels exceptionally polished?", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=45898407", "title": "Yt-dlp: External JavaScript runtime now required for full YouTube support", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=50312542", "title": "Download YouTube Videos, Playlists and Channels Easily with Python Copy", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=50277379", "title": "Cloudflare Turnstile solver library (no headless browser required)", "mentions": 1}], "sentiment_by_month": {"2025-11": {"neutral": 1, "recommend": 4}, "2025-12": {"recommend": 1}, "2026-01": {"recommend": 1}, "2026-02": {"neutral": 1}, "2026-03": {"neutral": 4}, "2026-04": {"neutral": 2, "recommend": 2}, "2026-05": {"neutral": 3}, "2026-06": {"recommend": 4, "neutral": 1}, "2026-07": {"recommend": 2, "warn": 1, "neutral": 2}, "2026-08": {"neutral": 2, "recommend": 3}, "2026-09": {}, "2026-10": {"recommend": 1, "compare": 1}}, "quotes": [{"id": 805102192, "item_id": 50318887, "url": "https://news.ycombinator.com/item?id=50318887", "by": "gus_massa", "date": "2026-10-31", "stance": "compare", "quote": "How does this compare to https://github.com/yt-dlp/yt-dlp ?", "excerpt": "How does this compare to https://github.com/yt-dlp/yt-dlp ?", "context": "", "use_case": "downloading YouTube videos", "switched_from": "", "story": "Download YouTube Videos, Playlists and Channels Easily with Python Copy"}, {"id": 805034208, "item_id": 50314638, "url": "https://news.ycombinator.com/item?id=50314638", "by": "adrian_b", "date": "2026-10-31", "stance": "recommend", "quote": "Now, used only for infrequently downloading single clips, yt-dlp works again fine.", "excerpt": "That is true. I use yt-dlp to download sporadically some YouTube clips and it works fine. However, once I attempted to download a complete YouTube list of clips, with a total size of several tens of GB. Towards the end of the list, after a couple of hours or so, the download was interrupted. Then my IP address was completely banned for YouTube, regardless of the browser used. The ban lasted for a couple of weeks. Now", "context": "", "use_case": "downloading YouTube clips", "switched_from": "", "story": "Cloudflare Turnstile solver library (no headless browser required)"}, {"id": 791672337, "item_id": 49479521, "url": "https://news.ycombinator.com/item?id=49479521", "by": "toomuchtodo", "date": "2026-08-28", "stance": "recommend", "quote": "supporting ingesting music using yt-dlp and libtorrent", "excerpt": "Great work!! Would you be willing to consider supporting ingesting music using yt-dlp and libtorrent, identifying and categorizing those imports using Musicbrainz, and potentially storing them in an S3 compatible target (versus a POSIX filesystem)? Happy to contribute to a tip jar for these feature enhancements and any token costs. https://news.ycombinator.com/item?id=49259861 (last line) https://github.com/yt-dlp/yt", "context": "", "use_case": "ingesting music", "switched_from": "", "story": "Show HN: Fastpotify \u2013 a fast, native Spotify client in Rust and egui"}, {"id": 790500864, "item_id": 49406304, "url": "https://news.ycombinator.com/item?id=49406304", "by": "loveparade", "date": "2026-08-23", "stance": "recommend", "quote": "I download the raw audio track with yt-dlp", "excerpt": "I built my own pipeline for this because in my experience the YouTube auto transcripts are quite bad. I download the raw audio track with yt-dlp, give it to qwen asr for raw transcription, then DeepSeek flash for transcription cleanup, formatting, corrections with web search enabled, etc. I use openrouter to call the models. It's a few cents per video (mostly the asr model at ~12 cents per hour) and quality is great.", "context": "", "use_case": "downloading audio and transcripts", "switched_from": "", "story": "Ask HN: Anyone set up ways to easily obtain and read transcripts from Ted, YT?"}, {"id": 790491344, "item_id": 49405709, "url": "https://news.ycombinator.com/item?id=49405709", "by": "toomuchtodo", "date": "2026-08-23", "stance": "recommend", "quote": "", "excerpt": "https://github.com/yt-dlp/yt-dlp https://news.ycombinator.com/item?id=44381640", "context": "", "use_case": "downloading video transcripts", "switched_from": "", "story": "Ask HN: Anyone set up ways to easily obtain and read transcripts from Ted, YT?"}, {"id": 788540128, "item_id": 49283758, "url": "https://news.ycombinator.com/item?id=49283758", "by": "specproc", "date": "2026-08-13", "stance": "neutral", "quote": "use yt-dlp, BPC, userscripts.", "excerpt": "I pay for content: gig and cinema tickets, merch and digital albums from artists I like or know. I buy loads of books, magazines, digital and physical games, art I can hang on my wall. I've even started a bit of a CD collection. At times I've had Spotify, Netflix and Mubi subscriptions. As a UK-resident with a TV, I pay for the BBC. I feel I more than adequately contribute to cultural production. In some ways, the cu", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "uBlock Origin Is Giving Up the Fight to Keep Ads Off Facebook"}, {"id": 787854049, "item_id": 49240878, "url": "https://news.ycombinator.com/item?id=49240878", "by": "eliorpom", "date": "2026-08-10", "stance": "recommend", "quote": "I found the best downloader out there: yt-dlp.", "excerpt": "Hi HN, I'm Elior, a video editor. Every week, I need to grab something from YouTube, whether it's a sound effect, a music track, or a video clip. I also like having a few videos available offline, for instance, when I'm on a plane. At first, I used online YouTube downloaders to get these assets, but I quickly realized their limitations: tons of ads, countdown timers before the download starts, and getting whatever qu", "context": "video editor", "use_case": "downloading YouTube media", "switched_from": "online YouTube downloaders", "story": "Show HN: TBD: a native, minimalist macOS front end for yt-dlp"}, {"id": 786630625, "item_id": 49164414, "url": "https://news.ycombinator.com/item?id=49164414", "by": "andai", "date": "2026-08-03", "stance": "neutral", "quote": "I have a janky pipeline built on top of yt-dlp", "excerpt": ">the LLM in YouTube Where can I find this one? I have a janky pipeline built on top of yt-dlp and I've been wondering how many more years until they make it so I don't have to do that anymore. (Though sometimes I'll ask Gemini \u2014 the YouTube integration is the only reason I use it these days.)", "context": "", "use_case": "video download pipeline", "switched_from": "", "story": "Ten advances in mathematics and theoretical computer science"}, {"id": 783302777, "item_id": 48956423, "url": "https://news.ycombinator.com/item?id=48956423", "by": "anthk", "date": "2026-07-18", "stance": "neutral", "quote": "For web media I use streamlink and yt-dlp.", "excerpt": "HP mini there, with ZRAM it's really fast. I use Flubox+UXTerm+a bunch of CLI/TUI tools among mpv, nsxiv and mupdf. The OS I use it's hyperbola GNU/Linux, A bit outdated but most modern stuff it's compiled from source. For gaming I have mednafen, frotz, pcsxr, Flare RPG (git), GearHead 1 and 2 and a few more. Oh, and Scummvm with games from Blade Runner to Ultima I-IV, Technobabylon, Virtuaverse, The Longest Journey,", "context": "HP Mini netbook user", "use_case": "video downloading", "switched_from": "", "story": "Reviving a 15-year-old netbook with Arch Linux"}, {"id": 783298117, "item_id": 48956132, "url": "https://news.ycombinator.com/item?id=48956132", "by": "MayeulC", "date": "2026-07-18", "stance": "neutral", "quote": "MPV+yt-dlp for videos", "excerpt": "I still use my Samsung n130, though I went with Alpine after Arch dropped support for 32 bit (there were a few pain points with Arch 32 in the early days, I tried guix but it was too slow and guix uses a lot of RAM during updates). It works decently, is sufficient for ssh-ing into other hosts. Though web browsing is a pain. I used to mostly use Dillo and elinks, MPV+yt-dlp for videos. Unfortunately I left it sit for ", "context": "", "use_case": "fetching videos", "switched_from": "", "story": "Reviving a 15-year-old netbook with Arch Linux"}, {"id": 783087152, "item_id": 48942947, "url": "https://news.ycombinator.com/item?id=48942947", "by": "QuercusMax", "date": "2026-07-16", "stance": "recommend", "quote": "I've built myself a yt-dlp-based system to pipe audio into my multiroom audio system", "excerpt": "I pay for Youtube premium, which gives me unlimited Youtube Music usage with no ads. Yet I've built myself a yt-dlp-based system to pipe audio into my multiroom audio system (built on Snapcast). It will cache things locally so they play instantly, and I can mix my own music library with stuff from Youtube Music seamlessly, which is impossible with non-piratical means.", "context": "", "use_case": "pipe YouTube audio to multiroom", "switched_from": "", "story": "As a musician, I prefer illegal downloading over Spotify (2011)"}, {"id": 782105328, "item_id": 48881583, "url": "https://news.ycombinator.com/item?id=48881583", "by": "TacticalCoder", "date": "2026-07-12", "stance": "warn", "quote": "It works, then doesn't anymore.", "excerpt": "BTW the year is 2026 and we've got LLMs, is there, at long last, an easy way to have an YouTube downloader I can run in a container (say with Podman) that actually works? Do I need to be logged in with a Google account for it to work? I always, since decades I want to say, ran into troubles whenever I download Youtube vids (no matter which tool I use, yt-dlp or other). It works, then doesn't anymore. Are you simply, ", "context": "", "use_case": "downloading YouTube videos", "switched_from": "", "story": "Yt-Dlp Sequence Diagrams"}, {"id": 780591472, "item_id": 48786967, "url": "https://news.ycombinator.com/item?id=48786967", "by": "davydm", "date": "2026-07-04", "stance": "recommend", "quote": "at least yt-dlp will shard out multiple piece-downloaders, and I can get the video in a few seconds or minutes", "excerpt": "yeah, i use that often, eg when a video is slow on a website - at least yt-dlp will shard out multiple piece-downloaders, and I can get the video in a few seconds or minutes, and just watch it. Also great for anonymizing sharing videos - download the actual video, share that. Not an url (: In much the same vein, I rarely actually watch stuff _on_ netflix, through a browser - I watch sped up, and the quality just degr", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Rob Pike \u2013 'Concurrency Is Not Parallelism' [video]"}, {"id": 778331109, "item_id": 48645694, "url": "https://news.ycombinator.com/item?id=48645694", "by": "unmanageduck", "date": "2026-06-23", "stance": "recommend", "quote": "Video downloader: Yt-dlp", "excerpt": "Package manager: Nix(alternative to homebrew) https://nixos.org/download/#nix-install-macos Package management: Nix-darwin https://github.com/nix-darwin/nix-darwin Browsers: - Librewolf https://librewolf.net - Tor https://www.torproject.org - Orion https://orionbrowser.com Video downloader: Yt-dlp https://github.com/yt-dlp/yt-dlp Video/audio player: Mpv https://github.com/mpv-player/mpv Video editor: LosslessCut http", "context": "", "use_case": "video downloading", "switched_from": "", "story": "Ask HN: New clean macOS install. Must-have apps? Best browser?"}, {"id": 775805376, "item_id": 48487836, "url": "https://news.ycombinator.com/item?id=48487836", "by": "dlcarrier", "date": "2026-06-11", "stance": "recommend", "quote": "It is a well simplified wrapper around the hot mess that is needed to convince YouTube that you're actually using using a web browser.", "excerpt": "It is a well simplified wrapper around the hot mess that is needed to convince YouTube that you're actually using using a web browser.", "context": "", "use_case": "downloading YouTube videos", "switched_from": "", "story": "Ask HN: What software feels exceptionally polished?"}, {"id": 775780144, "item_id": 48486259, "url": "https://news.ycombinator.com/item?id=48486259", "by": "nan60", "date": "2026-06-10", "stance": "recommend", "quote": "yt-dlp feels so perfect for what it was designed to do.", "excerpt": "I don't know if its polished in the traditional sense, but yt-dlp feels so perfect for what it was designed to do.", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: What software feels exceptionally polished?"}, {"id": 775209473, "item_id": 48450592, "url": "https://news.ycombinator.com/item?id=48450592", "by": "epiccoleman", "date": "2026-06-08", "stance": "neutral", "quote": "a little CLI wrapper around yt-dlp for my most common use cases", "excerpt": "All kinds of random stuff really, but to filter it down to only the noteworthy ones: Tuber[0] - this is my favorite, use it multiple times a week. It's just a little CLI wrapper around yt-dlp for my most common use cases - downloading the video, or the audio, or the subs. And then, if you've got the Claude CLI installed, it can also shoot the subs through Claude for a summary. I use it all the time, it's a great litt", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: What are tools you have made for yourself since the advent of AI"}, {"id": 774750226, "item_id": 48421889, "url": "https://news.ycombinator.com/item?id=48421889", "by": "picofarad", "date": "2026-06-05", "stance": "recommend", "quote": "works on a surprising number of video sites", "excerpt": "I have deepseek or grok write bash-likes in pwsh often enough to wonder what sort of things you're doing in pwsh... I use it to wrap ping.exe with colors and fewer columns, for example. yt-dlp wrapper to fetch 480p bestaudio with English subtitles, no playlist, works on a surprising number of video sites. It does make cmdlets up, you're right, there.", "context": "", "use_case": "downloading video audio with subtitles", "switched_from": "", "story": "What was your \"Oh Shit\" moment with GenAI?"}, {"id": 772964528, "item_id": 48310283, "url": "https://news.ycombinator.com/item?id=48310283", "by": "pmdr", "date": "2026-05-28", "stance": "neutral", "quote": "downloading videos with yt-dlp instead of paying for YT Premium", "excerpt": "Alternative search engines are popular with the tech/HN bubble. Other than Bing, they have no palpable market share. Google does not care about said bubble because it mostly overlaps people who would use an adblocker anyway and who are capable of finding their way around other for-profit restrictions (i.e. downloading videos with yt-dlp instead of paying for YT Premium). DDG has <1% market share, so +28%, while encou", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "DuckDuckGo search saw 28% more visits after Google said people love AI mode"}, {"id": 772063233, "item_id": 48253952, "url": "https://news.ycombinator.com/item?id=48253952", "by": "sombragris", "date": "2026-05-23", "stance": "neutral", "quote": "I use Deno since yt-dlp required a JS engine and recommended it.", "excerpt": "My perspective is that of an user, not a developer. I use Deno since yt-dlp required a JS engine and recommended it. So while I don't use it for development, I have to build it for my system. This software is a beast to build and package. On first compilation, it spent like ~5-6 hours just pulling Rust crates. This time thankfully was significantly reduced once the relevant packages were in cargo cach\u00e9; only the chan", "context": "", "use_case": "video downloading", "switched_from": "", "story": "Deno 2.8"}, {"id": 768436080, "item_id": 48027255, "url": "https://news.ycombinator.com/item?id=48027255", "by": "zoogies", "date": "2026-05-05", "stance": "neutral", "quote": "I used yt-dlp to rip bodycam videos from youtube", "excerpt": "I've always enjoyed watching police bodycam videos and finding out that it was close to me, so I was surprised when I found out that nobody had tried to make an explorable map of them yet. I used yt-dlp to rip bodycam videos from youtube, distil-large-v3 to extract transcripts on my rtx 3070, and deepseek-v4-flash to output classifications. I host the entire thing on GitHub pages with an issue/PR system that allows t", "context": "", "use_case": "downloading videos", "switched_from": "", "story": "Interactive US police bodycam map"}, {"id": 764422512, "item_id": 47776407, "url": "https://news.ycombinator.com/item?id=47776407", "by": "shevy-java", "date": "2026-04-15", "stance": "recommend", "quote": "if I need a good song I use yt-dlp on youtube and get it these days", "excerpt": "I used libgen quite a lot; new books were hard to find there, but many old books were available. Then libgen was kind of eliminated by the mega-corporation alliance. The latter is very hypocritical - see Meta and others sniffing off data to train for AI. Anna's Archive kind of semi-replaced libgen (a few libgen mirrors are sometimes back up but then disappear again) but for various reasons I don't quite like Anna's A", "context": "", "use_case": "downloading songs", "switched_from": "", "story": "Anna's Archive Loses $322M Spotify Piracy Case Without a Fight"}, {"id": 763897251, "item_id": 47743578, "url": "https://news.ycombinator.com/item?id=47743578", "by": "spudlyo", "date": "2026-04-12", "stance": "neutral", "quote": "tools such as yt-dlp and patreon-dl to grab Latin-language audio content", "excerpt": "I'm writing an essay about how I use an ancient text editor, GNU Emacs, along with gptel, Gemini, some local models, yt-dlp, and patreon-dl to help me me study an ancient language, Latin. I want to show how I liberate poorly aligned, pixelated PDF image scans of century-old Latin textbooks from the Internet Archive and transform them into glorious Org mode documents while preserving important typographic details, nic", "context": "", "use_case": "downloading audio", "switched_from": "", "story": "Ask HN: What Are You Working On? (April 2026)"}, {"id": 763650450, "item_id": 47728153, "url": "https://news.ycombinator.com/item?id=47728153", "by": "FuzjaJadrowa", "date": "2026-04-10", "stance": "recommend", "quote": "I've been using yt-dlp and ffmpeg extensively for a while now", "excerpt": "Hi HN, I've been using yt-dlp and ffmpeg extensively for a while now, but I've always fiddled with terminal commands or used clunky online tools that aren't always reliable. While there are plenty of downloaders and converters on the market, I wanted to make something myself, just for fun. I wanted a dedicated, locally focused interface that combined downloading, conversion, and compression in one place. I initially ", "context": "", "use_case": "downloading video", "switched_from": "", "story": "Pulsar \u2013 Lightweight cross-platform GUI for FFmpeg and yt-dlp, built with Tauri"}, {"id": 762444561, "item_id": 47652785, "url": "https://news.ycombinator.com/item?id=47652785", "by": "TomatoProgram", "date": "2026-04-05", "stance": "neutral", "quote": "it runs yt-dlp via Pyodide and ffmpeg.wasm entirely in the browser", "excerpt": "I wanted to see if I could build a video downloader that didn't rely on a massive backend to do the heavy lifting. I made www.ultimadownloader.xyz and the secret is that it runs yt-dlp via Pyodide and ffmpeg.wasm entirely in the browser. Feel free to poke around and give it a shot. I would love feedback and ideas on what to add later (I plan on adding more sites and such). If you find any issues, please let me know. ", "context": "", "use_case": "video downloading engine", "switched_from": "", "story": "I ported yt-dlp to WebAssembly to create a 100% client-side media downloader"}, {"id": 761459104, "item_id": 47591194, "url": "https://news.ycombinator.com/item?id=47591194", "by": "entropie", "date": "2026-03-31", "stance": "neutral", "quote": "Keeping yt-dlp up2date (and therefore) working is not that easy", "excerpt": "Which in the case of yt-dlp might not be fast enough. I use a telegram/mqtt/homeassistant wrapper (1) to let my mother download audiobooks which are saved in jellyfin so she can listen or download them from my (home)server. Keeping yt-dlp up2date (and therefore) working is not that easy, especially since I dont systemupdate every other week. There were a few phases yt-dlp version in nixpkgs-unstable were just not wor", "context": "runs home server", "use_case": "downloading audiobooks", "switched_from": "", "story": "Tell HN: Chrome says \"Suspicious Download\" when trying to download yt-dlp"}, {"id": 758257266, "item_id": 47391079, "url": "https://news.ycombinator.com/item?id=47391079", "by": "aadishv", "date": "2026-03-15", "stance": "neutral", "quote": "get the URL to pass to yt-dlp", "excerpt": "Someone already made a great agent skill for this, which I'm using daily, and it's been very cool! https://github.com/pasky/chrome-cdp-skill For example, I use codex to manage a local music library, and it was able to use the skill to open a YT Music tab in my browser, search for each album, and get the URL to pass to yt-dlp. Do note that it only works for Chrome browsers rn, so you have to edit the script to point t", "context": "", "use_case": "download music", "switched_from": "", "story": "Let your Coding Agent debug the browser session with Chrome DevTools MCP"}, {"id": 756858931, "item_id": 47303683, "url": "https://news.ycombinator.com/item?id=47303683", "by": "spudlyo", "date": "2026-03-08", "stance": "neutral", "quote": "tools such as yt-dlp and patreon-dl to grab Latin-language audio content", "excerpt": "I'm writing an essay where I get into how I use GNU Emacs along with gptel (a simple LLM client for Emacs) and Google's Gemini-3 family of models to turn a 1970s-vintage text editor into a futuristic language-learning platform to help me study Latin. I want to show how I liberate poorly aligned, pixelated PDF image scans of century-old Latin textbooks from the Internet Archive and transform them into glorious Org mod", "context": "", "use_case": "downloading Latin audio", "switched_from": "", "story": "Ask HN: What Are You Working On? (March 2026)"}, {"id": 755919425, "item_id": 47244964, "url": "https://news.ycombinator.com/item?id=47244964", "by": "hn_throw2025", "date": "2026-03-04", "stance": "neutral", "quote": "anti burn-in videos downloaded with yt-dlp", "excerpt": "I use two LG 5K Ultrafine models. The quality is fantastic. Only two things to watch out for. The first is burn-in. I now move windows about when I can, and also tend to use Dark mode for everything. I also set up BetterTouchTool to give me 10%, 20%, 30% etc brightness mapped to Cmd plus the numeric keypad. I use a comfortable level of brightness, and only bump it up for a short while when I need to examine something", "context": "", "use_case": "downloading anti burn-in videos", "switched_from": "", "story": "Mac external displays for designers and developers, part 2"}, {"id": 749695377, "item_id": 46855961, "url": "https://news.ycombinator.com/item?id=46855961", "by": "ce4", "date": "2026-02-02", "stance": "neutral", "quote": "YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\"", "excerpt": "I use it for lots of stuff, remote scanning from an old Canon flatbed scanner attached to my NAS (powered by a really ugly phone-local bash script, nothing else), rsync, renames (or the like using one liners), ssh tunnels to different destinations (to circumvent IP blockages) and of course YT downloads (using the source git folder and running it using \"python -m yt_dlp $OPTIONS $URL\" - when it breaks, a git pull is a", "context": "", "use_case": "YouTube downloads", "switched_from": "", "story": "Termux"}, {"id": 748503681, "item_id": 46781480, "url": "https://news.ycombinator.com/item?id=46781480", "by": "simonw", "date": "2026-01-27", "stance": "recommend", "quote": "I used ffmpeg and yt-dlp to make an animated GIF of a k\u0101k\u0101p\u014d", "excerpt": "I used ffmpeg and yt-dlp to make an animated GIF of a k\u0101k\u0101p\u014d in her nest from a livestream on YouTube the other day. https://simonwillison.net/2026/Jan/25/kakapo-cam/ Much as I love k\u0101k\u0101p\u014d there is no way I was going to invest more than a few minutes in figuring out how to do that. I love this new world where I can \"delegate my thinking\" to a computer and get a GIF of a dumpy New Zealand flightless parrot where I wou", "context": "", "use_case": "downloading livestream video", "switched_from": "", "story": "ChatGPT Containers can now run bash, pip/npm install packages and download files"}, {"id": 742935824, "item_id": 46433489, "url": "https://news.ycombinator.com/item?id=46433489", "by": "oldsklgdfth", "date": "2025-12-30", "stance": "recommend", "quote": "If I want something new I use yt-dlp and get specific songs.", "excerpt": "In the past year I bought a Ruizu clip-on MP3 player. If I want something new I use yt-dlp and get specific songs. It's nice having a device not connected to the internet. In the past I used jellyfin.", "context": "", "use_case": "downloading songs", "switched_from": "", "story": "Ask HN: How to go back to listening to MP3s?"}, {"id": 734415472, "item_id": 45900967, "url": "https://news.ycombinator.com/item?id=45900967", "by": "rob", "date": "2025-11-12", "stance": "recommend", "quote": "It's been working great by itself for the most part since the beginning of the year", "excerpt": "We use this for AI transcriptions internally on our Linode VPS server. It's been working great by itself for the most part since the beginning of the year, with only a couple of hiccups along the way. We do use a custom cookies.txt file generated on the server as well as generate a `po_token` every time, which seems to help. (I originally thought everything would just get blocked from a popular VPS provider, but surp", "context": "runs it on a Linode VPS", "use_case": "AI transcription pipeline downloads", "switched_from": "", "story": "Yt-dlp: External JavaScript runtime now required for full YouTube support"}, {"id": 734396288, "item_id": 45899768, "url": "https://news.ycombinator.com/item?id=45899768", "by": "bdz", "date": "2025-11-12", "stance": "recommend", "quote": "I use yt-dlp (and back then youtube-dl) all the time to archive my liked videos.", "excerpt": "I use yt-dlp (and back then youtube-dl) all the time to archive my liked videos. Started back in around 2010, now I have tens of thousands of videos saved. Storage is cheap and a huge percent of them are not available anymore on the site. I also save temporary videos removed after a time for example NHK honbasho sumo highlights which are only available for a month or so then they permanently remove them.", "context": "", "use_case": "archiving liked videos", "switched_from": "youtube-dl", "story": "Yt-dlp: External JavaScript runtime now required for full YouTube support"}, {"id": 733913025, "item_id": 45869564, "url": "https://news.ycombinator.com/item?id=45869564", "by": "Elfener", "date": "2025-11-09", "stance": "recommend", "quote": "yt-dlp thankfully works", "excerpt": "I've switched to watching youtube videos using mpv. yt-dlp thankfully works, and this way, I can watch the video any way I want.", "context": "", "use_case": "playing YouTube videos in mpv", "switched_from": "", "story": "YouTube A/B testing removing playback speed controls"}, {"id": 733762864, "item_id": 45860179, "url": "https://news.ycombinator.com/item?id=45860179", "by": "al_borland", "date": "2025-11-08", "stance": "recommend", "quote": "It\u2019s worked on pretty much everything I\u2019ve tried it on so far.", "excerpt": "I end up using yt-dlp on macOS/Linux to download videos if needed. It\u2019s worked on pretty much everything I\u2019ve tried it on so far. Though admittedly not at seamless as a button being injected into the page itself.", "context": "macOS/Linux user", "use_case": "downloading videos", "switched_from": "", "story": "Ask HN: Windows/Linux software that has no real equivalent on macOS?"}, {"id": 733148352, "item_id": 45821772, "url": "https://news.ycombinator.com/item?id=45821772", "by": "simonw", "date": "2025-11-05", "stance": "neutral", "quote": "I pulled the quote by using yt-dlp to grab the MP4", "excerpt": "This quote is pulled from a TikTok, I recommend watching the whole thing here: https://www.tiktok.com/@belligerentbarbies/video/7568380008633257271 (I pulled the quote by using yt-dlp to grab the MP4 and then running that through MacWhisper to generate a transcript.)", "context": "", "use_case": "downloading video", "switched_from": "", "story": "I\u2019m worried that they put co-pilot in Excel"}]}