ErrorFlynn / ytdlp-interface

Windows graphical interface for yt-dlp, designed as a simple YouTube downloader
MIT License
1.1k stars 58 forks source link

Compensate possible censorship or bugs of yt-dlp with new download engines #137

Closed trimechee closed 4 months ago

trimechee commented 6 months ago

Hello, thank you so much for this great amazing downloader ! 🥇

I know the integration of yt-dlp is already very complex and complicated but I would like to suggest my discoveries of new download engines because perhaps yt-dlp will once again undergo censorship or deletion from github....

thus the support of other download engines would make it possible to circumvent the possible problems and censorship of yt-dlp and make the download eat even stronger and support new sites....of course we know it is technically impossible to add the support for all these machines, so we hope to please select only one or 2 download engines to add and strengthen support for the m3u8 protocol for example in order to download from even more web sites and possibly overcome eventual yt-dlp bugs and even more speed up downloads , thank you very much !

https://github.com/emarsden/dash-mpd-cli

this download engine can download media content from a DASH-MPEG or DASH-WebM MPD manifest !

"This application is able to download content from certain streams that do not work with other applications (for example xHE-AAC streams which are currently unsupported by ffmpeg, streamlink, VLC, gstreamer)."

DASH features supported VOD (static) stream manifests Multi-period content XLink elements (only with actuate=onLoad semantics), including resolve-to-zero All forms of segment index info: SegmentBase@indexRange, SegmentTimeline, SegmentTemplate@duration, SegmentTemplate@index, SegmentList Media containers of types supported by mkvmerge, ffmpeg or VLC (this includes ISO-BMFF / CMAF / MP4, WebM, MPEG-2 TS) Subtitles: preliminary download support for WebVTT, TTML and SMIL streams, as well as some support for the wvtt format

hlsdl : C program to download VoD HLS (.m3u8) files, it seems that some people said ffmpeg could have some problems with hls streams...

https://github.com/selsta/hlsdl

and this software : python m3u8 Parser for HTTP Live Streaming (HLS) Transmissions :

https://github.com/globocom/m3u8

https://github.com/nilaoda/N_m3u8DL-CLI

https://github.com/nilaoda/N_m3u8DL-RE

https://github.com/soimort/you-get

https://github.com/iawia002/lux

https://github.com/nilaoda/BBDown

https://github.com/kanishka-linux/hlspy

https://github.com/streamlink/streamlink

https://github.com/zaidka/cliget

https://github.com/globocom/m3u8

https://github.com/HeiSir2014/M3U8-Downloader

https://github.com/hestyle/m3u8_downloader

https://github.com/kz26/gohls

https://github.com/Last-Order/Minyami

https://github.com/Momo707577045/m3u8-downloader

https://github.com/Momo707577045/media-source-extract

https://github.com/nilaoda/N_m3u8DL-RE

https://github.com/puemos/hls-downloader

https://github.com/Spark-NF/hls-downloader

https://github.com/Momo707577045/m3u8-downloader/blob/master/README-EN.md https://github.com/Momo707577045/media-source-extract

https://github.com/mikf/gallery-dl

https://aria2.github.io/

https://www.gnu.org/software/wget/

https://github.com/hoothin/UserScripts

https://github.com/acolwell/mse-tools

https://github.com/zhw2590582/live-video-study-notes

https://github.com/dabaisuv/Tampermonkey-Script https://greasyfork.org/fr/users/901788-dabaisuv Unlimited_downloader by dabaisuv https://greasyfork.org/fr/scripts/445751-unlimited-downloader https://www.v2ex.com/t/856510

https://greasyfork.org/en/scripts/25068-downloadallcontent

https://greasyfork.org/en/scripts/7362-true-url-downloads

https://greasyfork.org/en/scripts/22590-easy-offline

https://github.com/dodying/UserJs/tree/master/novel/novelDownloader

https://greasyfork.org/en/users/8227-hoothin

https://greasyfork.org/en/scripts/446385-download-any-thing

https://greasyfork.org/fr/scripts/445751-unlimited-downloader

https://github.com/Momo707577045/m3u8-downloader/blob/master/README-EN.md

https://greasyfork.org/en/scripts/18671-inject2download

ArtPlayer.js is a modern and full featured HTML5 video player

https://github.com/zhw2590582/ArtPlayer

https://artplayer.org/

https://www.v2ex.com/t/856510

https://github.com/zhw2590582/bilibili-live-recorder

dabaisuv/Tampermonkey-Script@d109782

https://segmentfault.com/a/1190000025182822

Girdplayer has integrated this software streamlink : https://github.com/vzhd1701/gridplayer#features https://github.com/streamlink/streamlink

https://github.com/zhw2590582/FlvPlayer

https://flvplayer.js.org/

extensions web browsers downloaders

https://github.com/chandler-stimson/live-stream-downloader https://webextension.org/listing/hls-downloader.html

https://github.com/puemos/hls-downloader https://puemos.gitbook.io/hls-downloader/

rowrawer https://github.com/54ac/stream-detector https://github.com/rowrawer/stream-detector https://54ac.bio/

https://github.com/ray-lothian/Easy-Video-Downloader https://webextension.org/listing/easy-video-downloader.html

https://github.com/inbasic/bulk-media-downloader https://github.com/inbasic/turbo-download-manager-v2

https://www.downthemall.org/

https://github.com/rowrawer/stream-detector/

https://github.com/meowcateatrat/elephant

https://github.com/FreeDownloadManagerTeam/fdm-addons-docs

https://github.com/inbasic/bulk-media-downloader/

https://github.com/downthemall/downthemall

https://github.com/chandler-stimson/live-stream-downloader

https://chrome.google.com/webstore/detail/m3u8-finder-and-hls-playe/gijhpnmjcpbddpedmmdihijogkkejfgj?hl=en

https://www.hlsloader.com/

https://github.com/rowrawer/stream-detector

ErrorFlynn commented 4 months ago

As far as I can tell, a download engine can't replace yt-dlp because it doesn't extract the download link from web pages. You have to feed it the link manually, or have yt-dlp do it by using the download engine (aria2c for example) as an external downloader (by passing --downloader [PROTO:]NAME to yt-dlp).

Even if that were not the case, I wouldn't be willing to integrate another download tool, because it just complicates things too much. I'd rather make a different, dedicated GUI for it instead.

If yt-dlp gets removed from GitHub, you can use the fork ytdl-patched instead, which is already fully supported by ytdlp-interface. If that gets removed too, then I guess we're f-ed.

Incidentally, I just released v2.13 which fully supports aria2c as an external downloader for yt-dlp (you have to use --downloader aria2c as a custom argument).

trimechee commented 4 months ago

Ouahh great amazing ! Thank you so much for your precious help ! 💯 🥇