Jump to content

Who here has a Youtube-DL compile for WinXP?


Recommended Posts

Posted
On 9/26/2025 at 6:49 PM, nicolaasjan said:

I just realised that if I build the Win 7 versions with adang1345's Python, they should also work on Vista (?).

Well, I have just headed to your releases page on GitHub

https://github.com/nicolaasjan/yt-dlp/releases/

then to 

https://github.com/nicolaasjan/yt-dlp/releases/tag/2025.09.27.071342

and fetched file: 

https://github.com/nicolaasjan/yt-dlp/releases/download/2025.09.27.071342/yt-dlp_x86_win7.exe

Results: 

yt-dlp_x86_win7 -v

[debug] Command-line config: ['-v']
[debug] Encodings: locale cp1253, fs utf-8, pref cp1253, out utf-8 (No VT), error utf-8 (No VT), screen utf-8 (No VT)
[debug] yt-dlp version nicolaasjan/yt-dlp@2025.09.27.071342 (win7_x86_exe*)
[debug] Python 3.13.7 (CPython x86 32bit) - Windows-Vista-6.0.6003-SP2 (OpenSSL 3.0.16 11 Feb 2025)
[debug] exe versions: none
[debug] Optional libraries: Cryptodome-3.23.0, brotli-1.1.0, certifi-2025.08.03, 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
[debug] Plugin directories: none
[debug] Loaded 1833 extractors

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

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

:cheerleader:; some observations:

1. What does the "*" stand for in the "version" line?
(win7_x86_exe*)

2. This binary is smaller (17.7 MiB) than the one published here (18.4 MiB) ;) ; ofc, it doesn't contain the iOS-format-enabling patch, but this is not it; the Win7-variant does not embed 38 "api-ms-win-*.dll" files, ALL part of Win10 UCRT :P ; the binary launches OK here probably because I had the runtime installed via MS Update (Windows6.0-KB2999226-x86.msu) already :whistle:...

3. As long as yt-dlp_x86_win7.exe is being compiled with adang1345's Vista-compatible py3.13.7 and packaged with 3dyd's Vista-compatible PyInstaller-6.15 (and Win10 UCRT is available in the system), then the binary shall be compatible with Vista SP2, too :thumbup ...

4. On the releases page, I see "PyInstaller-onedir" packages for Win7_x64,
https://github.com/nicolaasjan/yt-dlp/releases/download/2025.09.27.071342/yt-dlp_win7.zip
WinXP_x86
,
https://github.com/nicolaasjan/yt-dlp/releases/download/2025.09.27.071342/yt-dlp_x86_winXP.zip 
but NOT :( for Win7_x86 (yt-dlp_x86_win7.zip) ; another "maintenance burden" concern :sneaky: ? ... 

Thanks for the tremendous service you're providing :worship: (and I won't tire mentioning this again and again :wub: ) ...

Autumn-y (finally) regards from Northern Greece :D ...


Posted (edited)
11 hours ago, VistaLover said:

1. What does the "*" stand for in the "version" line?
(win7_x86_exe*)

I really don't know... Usually it should point to a remark at the bottom, but there is none.

Quote

2. This binary is smaller (17.7 MiB) than the one published here (18.4 MiB) ;) ; ofc, it doesn't contain the iOS-format-enabling patch, but this is not it; the Win7-variant does not embed 38 "api-ms-win-*.dll" files, ALL part of Win10 UCRT :P ; the binary launches OK here probably because I had the runtime installed via MS Update (Windows6.0-KB2999226-x86.msu) already :whistle:...

Well, if I get any complaints, I'll point them to the download location.

Shouldn't fully updated Windows 7 systems have them already?

Quote

