j7n Posted Monday at 08:21 AM Author Posted Monday at 08:21 AM Since there now a separate, required build for Windows 7, can you please add a small link in the signature? So far no problems.
nicolaasjan Posted Monday at 09:12 AM Posted Monday at 09:12 AM 43 minutes ago, j7n said: Since there now a separate, required build for Windows 7, can you please add a small link in the signature? So far no problems. Sure, what version do you want to link it to? yt-dlp_x86_win7.exe, yt-dlp_win7.exe or yt-dlp_win7.zip Note, that you can update the .exe files with -U. 1
j7n Posted Tuesday at 05:46 AM Author Posted Tuesday at 05:46 AM yt-dlp_win7.exe is the usual one. What is the advantage of using yt-dlp_win7.zip with extracted libraries to _internal? How long does it take to prepare more than a dozen builds for an update?
nicolaasjan Posted Tuesday at 06:04 AM Posted Tuesday at 06:04 AM 3 minutes ago, j7n said: What is the advantage of using yt-dlp_win7.zip with extracted libraries to _internal? It doesn't have to unpack the executable to the TEMP directory each time yt-dlp is executed, so it loads a bit faster and doesn't wear your disk that much. The disadvantage is, that you can't update it with `yt-dlp -U`. Quote How long does it take to prepare more than a dozen builds for an update? Around 20 minutes. I have to fire up different virtual machines, each with different Python installs. I only have to build the custom ones for XP, Win7 and Linux_x86. The rest is done by GitHub Actions workflow. 1
VistaLover Posted Tuesday at 03:49 PM Posted Tuesday at 03:49 PM 9 hours ago, nicolaasjan said: I only have to build the custom ones for XP, Win7 and Linux_x86. The rest is done by GitHub Actions workflow. Hi ; well, cmalex's py3.11.4 assemblies (one compatible with just XP and one with Vista+) aren't currently being hosted on GitHub (AFAIAA), but they can be ; OTOH, adang1345's py3.13.7 assembly is already hosted on GitHub, and so is 3dyd's custom PyInstaller build used to make the Win7/Vista yt-dlp distributions; it may be possible, at least in theory, to author a modded GA workflow file to point to the custom implementations of CPython+PyInst necessary to package the Win7/Vista builds; e.g., upstream are using their own, custom, build of PyInstaller to create the "official" yt-dlp releases; perhaps a consultation with your "AI friend(s)" (or a question on SO, etc.) could prove beneficial in fully automating even the (currently) manually created release assets ; just a thought from a dedicated (hardly intelligent ) friend of yours... Best wishes ! 2
nicolaasjan Posted Wednesday at 05:11 PM Posted Wednesday at 05:11 PM (edited) On 10/7/2025 at 5:49 PM, VistaLover said: it may be possible, at least in theory, to author a modded GA workflow file to point to the custom implementations of CPython+PyInst necessary to package the Win7/Vista builds; e.g., upstream are using their own, custom, build of PyInstaller to create the "official" yt-dlp releases; perhaps a consultation with your "AI friend(s)" (or a question on SO, etc.) could prove beneficial in fully automating even the (currently) manually created release assets Oh, I don't mind building myself. That said, there is a new Python stable release (3.14.0) from adang1345. Test build for Vista/Win7 (32bit): yt-dlp_Py3.14.0_x86_Vista.7z As usual, the Brotli dependency is not yet available for Python 3.14... So, I had to build a wheel myself from source (not easy...). Here is the 32bit variant, if you want to compile yt-dlp yourself: brotli-1.1.0-cp314-cp314-win32.whl Edited Wednesday at 05:30 PM by nicolaasjan 1
VistaLover Posted Wednesday at 09:11 PM Posted Wednesday at 09:11 PM 3 hours ago, nicolaasjan said: So, I had to build a wheel myself from source (not easy...). Pardon my asking , but which type of C compiler was used there? MS Visual Studio 2022 on Win10?
VistaLover Posted Wednesday at 09:37 PM Posted Wednesday at 09:37 PM (edited) On 10/8/2025 at 8:11 PM, nicolaasjan said: there is a new Python stable release (3.14.0) from adang1345 ... Same is true (new bugfix release) for his py3.13.x builds: https://github.com/adang1345/PythonVista/tree/master/3.13.8 (seeing that your GitHub "Win7" release assets are compiled with adang1345's py3.13 implementation ) Edited 9 hours ago by VistaLover py3.11 -> py3.13 1
nicolaasjan Posted yesterday at 06:10 AM Posted yesterday at 06:10 AM 8 hours ago, VistaLover said: Pardon my asking , but which type of C compiler was used there? MS Visual Studio 2022 on Win10? I used this: https://github.com/mstorsjo/llvm-mingw The 32bit build was compiled with Python 3.14.0 (x86) from adang1345 on Windows 10 IoT Enterprise LTSC. The 64bit build was compiled with Python 3.14.0 (x86-64) from adang1345 on Windows 7. To let Python use this compiler, place a file named `distutils.cfg` (see below) in `.\Lib\distutils` in Python install directory (create folder `distutils`). [build] compiler = mingw32 Build Brotli: Download source tarball and extract. In source directory run: python setup.py build_ext --compiler=mingw32 install Build wheel: python setup.py build_ext --compiler=mingw32 bdist_wheel In the directory where the built wheel is, run: pip install --force-reinstall brotli-1.1.0-cp314-cp314-win32.whl Quote (seeing that your GitHub "Win7" release assets are compiled with adang1345's py3.11 implementation ) Huh??? .\yt-dlp_win7.exe -v [debug] Command-line config: ['-v'] [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 nicolaasjan/yt-dlp@2025.10.05.061237 (win7_exe*) [debug] Python 3.13.7 (CPython AMD64 64bit) - Windows-7-6.1.7601-SP1 (OpenSSL 3.0.16 11 Feb 2025) [debug] exe versions: ffmpeg git-2025-10-04-e05f8ac-ffmpeg-windows-build-helpers (fdk,setts), ffprobe git-2025-10-04-e05f8ac-ffmpeg-windows-build-helpers, phantomjs 2.5.0 [debug] Optional libraries: Cryptodome-3.23.0, brotli-1.1.0, certifi-2025.08.03, curl_cffi-0.13.0, mutagen-1.47.0, requests-2.32.5, sqlite3-3.50.4, urllib3-2.5.0, websockets-15.0.1 [debug] Proxy map: {} [debug] Request Handlers: urllib, requests, websockets, curl_cffi [debug] Extractor Plugins: NSigDeno (YoutubeIE) [debug] Plugin directories: C:\Users\Nico\AppData\Roaming\yt-dlp\plugins\bgutil-ytdlp-pot-provider\yt_dlp_plugins, C:\Users\Nico\AppData\Roaming\yt-dlp\plugins\yt-dlp-YTNSigDeno\yt_dlp_plugins [debug] Loaded 1833 extractors And the next Win7 builds will be Py3.14 based. 2
VistaLover Posted 9 hours ago Posted 9 hours ago 17 hours ago, nicolaasjan said: I used this: https://github.com/mstorsjo/llvm-mingw Thanks ; they note: Quote The toolchain defaults to using the Universal CRT and targeting Windows 7. These defaults can be changed in build-mingw-w64.sh though. The Universal CRT is only available out of the box since Windows 10, but can be installed on Vista or newer. For x86, there are also releases that run on msvcrt.dll. Hopefully, the brotli py3.14 wheel (file brotli-1.1.0-cp314-cp314-win32.whl) you kindly shared remains Vista-compatible; though, TBH, I'm not aware of any tests (within the context of yt-dlp or otherwise) I can submit it to ... Other than that, thank you for the details of the compilation procedure ; I agree it's not for the faint-hearted (or those lacking access to recent OS+H/W); when I, regrettably, find that PyPI misses wheels for a specific "module+module version+CPython+architecture" combination, I usually issue: python -m pip install module==specific_version and then let pip do its job in invoking setuptools+wheel to compile from module source; in the meantime, I cross my fingers for things to go as expected , which isn't always the case ; if the compilation succeeds, then pip will store in its cache a copy of the generated wheel, for easy re-usage; the local path to that wheel is being displayed in the command prompt window, so I always grab a copy from there ; of course, this is for pure Python modules, for ones with C/C++ extensions, a compiler must be made available to CPython (as you detailed yourself); CPython > 3.4 requires VS2015+, not compatible with my current OS ... 17 hours ago, nicolaasjan said: Quote (seeing that your GitHub "Win7" release assets are compiled with adang1345's py3.11 implementation ) Huh??? The above was meant to be written as: ... are compiled with adang1345's py3.13 (branch) implementation so that was a typo/oversight on my part ; apologies... Ofc I'm aware you've been using 3.13.7 for the win7 (+Vista) yt-dlp variants, that's why I wrote an update was due to recently released 3.13.8 ... 17 hours ago, nicolaasjan said: And the next Win7 builds will be Py3.14 based. ... That's your call, surely, but I'm more of a conservative person myself , who doesn't believe "the latest is the greatest"; however, if you're absolutely certain the yt-dlp code is fully compatible with recently released py3.14 (and the CPython itself doesn't come with any major bug), then go for it ; personally, I'd stick with the minimum CPython version mandated by yt-dlp, soon to be py3.10 (but it's also nice I can experiment with higher versions here, all thanks to adang1345 ) ... Best regards. 1
nicolaasjan Posted 13 minutes ago Posted 13 minutes ago (edited) 9 hours ago, VistaLover said: Other than that, thank you for the details of the compilation procedure ; I agree it's not for the faint-hearted (or those lacking access to recent OS+H/W); when I, regrettably, find that PyPI misses wheels for a specific "module+module version+CPython+architecture" combination, I usually issue: Fortunately, my main system (Linux Mint) didn't have any issue compiling Brotli "automagically" when installing the dependencies for my newly compiled Python 3.14 (altinstall; that is, it is installed without interfering with system Python). Compiler is shipped with the distro. Quote The above was meant to be written as: ... are compiled with adang1345's py3.13 (branch) implementation so that was a typo/oversight on my part ; apologies... No problem, I was suspecting that already. Quote however, if you're absolutely certain the yt-dlp code is fully compatible with recently released py3.14 It is. Edited 12 minutes ago by nicolaasjan
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now