Live data from Hacker News

Yt-dlp: External JavaScript runtime now required for full YouTube support

github.com

621–630 of 646 posts

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#621

Earlier quoted context omitted.

It depends on a lot of factors. But even if it works in a virtual machine, your CPU is going to be pegged at 100% the whole time to handle the re-encoding. Unless you use a hardware h.264 encoder, but then the quality is pretty terrible since it's explicitly optimized for speed over quality and isn't tunable the way software encoders are. It's always doable, it's just an option of last resort. You always just want to…

I think the real key is to only compress enough initially so that you don't blow out your storage in terms of size and throughput... Once you have the stream captured at a higher quality, you can always recompress more optimally. A relatively low compression with hardware h.264 will still take up a lot less space and throughput than mpeg-2 or raw.

The ultimate hack would be to intercept the data stream after the decryption, but before the decoding, so you get still-compressed H264 or whatever...

I suppose it's possible that they use a codec where the decryption also means decompression...

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#622
post #478
post #421

Earlier quoted context omitted.

I use Firefox with uBlock and besides a couple of times where video start was delayed by a few seconds it has been working as well as before.

For the last two days I haven't been able to watch youtube videos on Firefox without disabling uBlock.

I had the same problem. Make sure you're running the latest version of uBlock Origin. By that I mean you should explicitly check for updates and install the latest version. That fixed it for me.

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#623
post #239

Earlier quoted context omitted.

I might be recalling it wrong,but I remember reading that there was some old hardware that refused to record protected TV/Movies probably a VCR or a DVR. Camera manufacturers can easily refuse to record a stream of they detect it is protected, may be via watermarks or other sidechannel.

HDCP is how modern digital displays (and digital display recorders) do it. You might be thinking of Macrovision, which was integrated in a lot of DVD players and would embed pulses into the vertical blanking interval of the analogy video output. These pulses could be detected by compliant DVD recorders and used to refuse recording. The pulses would also cause playback defects in some older VCRs and TVs. I remember co…

> HDCP is how modern digital displays (and digital display recorders) do it.

But that's inside the system. I'm talking about recording the physical output, i.e. the screen itself. With a controlled environment, known screen characteristics, I would hope that an external recorder + post-processing can create high quality images or video.

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#624
Before you blame Google, think that the main users of yt-dlp could be:

1) multi-billion AI companies which download large amount of videos without permission and without paying

2) Youtube competitors/replacements in countries where Youtube is blocked, which copy the videos without permission and payment

I wish though that Youtube would adjust their policy to block this type of users and let ordinary people download videos.

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#625

Before you blame Google, think that the main users of yt-dlp could be: 1) multi-billion AI companies which download large amount of videos without permission and without paying 2) Youtube competitors/replacements in countries where Youtube is blocked, which copy the videos without permission and payment I wish though that Youtube would adjust their policy to block this type of users and let ordinary people download v…

> this type of user

They are undifferentiable from ordinary users.

And what about users who do adblocking? They are also "not paying" in the same sense - how come they're not included in your list?

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#626

Earlier quoted context omitted.

Exactly. I could never maintain yt-dlp. Must be exhausting.

I think being in a pitched battle with YT is kind of fun, if you enjoy that sort of challenge, and winning to boot. I mean YT has perfect knowledge of its adversary's moves and a huge staff and they're still losing. It must at least be satisfying. Also its an important job.

> a huge staff and they're still losing.

that's because these staff are just there for a pay cheque.

The yt-dlp maintainers are passionate. You will find that the passion wins.

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#627
post #625

Before you blame Google, think that the main users of yt-dlp could be: 1) multi-billion AI companies which download large amount of videos without permission and without paying 2) Youtube competitors/replacements in countries where Youtube is blocked, which copy the videos without permission and payment I wish though that Youtube would adjust their policy to block this type of users and let ordinary people download v…

> this type of user They are undifferentiable from ordinary users. And what about users who do adblocking? They are also "not paying" in the same sense - how come they're not included in your list?

They are distinguished by volume. No ordinary user downloads millions of videos.

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#628
post #625

Earlier quoted context omitted.

> this type of user They are undifferentiable from ordinary users. And what about users who do adblocking? They are also "not paying" in the same sense - how come they're not included in your list?

They are distinguished by volume. No ordinary user downloads millions of videos.

> No ordinary user downloads millions of videos.

why not? If that ordinary user wants to train their own model? Now you're not allowing such things to be done?

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#629
post #308

Earlier quoted context omitted.

Making a profit doesn't mean that their costs aren't so high that adblocking isn't compatible. Walmart has profits of $157B in 2024, but their business model isn't compatible with people just walking in and grabbing stuff without paying - and doesn't make it ethical to do so even if "they'll be just fine even if I do that"

I don't see how ad-blocking is unethical. There are companies that make money by placing ("out of home") ads in the public space. Not looking at those would then also be unethical? Priests sermoning on "thou shalt not hide thy eyes from the fancy displays in the bus stop"? An ad-police, the Conscious Ethical Viewing Effort Force Edict? That's some low-key dystopian thought.

The implicit contract is that you see the content while letting the ads that support it play. If you disagree with ads, the ethical choice is to not watch the video, not to leech.

It's also ethical to change browser tabs or leave the room while the ad plays, but blocking it and costing the provider money while not contributing back is not.

Re: Yt-dlp: External JavaScript runtime now required for full YouTube support

#630
post #96

Earlier quoted context omitted.

You people always make everything more complicated than necessary. yt-dlp -o '%(uploader)s/%(upload_date)s - %(title)s [%(id)s].%(ext)s' --cookies-from-browser chrome https://www.youtube.com/playlist?list=LL

I'm also not a fun of such overengineered programs, but using raw yt-dlp alone is not enough for replicating full workflow. Your command is nice for downloading a single video (I also provide a url from clipboard via xclip), but archiving videos daily from a list of favorite channels would require a bit more scripting. Didn't manage to find anything both minimal and popular to link instead.

It doesn't download just a single video – it downloads all your liked videos with some reasonable sorting.

Put your favorite channels' and playlists' URLs into a text file and use the "-a file.txt" flag to batch download. Use "--dateafter {date of 3 days ago}" to download only the latest videos. Adapt as needed.

Post reply on HN