4. On the releases page, I see "PyInstaller-onedir" packages for Win7_x64,
https://github.com/nicolaasjan/yt-dlp/releases/download/2025.09.27.071342/yt-dlp_win7.zip
WinXP_x86
,
https://github.com/nicolaasjan/yt-dlp/releases/download/2025.09.27.071342/yt-dlp_x86_winXP.zip 
but NOT :( for Win7_x86 (yt-dlp_x86_win7.zip) ; another "maintenance burden" concern :sneaky: ? ... 

That `onedir` version was a special request. Some people always complain about yt-dlp extracting a lot of files to the TEMP folder each time it's launched. 😐

(especially on forum.ru-board.com)

Maybe one day I will include such a version for Win7_x86.

Edited by nicolaasjan
Posted (edited)
On 9/27/2025 at 11:35 AM, nicolaasjan said:

yt-dlp_Py3.13.7_x86_Vista

Are you also planning to switch to Python 3.13.7 for Windows XP (yt-dlp_x86_winXP.exe)? 

Edited by davidz
Posted
56 minutes ago, davidz said:

Are you also planning to switch to Python 3.13.7 for Windows XP (yt-dlp_x86_winXP.exe)? 

I would like to, but I depend on @cmalex for providing Python environments for XP (for which I am very grateful :worship: ).

The last one being: Python3.11.4_openssl3.5.2.zip from this archive.

Posted (edited)
On 9/27/2025 at 8:35 AM, nicolaasjan said:

It will work on higher versions of Windows as well, so @Reino can test it. :)

Updated yt-dlp_Py3.13.7_x86_Vista.

Confirmed. Thanks.

3 hours ago, autodidact said:

I have made a Windows XP compatible build of FFmpeg that targets a Pentium 4.

:w00t:

Edited by Reino
Posted

