Jump to content

Who here has a Youtube-DL compile for WinXP?


j7n

Recommended Posts

17 hours ago, nicolaasjan said:

Today, I just uploaded version 2023.05.23, built from a19855f, to avoid any further confusion.

Thanks for your prompt reply and further actions :) :wub: ; it is rather unfortunate that "youtube-dl.exe", in contrast to "yt-dlp_x86.exe", doesn't provide any indication at all, when invoked in verbose ([debug]) mode, of the code snapshot it's been built from :(...

17 hours ago, nicolaasjan said:

(with an extra fix for Redtube (NSFW) included (PR #29318))

... If I'm counting right :whistle:, on top of yt-dl's master branch, your yt-dl compiles also include PRs #29318, #29581, #29593, #30998 , plus enabling of Lazy Extractors; am I missing anything else? ;)

17 hours ago, nicolaasjan said:

You don't have FFmpeg installed?

... Not system wide, i.e. in %PATH%; I usually place ffmpeg.exe+ffprobe.exe adjacent to youtube-dl.exe or specify their specific directory via the " --ffmpeg-location" command line (or config) option:

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--ffmpeg-location', '.\\FFmpeg', '--external-downloader-args', '-v 8 -stats', '-v']
[debug] Encodings: locale cp1253, fs mbcs, out cp737, pref cp1253
[debug] youtube-dl version 2023.05.25.19419 (single file build)
[debug] Python 3.4.4 (CPython x86 32bit) - Windows-Vista-6.0.6003-SP2 - OpenSSL 1.0.2d 9 Jul 2015
[debug] exe versions: ffmpeg n6.1-dev-804-N-110688-g1aeefc4, ffprobe n6.1-dev-804-N-110688-g1aeefc4, phantomjs 2.1.1, rtmpdump 2.4
[debug] Proxy map: {}
Usage: youtube-dl [OPTIONS] URL [URL...]
Edited by VistaLover
Link to comment
Share on other sites


On 5/18/2023 at 8:05 AM, silverni said:

In my system VLC is less effective than SMPLayer and MPV for streaming


url Youtube --> yt-dlp --> MPlayer

https://frippery.org/busybox/
BusyBox is a single binary that contains many common Unix tools.

Executing Bash scripts on Windows
busybox.exe sh "YT-ytdl-MP,sh"

----- "YT-ytdl-MP,sh" ---------------------------------------------------
-------------------------------------------------------------------------
#!/bin/bash


echo -e "\033]0;YT-ytdl-MP\007"
echo -e "\e[1;32m"

# home
cd ~
# path yt-dlp
cd "./Documents/Softw-Portable/yt-dlp-x86-WXP"
# path mplayer-exe
mplayer="../mplayer/mplayer.exe"
# proxy
# export http_proxy='http://127.0.0.1:8118'


echo '.'
echo '-------------------------------------------------------------------------'
echo '            ---------YouTube---yt-dlp---Mplayer-------------'
echo '-------------------------------------------------------------------------'
echo '........ Format Video(480p)+ Audio'
echo '........ youtube link ... https://www.youtube.com/watch?v=T9s97sDe0pk'
echo '........ youtube video ID ... T9s97sDe0pk'
echo '-------------------------------------------------------------------------'

read -p 'Enter youtube url: ' YTuurl
echo ''


"./yt-dlp.exe" --no-check-certificate --force-ipv4 --youtube-skip-dash-manifest --concurrent-fragments '5' --format 'bv*[height<=480]+ba/b[height<=480]' --get-url "$YTuurl" > 'YT-AV.tmp'


mimeVideo=`cat YT-AV.tmp | grep "mime=video" | head -n 1`
mimeAudio=`cat YT-AV.tmp | grep "mime=audio" | head -n 1`
echo ''


$mplayer -subfont-osd-scale '2' -noconfig 'all' -quiet -noautosub -nosub -vo 'directx' -ao 'win32' -autosync '10' -cache-min '2' -cache '204800' -prefer-ipv4 -vf 'fspp=4:0:0:0,framestep=1,screenshot=screenshot/YT0' -lavdopts 'threads=2:lowres=1:st=2:sb=2:skiploopfilter=nonref' -xy '1.1' -sws '1' -dr -double -priority 'abovenormal' -stereo '0' -af volnorm -volume '90' "$mimeVideo" -audiofile "$mimeAudio" -audiofile-cache '40960' 


echo ''
echo ''
read -p "Press enter to continue"
exec "$0"

-------------------------------------------------------------------------


 .. associate the file type .SH with this batchfile ("Busybox-Run-sh.bat" in my case) and you can double-click on the .SH and it runs.

Link to comment
Share on other sites

  • 2 weeks later...
On 2/28/2023 at 9:03 PM, nicolaasjan said:
Quote

yt-dlp supports only Python 3.7+ and may remove support for more versions as they become EOL;

:realmad:

... Well, this thread contains mixed content about both youtube-dl (in the topic's title :P ) and yt-dlp, and is primarily a WinXP one (;)), so the info I post below might be considered as only remotely relevant, especially since nicolaasjan already provides py3.8-based XP[+Vista]-compatible yt-dlp (32-bit) compiles, still :whistle:...

June 5[6]th saw the release of Python 3.7.17 by the PSF, a source-only security bugfix release:

https://www.python.org/downloads/release/python-3717/

https://docs.python.org/release/3.7.17/whatsnew/changelog.html#changelog

Windows binaries (Vista SP2+, x86 & x64) are being provided by a third party and can be found here :thumbup ; Python 3.7, according to PSF's official lifecycle policy, will receive security fixes

Quote

until approximately 2023-06

i.e. current month (:() ; https://www.python.org/downloads/ specifies the py3.7 EoL date as 2023-06-27, in ca. 2-weeks time :o ; we may see one final py3.7 update in the form of v3.7.18 :whistle:towards the end of this month, but I personally doubt that, as 3.7.17 has been released just a week ago :dubbio:... I guess the ball is now on yt-dlp's court, to start considering removing support for py3.7, eventually...

py3.7 is currently being used to compile the yt-dlp_x86.exe builds for Vista SP2 (both 32 & 64-bit) and for the 32-bit minorities on Win7 SP1, Win8, Win8.1 and Win10 (Win11 doesn't come in a 32-bit flavour); py3.8 is currently being used to compile yt-dlp.exe (64-bit) for Win7 SP1+ x64 users (the masses, I guess ;)...); many devs inside the yt-dlp team have expressed in the past their desire to forego completely py3.7 and py3.8 support at the same time, switching directly to py3.9+ (or, perhaps, py3.10+), especially since Win7 usage is dwindling over the last months (not least because evil Google :realmad: dropped support for the OS); that leaves the question pending over the fate of the yt-dlp_x86.exe binary itself, as the trend now among app authors is to switch exclusively to 64-bit :realmad: :( ; I'll sure be keeping an eye over at the yt-dlp repo for any related (ill-)developments :angry: ...

Link to comment
Share on other sites

On 6/13/2023 at 1:43 AM, VistaLover said:

I guess the ball is now on yt-dlp's court, to start considering removing support for py3.7, eventually...

Don't give them any ideas, though I doubt they follow this thread. <_<

FWIW, I can now also provide Py3.9 builds for XP and upward, thanks to the release @cmalex kindly provided some time ago. :)

Here is a build for you to test, if you wish (updated regularly).

This is what it gives on Vista:

[debug] Command-line config: ['-v', '--ignore-config']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out cp1252 (No VT), error cp1252 (No VT), screen cp1252 (No VT)
[debug] yt-dlp version nightly@2023.10.15 [4e38e2ae9] (win_x86_exe)
[debug] Python 3.9.13 (CPython AMD64 32bit) - Windows-Vista-6.0.6003-SP2 (OpenSSL 3.1.0-dev )
[debug] exe versions: ffmpeg N-110472-g4006c71-Reino (setts), ffprobe N-110472-g4006c71-Reino, phantomjs 2.1.1
[debug] Optional libraries: Cryptodome-3.19.0, brotli-1.1.0, certifi-2023.07.22, mutagen-1.47.0, requests-2.31.0, sqlite3-3.37.2, urllib3-2.0.6, websockets-11.0.3
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests
[debug] Loaded 1890 extractors

Usage: yt-dlp [OPTIONS] URL [URL...]

yt-dlp: error: You must provide at least one URL.
Type yt-dlp --help to see a list of all options.

 

Edited by nicolaasjan
Link to comment
Share on other sites

17 hours ago, nicolaasjan said:

Here is a build for you to test, if you wish.

Thanks :wub: ; works as advertised in my 32-bit OS:

[debug] Command-line config: ['--ffmpeg-location', '..\\FFmpeg', '--downloader-args', 'ffmpeg:-v 8 -stats', '-v']
[debug] Encodings: locale cp1253, fs utf-8, pref cp1253, out cp1253 (No VT), error cp1253 (No VT), screen cp1253 (No VT)
[debug] yt-dlp version nightly@2023.06.13 [cab94a0cd] (win_x86_exe)
[debug] Python 3.9.13 (CPython x86 32bit) - Windows-Vista-6.0.6003-SP2 (OpenSSL 3.1.0-dev )
[debug] exe versions: ffmpeg n6.1-dev-1149-N-111033-gf11515c (setts), ffprobe n6.1-dev-1149-N-111033-gf11515c, phantomjs 2.1.1, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.18.0, brotli-1.0.9, certifi-2023.05.07, mutagen-1.46.0, sqlite3-2.6.0, websockets-11.0.3
[debug] Proxy map: {}
[debug] Loaded 1843 extractors

Usage: yt-dlp_x86 [OPTIONS] URL [URL...]

yt-dlp_x86: error: You must provide at least one URL.
Type yt-dlp --help to see a list of all options.
Link to comment
Share on other sites

16 hours ago, VistaLover said:
[debug] exe versions: ffmpeg n6.1-dev-1149-N-111033-gf11515c (setts), ffprobe n6.1-dev-1149-N-111033-gf11515c, phantomjs 2.1.1, rtmpdump 2.4

May I ask where you got that Vista32 compatible FFmpeg from?

A Google search only gives 1 result; your issue at GitHub. :lol:

Searching further, I only found the venomissimo site, but the version you use is not there (at least I couldn't see it).

 

Link to comment
Share on other sites

  • 3 weeks later...

For me Youtube-DL that is several months old still works. Occasionally it complains about a signature, but most of the time it is fast. I don't use Ffmpeg with it, because I found I out that MPC-HC can combine the video and audio into one during playback with a bit slower seeking.

Why has Ffmpeg grown to be 66 MB? I remember they were proud to share core functions across related codecs and of elegant code.

Link to comment
Share on other sites

19 hours ago, nicolaasjan said:

[yt-dlp] Fixed issue #7473.

... There's still some "volatility" surrounding this specific issue on the yt-dlp devs side :dubbio:; they keep going back and forth between the old and the new Twitter APIs:

https://github.com/yt-dlp/yt-dlp/commit/49296437a8e5fa91dacb5446e51ab588474c85d3

https://github.com/yt-dlp/yt-dlp/commit/b03fa7834579a01cc5fba48c0e73488a16683d48

https://github.com/yt-dlp/yt-dlp/commit/92315c03774cfabb3a921884326beb4b981f786b

At the same time, yt-dl is fully broken on Twitter :(...

BTW, this sounds ominous:

https://github.com/yt-dlp/yt-dlp/security/advisories/GHSA-v8mc-9377-rwjj

4 hours ago, j7n said:

Occasionally it complains about a signature,

... Yes, it's the never-ending cat-and-mouse game between Google :realmad: and the downloading apps; G keep changing their yt-player "signature" javascript code; when the apps fail to properly decode/decrypt it, this results in throttled Youtube downloads (ca. 50kbps), rendering those apps "unappealing"...

4 hours ago, j7n said:

I don't use Ffmpeg with it,

FFmpeg is indeed an essential dependency of both yt-dl and yt-dlp for the majority of their users who (unlike you :P) wish to end up with a standalone media file, compatible with a vast number of media players; additionally, FFmpeg isn't only used as a "merger", but 1) can be used as a downloader when [hlsnative] isn't specified and for downloading LIVE streams 2) as a multi-task post-processor (e.g. transcoding AAC/OPUS audio to MP3, webp images to jpg, webvtt subs to srt ones, etc.) and 3) as a media tagger, especially in the yt-dl builds provided by nicolaasjan :thumbup ...

4 hours ago, j7n said:

Why has Ffmpeg grown to be 66 MB?

The size of the resulting binaries relies on a variety of factors:

The "vanilla" code of FFmpeg itself has grown quite a bit over the years, following probably Zawinski's Law :P ; it's now 2023, version n6.1-dev, not 2012 and v0.12 :whistle:...

Over the course of years, support for many additional third party libs has been added, while some older libs have been deprecated and their support removed... Depending on the number of third party libs you compile FFmpeg with, the binary size can increase significantly :o (third-party-libs is a generic term, which encompasses decoders/encoders/muxers/demuxers/filters/etc.) ...

The type of compiler used also plays a role: Cross-compilation in Linux using e.g. Cygwin results in bigger Windows executables compared to native compilers like MS Visual Studio or MSYS2...

Binary sizes also increase if you're building for Windows x64...

With disk storage and bandwidth today being relatively cheap ;), no-one really cares anymore about file sizes...

Edited by VistaLover
Link to comment
Share on other sites

If I need to produce a single file, I use MkvToolNix, which can accept all common file formats without transcoding. I used this after every download before I switched to a new version of HPC-HC.

Loading the 66 MB binary alone already causes a pause. I suspect they have one or two modern codecs in there consuming most space. I'm not a fan of this all in one solution. MkvToolNix also crazy large today and it has zero codecs, but I use an old version.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...