Skip to content
View in the app

A better way to browse. Learn more.

MSFN

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Who here has a Youtube-DL compile for WinXP?

Featured Replies

11 hours ago, VistaLover said:

As told, you don't have to install :no: node system-wide; of the linked zip archive, for yt-dlp purposes, you only need the standalone (portable) "node.exe" binary ;) ...

Even simpler, just place "node.exe" (67.8 MiB) next to your yt-dlp 64-bit binary and issue/configure --js-runtimes node; if you're overly concerned about "security", you can let yt-dlp launch NODE in JIT-less mode via 

--js-runtimes node --extractor-args "youtube-ejs:jitless=true"

(provides better security at the cost of performance/speed) ; according to online testimonies, Node takes just 1-2s to solve YT's challenges, while QuickJS, depending on how powerful your machine is, may take from 8-15s (and this relic of mine ;) (32-bit OS, 3GB RAM, Core2 Duo from late 2007), can take anything from 15-30s, depending on how busy the machine is when qjs.exe starts :whistle:) ...

I keep an eye on two things ;) 

1. ThisQuickJS-ng may, in due course, end up with "rope strings", too, so its speed (when used with yt-dlp) may become on par with upstream QuickJS

2. That; the astring library is an external dependency of the yt-dlp-ejs JS component which, together with a suitable JS runtime, performs the task of solving YT's JS challenges; hopefully, this PR will be accepted and merged into the astring repo and a future yt-dlp-ejs version will pick that updated version up, making the use of QuickJS-ng with yt-dlp equally "practical" :sneaky: ...

Reference: here :P ...

but quickjs' size is just 1.4% of node.exe, it is easier for me to bring it outside.


10 hours ago, nicolaasjan said:

Apparently not: :)

Verbose log

