nicolaasjan Posted August 17, 2023 Posted August 17, 2023 (edited) 5 hours ago, Mark-XP said: i'll look in this thread here more often, to get a well maintained yt-dlp version for my classic XP and 7 environments. Latest yt-dlp for XP is also uploaded to my GitHub repo. Direct link: https://github.com/nicolaasjan/yt-dlp/releases/latest/download/yt-dlp_x86_Windows-XP.zip For Windows 7 you can also still use one from the official Release files, or one from the nightly builds. The 64bit version (yt-dlp.exe) is built with Python 3.8.10 and the 32bit version (yt-dlp_x86.exe) is built with Python 3.7.9, so that one will work on Vista as well. However support for 3.7 wil probably be dropped soon... Edited August 17, 2023 by nicolaasjan 1
Reino Posted August 17, 2023 Posted August 17, 2023 (edited) 1 hour ago, nicolaasjan said: How did you do that? With Python 3.9.13 from here: D:\Storage\Media\Binaries>python "yt-dlp_git\yt_dlp\__main__.py" -vgf 22 "8kl6q_9qZOs" [debug] Command-line config: ['-vgf', '22', '8kl6q_9qZOs'] [debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8 (No VT), error utf-8 (No VT), screen utf-8 (No VT) [debug] yt-dlp version stable@2023.07.06 [b532a3481] (source) [debug] Lazy loading extractors is disabled [debug] Python 3.9.13 (CPython x86 32bit) - Windows-XP-5.1.2600-SP3 (OpenSSL 1.1.1i 8 Dec 2020) [debug] exe versions: ffmpeg N-102342-g5541cff-Reino (fdk,setts) [debug] Optional libraries: Cryptodome-3.17, brotli-1.0.9, certifi-2022.12.07, mutagen-1.46.0, secretstorage-3.3.3, sqlite3-2.6.0, websockets-11.0.2 [debug] Proxy map: {} [debug] Loaded 1863 extractors [youtube] Extracting URL: 8kl6q_9qZOs [youtube] 8kl6q_9qZOs: Downloading webpage [youtube] 8kl6q_9qZOs: Downloading ios player API JSON [youtube] 8kl6q_9qZOs: Downloading android player API JSON [youtube] 8kl6q_9qZOs: Downloading m3u8 information [debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto [debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id [info] 8kl6q_9qZOs: Downloading 1 format(s): 22 https://rr2---sn-32o-bg9e.googlevideo.com/videoplayback?[...] Edited August 17, 2023 by Reino
nicolaasjan Posted August 17, 2023 Posted August 17, 2023 45 minutes ago, Reino said: With Python 3.9.13 from here: Ah, I see. A non-SSE2 version. I thought you meant the source was compatible with 3.4. 1
VistaLover Posted August 17, 2023 Posted August 17, 2023 14 hours ago, dmiranda said: I like the idea of 32mb ffmpeg ... Do note, though , that this specific binary size pertains to native compilation under Linux: On 7/7/2023 at 8:05 AM, nicolaasjan said: On my main Linux system I compile FFmpeg myself (with the help of this guide, and without libaom, libsvtav1 and libvmaf). Resulting binary: ~32MB. Cross-compilation on Linux targeting WinXP will result in quite larger binaries, compared to the ones produced for native Linux usage... Even larger file sizes are being produced under native Windows FFmpeg compilation ... Regards 3
VistaLover Posted August 17, 2023 Posted August 17, 2023 (edited) 8 hours ago, Reino said: The source itself, as far as I can tell, is still compatible. ... No, it's NOT (compatible with any CPython version < 3.7); you're just "cheating" , by running the "source" with a "community" recompiled/produced (see my previous reply to @Mark-XP here) CPython version 3.9 : 5 hours ago, Reino said: With Python 3.9.13 from here which doesn't officially (as in by the PSF) support Windows < 8.1 (BTW, Python code doesn't target specific OS versions, only specific Python versions) ... 8 hours ago, Reino said: "The official yt-dlp binary has long ago abandoned..." You added "binary" yourself, there ; I was referring to the yt-dlp source code, which should also cover all binaries compiled from it! As I wrote already, the PSF EoL'ed Windows XP SP3 with CPython 2.7.18 and 3.4.10, none of which is currently supported by yt-dlp (source) code ; as I also wrote previously, the youtube-dl (source) code does still support both aforementioned CPython versions (and, thus, XP SP3); is now everything crystal clear? I hope so ... Warmest (as in being under yet another heatwave here) greetings from Greece ! Edited August 17, 2023 by VistaLover clarifications 1
Reino Posted August 17, 2023 Posted August 17, 2023 I guess I didn't even realize I was actually cheating. You're right. I knew that 3.4.10 is the latest WinXP compatible release. Not everything is crystal clear. What does PSF stand for?
mina7601 Posted August 17, 2023 Posted August 17, 2023 1 minute ago, Reino said: What does PSF stand for? Python Software Foundation. https://en.wikipedia.org/wiki/Python_Software_Foundation 3
nicolaasjan Posted August 18, 2023 Posted August 18, 2023 (edited) 23 hours ago, VistaLover said: Cross-compilation on Linux targeting WinXP will result in quite larger binaries, compared to the ones produced for native Linux usage... Even larger file sizes are being produced under native Windows FFmpeg compilation ... (offtopic) Today I cross-compiled ffmpeg-nonfree (both 32 and 64bit) with the script from here. Took 5 hours. Sandbox directory 27.8GB. Doesn't work on XP. On Vista it gave: On Windows 7 it worked. File size of the 64bit version is ~116MB, but you have to take into account that a lot of libs are enabled: ffmpeg version N-111790-g7e246a5db5-ffmpeg-windows-build-helpers Copyright (c) 2000-2023 the FFmpeg developers built with gcc 10.2.0 (GCC) configuration: --pkg-config=pkg-config --pkg-config-flags=--static --extra-version=ffmpeg-windows-build-helpers --enable-version3 --disable-debug --disable-w32threads --arch=x86_64 --target-os=mingw32 --cross-prefix=/media/ext3-data/git/ffmpeg-windows-build-helpers/sandbox/cross_compilers/mingw-w64-x86_64/bin/x86_64-w64-mingw32- --enable-libcaca --enable-gray --enable-libtesseract --enable-fontconfig --enable-gmp --enable-libass --enable-libbluray --enable-libbs2b --enable-libflite --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libvorbis --enable-libwebp --enable-libzimg --enable-libzvbi --enable-libmysofa --enable-libopenjpeg --enable-libopenh264 --enable-libvmaf --enable-libsrt --enable-libxml2 --enable-opengl --enable-libdav1d --enable-cuda-llvm --enable-gnutls --enable-libsvtav1 --enable-libvpx --enable-libaom --enable-nvenc --enable-nvdec --extra-libs=-lharfbuzz --extra-libs=-lm --extra-libs=-lshlwapi --extra-libs=-lmpg123 --extra-libs=-lpthread --extra-cflags=-DLIBTWOLAME_STATIC --extra-cflags=-DMODPLUG_STATIC --extra-cflags=-DCACA_STATIC --enable-amf --disable-libmfx --enable-libaribcaption --enable-gpl --enable-frei0r --enable-librubberband --enable-libvidstab --enable-libx264 --enable-libx265 --enable-avisynth --enable-libaribb24 --enable-libxvid --enable-libdavs2 --enable-libxavs2 --enable-libxavs --extra-cflags='-mtune=generic' --extra-cflags=-O3 --enable-static --disable-shared --prefix=/media/ext3-data/git/ffmpeg-windows-build-helpers/sandbox/cross_compilers/mingw-w64-x86_64/x86_64-w64-mingw32 --enable-nonfree --enable-libfdk-aac --enable-decklink libavutil 58. 17.100 / 58. 17.100 libavcodec 60. 23.100 / 60. 23.100 libavformat 60. 10.100 / 60. 10.100 libavdevice 60. 2.101 / 60. 2.101 libavfilter 9. 11.100 / 9. 11.100 libswscale 7. 3.100 / 7. 3.100 libswresample 4. 11.100 / 4. 11.100 libpostproc 57. 2.100 / 57. 2.100 Edited August 18, 2023 by nicolaasjan
nicolaasjan Posted September 5, 2023 Posted September 5, 2023 yt-dlp updated to nightly@2023.09.05 [c6ef55379]. Temporary fix for Facebook manually included for whoever uses that site. See issue #7901. 1
VistaLover Posted September 5, 2023 Posted September 5, 2023 13 hours ago, nicolaasjan said: yt-dlp updated to nightly@2023.09.05 [c6ef55379]. Temporary fix for Facebook manually included for whoever uses that site. ... According to my tests (and records of them kept ), the FB related PR#7890 was already present in your py3.8 : [debug] yt-dlp version nightly@2023.09.02 [2301b5c1b] (win_x86_exe) previous build; while the "nightly@2023.08.31 [7237c8dca]" one did not include it ... FWIW, this PR has now been officially merged into yt-dlp master branch: https://github.com/yt-dlp/yt-dlp/commit/d3d81cc98f554d0adb87d24bfd6fabaaa803944d Kindest regards ...
nicolaasjan Posted September 6, 2023 Posted September 6, 2023 5 hours ago, VistaLover said: FWIW, this PR has now been officially merged into yt-dlp master branch: https://github.com/yt-dlp/yt-dlp/commit/d3d81cc98f554d0adb87d24bfd6fabaaa803944d Just updated. 🙂 Alternative link: https://github.com/nicolaasjan/yt-dlp/releases/latest/download/yt-dlp_x86_Windows-XP.zip 1
nicolaasjan Posted September 9, 2023 Posted September 9, 2023 Just FYI; FFmpeg binaries by our forum member @Reino were updated on Sep. 4. See also the notes here.
VistaLover Posted October 15, 2023 Posted October 15, 2023 Hi @nicolaasjan , hope you're doing great and that the Dutch weather hasn't turned very cold yet ... In yt-dlp/commit/8a8b545 , PR #3668 was merged; this one adds an optional dependency to the requests python module, itself depending on the urllib3 python module; here's the latest yt-dlp requirements file: mutagen pycryptodomex websockets brotli; platform_python_implementation=='CPython' brotlicffi; platform_python_implementation!='CPython' certifi requests>=2.31.0,<3 urllib3>=1.26.17,<3 The "official" yt-dlp_x86.exe file has those already bundled, e.g.: [debug] yt-dlp version nightly@2023.10.15.085452 [4e38e2ae9] (win_x86_exe) [debug] Python 3.7.9 (CPython x86 32bit) - Windows-Vista-6.0.6003-SP2 (OpenSSL 1.1.1g 21 Apr 2020) [debug] exe versions: none [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.31.1, urllib3-2.0.6, websockets-11.0.3 and so does the latest yt-dlp_x86.exe file you provided yourself (compiled via GitHub Actions): [debug] yt-dlp version nicolaasjan/yt-dlp@2023.10.14.034319 [8a8b54523] (win_x86_exe) [debug] Python 3.7.9 (CPython x86 32bit) - Windows-Vista-6.0.6003-SP2 (OpenSSL 1.1.1g 21 Apr 2020) [debug] exe versions: none [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.31.1, urllib3-2.0.6, websockets-11.0.3 HOWEVER , the py3.8 based , [debug] yt-dlp version nightly@2023.10.14 [8a8b54523] (win_x86_exe) [debug] Python 3.8.13+ (CPython x86 32bit) - Windows-Vista-6.0.6003-SP2 (OpenSSL 3.1.0-dev ) [debug] exe versions: none [debug] Optional libraries: Cryptodome-3.19.0, brotli-1.1.0, certifi-2023.07.22, mutagen-1.47.0, sqlite3-3.35.5, websockets-11.0.3 and py3.9 based, [debug] yt-dlp version nightly@2023.10.14 [8a8b54523] (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: none [debug] Optional libraries: Cryptodome-3.19.0, brotli-1.1.0, certifi-2023.07.22, mutagen-1.47.0, sqlite3-3.37.2, websockets-11.0.3 latest offerings do NOT ; as the official 32-bit yt-dlp builds will soon move to py3.8 , I'll have to rely more on your own py3.8/py3.9 builds (at least until I set up myself an environment to produce mine ); is it technically possible to add requests+urllib3 to those builds of yours ? Kindest regards ...
nicolaasjan Posted October 17, 2023 Posted October 17, 2023 On 10/15/2023 at 11:25 PM, VistaLover said: is it technically possible to add requests+urllib3 to those builds of yours ? It was possible to add these, but the resulting binary didn't seem to pick up requests 2.31.0. : [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.8.13+ (CPython x86 32bit) - Windows-XP-5.1.2600-SP3 (OpenSSL 3.1.0-dev ) [debug] exe versions: ffmpeg N-111893-gbef151d-Reino (setts), ffprobe N-111893-gbef151d-Reino [debug] Optional libraries: Cryptodome-3.19.0, brotli-1.1.0, certifi-2023.07.22, mutagen-1.47.0, sqlite3-3.35.5, urllib3-2.0.6, websockets-11.0.3 [debug] Proxy map: {} [debug] Request Handlers: urllib [debug] Loaded 1890 extractors Pip list: Package Version ------------------------- --------- altgraph 0.17.3 Brotli 1.1.0 certifi 2023.7.22 charset-normalizer 3.3.0 future 0.18.2 idna 3.4 importlib-metadata 6.8.0 mutagen 1.47.0 packaging 23.2 pefile 2022.5.30 pip 23.2.1 pycryptodomex 3.19.0 pyinstaller 5.13.2 pyinstaller-hooks-contrib 2022.14 pywin32-ctypes 0.2.1 requests 2.31.0 setuptools 68.2.2 urllib3 2.0.6 websockets 11.0.3 wheel 0.41.2 zipp 3.17.0 [notice] A new release of pip is available: 23.2.1 -> 23.3 [notice] To update, run: python.exe -m pip install --upgrade pip Notice: I reverted to pip 23.2.1, because 23.3 gave this all the time: WARNING: There was an error checking the latest version of pip. If adding these optional dependencies somehow fail to do their job, I'm not sure I'll implement them... Could you test the build linked above, because I have no idea in which scenario to test this myself... PS, The Dutch weather turned to 6°C at the moment... 🙁
nicolaasjan Posted October 17, 2023 Posted October 17, 2023 Addendum: The Py3.9 build did better: [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 x86 32bit) - Windows-XP-5.1.2600-SP3 (OpenSSL 3.1.0-dev ) [debug] exe versions: ffmpeg N-111893-gbef151d-Reino (setts), ffprobe N-111893-gbef151d-Reino [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
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now