Well, our "friends" :thumbdown over at Google :realmad: have been, again, working hard :( ; like @j7n had reported in the recent past, they are now pushing, in my part of the globe, too, their SABR-protocol formats even for the tv yt_client; with the latest yt-dlp_x86.exe version, the special "Vista" variant, I can now only get format 18 (360p) for the TV client, plus the WEB-S and IOS (thanks, again, nicolaasjan :wub:) formats: 

yt-dlp -vF "yrcIdXBwVww"

[debug] Command-line config: ['--ffmpeg-location', '..\\FFmpeg', '--downloader-args', 'ffmpeg:-v 8 -stats', '-vF', 'yrcIdXBwVww']
[debug] Encodings: locale cp1253, fs utf-8, pref cp1253, out utf-8 (No VT), error utf-8 (No VT), screen utf-8 (No VT)
[debug] yt-dlp version local@2025.09.27 [88e2a2de8] (win_x86_exe)
[debug] Python 3.13.7 (CPython x86 32bit) - Windows-Vista-6.0.6003-SP2 (OpenSSL 3.0.16 11 Feb 2025)
[debug] exe versions: ffmpeg n6.1-dev-2615-N-112499-ga76b409 (setts), ffprobe n6.1-dev-2615-N-112499-ga76b409, phantomjs 2.1.1, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.23.0, brotli-1.1.0, certifi-2025.08.03, 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
[debug] Plugin directories: none
[debug] Loaded 1833 extractors
[debug] [youtube] [pot] PO Token Providers: none
[debug] [youtube] [pot] PO Token Cache Providers: memory
[debug] [youtube] [pot] PO Token Cache Spec Providers: webpo
[youtube] Extracting URL: yrcIdXBwVww
[youtube] yrcIdXBwVww: Downloading webpage
[youtube] yrcIdXBwVww: Downloading tv client config
[debug] [youtube] Forcing player 0004de42 in place of player da13af8d
        original url = /s/player/da13af8d/player_ias.vflset/en_US/base.js
[youtube] yrcIdXBwVww: Downloading tv player API JSON
[youtube] yrcIdXBwVww: Downloading web safari player API JSON
[youtube] yrcIdXBwVww: Downloading ios player API JSON
[debug] Loading youtube-nsig.0004de42-main from cache
[debug] [youtube] Decrypted nsig V6BpqA2btXTozIh => 30NYUH_c5XH0Ag
WARNING: [youtube] yrcIdXBwVww: Some tv client https formats have been skipped as they are missing a url. YouTube may have enabled the SABR-only or Server-Side Ad Placement experiment for the current session. See  https://github.com/yt-dlp/yt-dlp/issues/12482  for more details
WARNING: [youtube] yrcIdXBwVww: Some web_safari client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See  https://github.com/yt-dlp/yt-dlp/issues/12482  for more details
[debug] [youtube] yrcIdXBwVww: ios client https formats require a GVS PO Token which was not provided. They will be skipped as they may yield HTTP Error 403. You can manually pass a GVS PO Token for this client with --extractor-args "youtube:po_token=ios.gvs+XXX". For more information, refer to  https://github.com/yt-dlp/yt-dlp/wiki/PO-Token-Guide . To enable these broken formats anyway, pass --extractor-args "youtube:formats=missing_pot"
WARNING: [youtube] yrcIdXBwVww: Some web client https formats have been skipped as they are missing a url. YouTube is forcing SABR streaming for this client. See  https://github.com/yt-dlp/yt-dlp/issues/12482  for more details
[youtube] yrcIdXBwVww: Downloading m3u8 information
[youtube] yrcIdXBwVww: Downloading m3u8 information
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec, channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[info] Available formats for yrcIdXBwVww:
ID  EXT   RESOLUTION FPS CH |   FILESIZE   TBR PROTO | VCODEC          VBR ACODEC     ASR MORE INFO
----------------------------------------------------------------------------------------------------------------------
sb3 mhtml 48x27        0    |                  mhtml | images          storyboard
sb2 mhtml 80x45        1    |                  mhtml | images          storyboard
sb1 mhtml 160x90       1    |                  mhtml | images          storyboard
sb0 mhtml 320x180      1    |                  mhtml | images          storyboard
233 mp4   audio only        |                  m3u8  | audio only          unknown        Untested, Default, low, IOS
234 mp4   audio only        |                  m3u8  | audio only          unknown        Untested, Default, high, IOS
91  mp4   256x144     30    | ~  3.43MiB  123k m3u8  | avc1.4D400C         mp4a.40.5      WEB-S
269 mp4   256x144     30    | ~  3.43MiB  123k m3u8  | avc1.4D400C    123k video only     Untested, IOS
603 mp4   256x144     30    | ~  2.93MiB  106k m3u8  | vp09.00.11.08  106k video only     Untested, IOS
92  mp4   426x240     30    | ~  5.41MiB  195k m3u8  | avc1.4D4015         mp4a.40.5      WEB-S
229 mp4   426x240     30    | ~  5.41MiB  195k m3u8  | avc1.4D4015    195k video only     Untested, IOS
604 mp4   426x240     30    | ~  4.04MiB  145k m3u8  | vp09.00.20.08  145k video only     Untested, IOS
93  mp4   640x360     30    | ~ 11.03MiB  397k m3u8  | avc1.4D401E         mp4a.40.2      WEB-S
230 mp4   640x360     30    | ~ 11.03MiB  397k m3u8  | avc1.4D401E    397k video only     Untested, IOS
18  mp4   640x360     30  2 |    4.15MiB  149k https | avc1.42001E         mp4a.40.2  22k 360p, TV
605 mp4   640x360     30    | ~  9.08MiB  327k m3u8  | vp09.00.21.08  327k video only     Untested, IOS
94  mp4   854x480     30    | ~ 20.21MiB  728k m3u8  | avc1.4D401F         mp4a.40.2      WEB-S
231 mp4   854x480     30    | ~ 20.21MiB  728k m3u8  | avc1.4D401F    728k video only     Untested, IOS
606 mp4   854x480     30    | ~ 13.77MiB  496k m3u8  | vp09.00.30.08  496k video only     Untested, IOS
95  mp4   1280x720    30    | ~ 41.07MiB 1479k m3u8  | avc1.64001F         mp4a.40.2      WEB-S
232 mp4   1280x720    30    | ~ 41.07MiB 1479k m3u8  | avc1.64001F   1479k video only     Untested, IOS
609 mp4   1280x720    30    | ~ 26.75MiB  963k m3u8  | vp09.00.31.08  963k video only     Untested, IOS
96  mp4   1920x1080   30    | ~ 81.20MiB 2923k m3u8  | avc1.640028         mp4a.40.2      WEB-S
270 mp4   1920x1080   30    | ~ 81.20MiB 2923k m3u8  | avc1.640028   2923k video only     Untested, IOS
614 mp4   1920x1080   30    | ~ 46.56MiB 1676k m3u8  | vp09.00.40.08 1676k video only     Untested, IOS
620 mp4   2560x1440   30    | ~131.06MiB 4718k m3u8  | vp09.00.50.08 4718k video only     Untested, IOS

This is, hopefully, an A/B test at the moment, so invoking yt-dlp with the same command multiple times may finally get one the sought-after ABR formats (DASH) for the (default) TV yt_client :whistle:...

Posted (edited)
11 hours ago, autodidact said:

I have made a Windows XP compatible build of FFmpeg that targets a Pentium 4.

I relied heavily on rdp and @Reino build scripts so thanks also to them.

ffmpeg-8.1-630-635cb4543f-win32-static-xpmod-P4.7z

libfdk-aac-2.0.3-158-d8e6b1a-win32-xpmod-P4.7z

It works. :cheerleader:

(also on Vista :))