... But :(:

Quote

Forbidden (#403)

Error, this is a private paste or is pending moderation. If this paste belongs to you, please login to Pastebin to view it.

On 11/16/2025 at 5:44 PM, VistaLover said:

... But :(:

Quote

Forbidden (#403)

Error, this is a private paste or is pending moderation. If this paste belongs to you, please login to Pastebin to view it.

Apparently, pastebin moderation has approved nicolaasjan's yt-dlp log and yesterday's 403 error is now gone: 

43U9GPo.png

... Just something to keep in mind in the event of future pastebin uploads ;) (i.e., they might not be immediately visible, for reasons only known to pastebin themselves :angry: ) ...

On 11/22/2025 at 10:24 PM, autodidact said:

VISTAx86: ...  shared ... 

Thank you a bunch for spoiling us  :wub: ... The new shared build runs OK here (Vista SP2 32-bit) :thumbup; compared to the previous Vista+ shared offering (ffmpeg-n8.1-dev-891-git-20251025-gdefd5f3), I see that below libs (rather, buildconfig flags) have been removed: 

--enable-cuda
--enable-cuvid 
--enable-d3d12va
--enable-nvenc
--enable-ffnvcodec 
--enable-nvdec 
--enable-mediafoundation
--enable-libvpx
--enable-libaom
--enable-librav1e
--enable-libkvazaar
--enable-libxavs
--enable-vulkan
--enable-libvvenc
--enable-libcelt
--enable-opencl

This has reduced the size of the extracted archive by ca. 23 MiB (from 127 to just 104); really indebted! :worship:

Best wishes.

@nicolaasjanSunday is Nov 30th, 2025, thus I believe you'll be having a "hot potato" in your hands :( : 

https://github.com/pyinstaller/pyinstaller/issues/9149#issuecomment-3036991021

[build] Bump PyInstaller minimum version requirement to 6.17.0

https://github.com/yt-dlp/yt-dlp/commit/280165026886a1f1614ab527c34c66d71faa5d69

For the Vista+(aka Win7) builds, your PyInstaller fork v6.17 came just in time :thumbup 

https://github.com/nicolaasjan/pyinstaller-builds/releases/tag/6.17.0

... but what about those WinXP "onedir" packages which, IIANM, are still using PyInstaller-5.13.2 due to this:dubbio:

(you can always revert 2801650 prior to the onedir compilation for XP, but how practical would that be in the long run? ...)

Edited by VistaLover

On 11/24/2025 at 1:59 AM, VistaLover said:

 

--enable-cuda
--enable-cuvid 
--enable-d3d12va
--enable-nvenc
--enable-ffnvcodec 
--enable-nvdec 
--enable-mediafoundation
--enable-libvpx
--enable-libaom
--enable-librav1e
--enable-libkvazaar
--enable-libxavs
--enable-vulkan
--enable-libvvenc
--enable-libcelt
--enable-opencl

 

that all are working on xp ? it would make sence to use a dll file for each of these pieces 

Edited by user57

7 hours ago, VistaLover said:

... but what about those WinXP "onedir" packages which, IIANM, are still using PyInstaller-5.13.2 due to this:dubbio:

I still build on XP the old fashioned way:

python -m pip install -U "setuptools>=71.0.2,<81" pip wheel
pip install -U -r requirements.txt
python -m pip install pyinstaller==5.13.2
python devscripts/update-version.py -c "nicolaasjan/yt-dlp" -r "nicolaasjan/yt-dlp" "2025.11.25.144622"
python -m bundle.pyinstaller --onedir

Where `requirements.txt` is:

mutagen
pycryptodomex
brotli; implementation_name=='cpython'
certifi
requests>=2.32.2,<3
urllib3>=2.0.2,<3
websockets>=13.0
yt-dlp-ejs

I have tested building with PyInstaller 6.16.0 from 3dyd (waiting for 6.17.0 now...)

It can be done and it works, but it also requires a reinstall, because of the totally different contents of the zip file (link)...

(and then also the ugly presence of `psapi.dll` in the root directory to make it work)

TL;DR; as long as it works the old fashioned way, I'm hesitant to build with the "modern" PyInstaller on XP. 🤔

It's annoying that yt-dlp always wants the latest and "greatest". 😠

8 hours ago, nicolaasjan said:

TL;DR; as long as it works the old fashioned way, I'm hesitant to build with the "modern" PyInstaller on XP. 🤔

:thumbup

8 hours ago, nicolaasjan said:

It's annoying that yt-dlp always wants the latest and "greatest". 😠

Ditto that...

Another thing I wanted to mention to you @nicolaasjan is that in both the latest "WinXP" packages: 

https://github.com/nicolaasjan/yt-dlp/releases/download/2025.11.25.144622/yt-dlp_x86_winXP.exe

https://github.com/nicolaasjan/yt-dlp/releases/download/2025.11.25.144622/yt-dlp_x86_winXP.zip

a new DLL appears to have infiltrated, "fileextd.dll", which wasn't there in all of your previous "WinXP" releases, e.g. in 

https://github.com/nicolaasjan/yt-dlp/releases/download/2025.11.12.051143/yt-dlp_x86_winXP.exe

https://github.com/nicolaasjan/yt-dlp/releases/download/2025.11.12.051143/yt-dlp_x86_winXP.zip

Was that an inadvertent inclusion? :dubbio:

1 hour ago, VistaLover said:

a new DLL appears to have infiltrated, "fileextd.dll", which wasn't there in all of your previous "WinXP" releases

Was that an inadvertent inclusion? :dubbio:

Very sharp observation. 👍

I have no idea how that might have happened... The build environment is still the same Python 3.11 from @cmalex.

What is that file supposed to do. Can it do any harm?

 

fileextd.dll its a old rare file that provide some functions that xp useally dont have - it can be seen as kernel extender

i dont know its origin either some say its from the xbox and a official file while other say its a handmade file by someone

maybe we get some more information about it

what i know is that it is shown as used library on microsofts website:

https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-getfileinformationbyhandleex

then "Kernel32.lib; FileExtd.lib on Windows Server 2003 and Windows XP"

Edited by user57

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.