Live data from Hacker News

A cross platform front-end GUI of the popular YouTube-dl written in wxPython

github.com

21–30 of 66 posts

Re: A cross platform front-end GUI of the popular YouTube-dl written in wxPython

#21
post #3

I'm curious what is the reason for a GUI for such a simple utility? The command line for this kind of tool seems like the perfect interface. Just copy a URL, paste it, press enter. No buttons to press, etc.

An interactive UI allows for more fluent authentication, choice of resolution to download, filename, etc. Default values can be modified instead of being specified from scratch (filename again). Other benefits I'm not thinking of off the top of my head.

Re: A cross platform front-end GUI of the popular YouTube-dl written in wxPython

#23
post #14

As someone who has been working with Python a lot up to this year, I am wondering has the state of GUI frameworks improved for Python in the recent months/years? If I want to have, lets say, an application that looks (and works) like a native MacOS or Windows application, would I bet able to do that? All of the examples look really odd, with weird buttons and simply not feeling like native apps.

wxWidgets does use native controls so should feel like a native app. Sadly this is its only redeeming feature.

Re: A cross platform front-end GUI of the popular YouTube-dl written in wxPython

#24
post #14

As someone who has been working with Python a lot up to this year, I am wondering has the state of GUI frameworks improved for Python in the recent months/years? If I want to have, lets say, an application that looks (and works) like a native MacOS or Windows application, would I bet able to do that? All of the examples look really odd, with weird buttons and simply not feeling like native apps.

Yes, it would possible to develop a GUI that looks native, but from my experience and those of others it's rather a hassle when you try to make something more complex.

Re: A cross platform front-end GUI of the popular YouTube-dl written in wxPython

#25

youtube now throttling downloads right? or is there a workaround?

There are workarounds (detailed very nicely in dirkf’s pull request for youtube-dl):

https://github.com/ytdl-org/youtube-dl/pull/30184

Pasting the content here for convenience:

Since summer 2021, YouTube has started serving media URLs with a query parameter such as …&n=SXiXBH-xzrjeioPN&…. This now appears to be the default behaviour. Unless the value of this parameter is transformed according to an algorithm delivered in the site player JS, the download speed for the URL is throttled to ~50kB/s.

Solutions for this include:

• implementing a more complete JS interpreter, eg based on PR [jsinterp] Actual JS interpreter¹ #11272;

• using an external JS interpreter (PhantomJS, now unmaintained, is used by some extractors);

• spoofing the Android or iOS client to acquire unthrottled links, as successfully implemented in yt-dlp².

This PR takes a different approach derived from the successful solution used in VLC's youtube.lua (also implemented differently in pytube³). The approach relies on the fact that the challenge algorithm is served in a mini-language within the minified player JS and therefore the specific algorithm can be extracted and executed by interpreting the mini-language without actually running the JS itself. [In parallel with this PR, a separate implementation of this approach was added to yt-dlp⁴.]

The implementation of the mini-language interpreter is directly translated from VLC's n_descramble() Lua function⁵. The result sufficiently resembles the original that it should be straightforward to share changes between the two implementations.

――――――

¹ — https://github.com/ytdl-org/youtube-dl/pull/11272

² — https://github.com/yt-dlp/yt-dlp/commit/c888ffb95ab0ab4f4cd1...

³ — https://github.com/tfdahlin/pytube/blob/bb890af3b271a616bbe1...

⁴ — https://github.com/yt-dlp/yt-dlp/commit/404f611f1c4aa516fbc4...

⁵ — https://code.videolan.org/videolan/vlc/-/blob/4fb284e5af69aa...

Re: A cross platform front-end GUI of the popular YouTube-dl written in wxPython

#30
post #5

That project is abandoned. There is an ongoing fork called youtube-dl-gui: https://github.com/oleksis/youtube-dl-gui And an alternative called tartube: https://github.com/axcore/tartube

A cross-platform GUI for YouTube-dl ( https://github.com/jely2002/youtube-dl-gui ) 429 points|ducktective|2 months ago|151 comments https://news.ycombinator.com/item?id=28478603

Came here to recommend the jely2002 project. You can swap out the YouTube-dl binary with the fork if you want (you need to rename it) and the dev is looking into implementing features from the fork into their project. Really good for people who need to work with less tech-savvy coworkers who need to download video files
Post reply on HN