[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.09.27.071342 (winXP_x86_exe*)
[debug] Python 3.11.4 (CPython x86 32bit) - Windows-XP-5.1.2600-SP3 (OpenSSL 3.5.2 5 Aug 2025)
[debug] exe versions: ffmpeg N-121254-g635cb4543f (fdk,setts), ffprobe N-121254-g635cb4543f, phantomjs 1.9.8
[debug] Optional libraries: Cryptodome-3.23.0, brotli-1.1.0, certifi-2025.08.03, 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
[debug] Plugin directories: none
[debug] Loaded 1833 extractors

Are you planning to update it once in a while?

Edited by nicolaasjan
Posted
21 hours ago, autodidact said:

Thank you @nicolaasjan for your yt-dlp builds.  

I have made a Windows XP compatible build of FFmpeg that targets a Pentium 4.

I relied heavily on rdp and @Reino build scripts so thanks also to them.

ffmpeg-8.1-630-635cb4543f-win32-static-xpmod-P4.7z

libfdk-aac-2.0.3-158-d8e6b1a-win32-xpmod-P4.7z

I'll join the topic too (XP ffmpeg Pentium 4): http://blog.k-tai-douga.com/ 

Posted
16 hours ago, nicolaasjan said:

Are you planning to update it once in a while?

Yes, if there is interest I will update periodically.

 

@xjani I was not aware of your work.  I will check it out.

Posted (edited)
3 hours ago, autodidact said:

I was not aware of your work

... Probably not their work :P , per se (seeing that they have the Polish flag before their username); published builds there are the impressive work of a Japanese person, whose username (in Japanese) is "あべちん" (that Google translates to "Abechin") :) ; in fact, I had contacted him some years ago about some issues in his FFmpeg builds, at a time when machine translation wasn't perfect (and AI totally absent); his blog's comment form, e.g. 

http://blog.k-tai-douga.com/article/191451101.html#comment

(Leave a commentwouldn't accept just Latin characters (I posted in English), so I had to include some Kanji characters, too, for my message to go through ;) ... We did communicate in the end, the problems were mitigated in a future FFmpeg release... 

Edited by VistaLover
Posted
2 hours ago, VistaLover said:

... Probably not their work :P , per se (seeing that they have the Polish flag before their username); published builds there are the impressive work of a Japanese person, whose username (in Japanese) is "あべちん" (that Google translates to "Abechin") :) ; in fact, I had contacted him some years ago about some issues in his FFmpeg builds, at a time when machine translation wasn't perfect (and AI totally absent); his blog's comment form, e.g. 

http://blog.k-tai-douga.com/article/191451101.html#comment

(Leave a commentwouldn't accept just Latin characters (I posted in English), so I had to include some Kanji characters, too, for my message to go through ;) ... We did communicate in the end, the problems were mitigated in a future FFmpeg release... 

After checking it out, I see what you mean.  Thanks for clarifying.  It is impressive work and ongoing for quite some time.  

Posted
10 hours ago, autodidact said:

 

@xjani I was not aware of your work.  I will check it out.

This is not my work :)
I just gave the link, I thought it might be useful to someone.

Posted

The SABR thing comes and goes. At the moment downloading works. I can't get anything from the safari HSL method from most videos using the format number that previously worked.

I wonder how is it in Google's interest to maintain this multitude of formats. Imagine how many videos they have and now have to devote several times the storage space on their cloud. They could just have h.264 or 3 or so bitrates and it would work great.

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...