Jump to content

Who here has a Youtube-DL compile for WinXP?


Recommended Posts

Posted
7 hours ago, nicolaasjan said:

If you specifically want opus, yt-dlp can do that for you? 🤔

Try this:

yt-dlp -x -f bestaudio[ext=webm] --embed-metadata --embed-thumbnail https://www.youtube.com/watch?v=PD-MdiUm1_Y

( `-x` will extract the opus audio)

This uses ffmpeg, which appears to modify the output somehow. If I take a webm, turn it into a wav, and compare that to a webm > ffmpeg opus > wav, they have a slightly different waveform. If I compare it to a mkvextract opus wav, they match.


Posted
18 minutes ago, K4sum1 said:

Why not just add back Python 3.9 support on your fork?

I was thinking about that, but it may not be easy, I guess?

When the time comes, maybe someone here will help me with it (I'm not a Python coder).

 

Furthermore, newer changes applied to the various extractors (especially for YouTube), using code that is incompatible with Python <3.10 will not work anyway. :no:

From Issue #13858:

Quote

This change will allow us to take advantage of some new Python features, most notably these related to type hints.

 

 

Posted
22 minutes ago, K4sum1 said:

Why not just add back Python 3.9 support on your fork?

that´s a important thing to talk about again

often newer app´s depending on side things, like runtimes(c-runtime, sdt), they require cmake, they require a new c++ style (not only the ones that allow new types of writings, rather something like "currentpath" - this is going into a direction of a script rather then a language (in java a scriptish language that is for example the case)), they requie a new version of compiler like vs2019 or even vs2022, they require a engine like "cuda, like dwrite, like  LAV", MinGW,maybe also a second programming language like masm

thats only to name a few ! it rather are even more

those rather also are already bond to win10 or win11 like directx11 is for example 

 

so this is a problem you have today if only one of these things break up (in this case python) it might be a direct end - if more break up you have a even bigger problem

 

the reason behind this are scriptish languages (what c++ in newer styles is also going into that direction) - and its going very into that direction

 

a elder style is very independed of it´s operating system, like something "currentpath" would have a own code rather then somewhere in the code "std:CurrentPath" -> that might looks small but its not - that code is getting translated to a "real next code" what then up uses windows functions ... - its not faster it´s like an illusion that looks small 

and the knowledge is getting lost how these functions actually work - so a new programmer will always come up with the std:CurrentPath (or whatever std´s, c-runtimes, engines) there now are ...

 

in a bigger program there are then many of these things - you cant just unbound all of them - a older compiler would not compile them, and a newer compile (translate) them to win11 functions ...

 

so it might be better to have a solution in a normal c++ style - then you are fully independed of all these things - they cant just release a new phyton version that you have to fix - then you have the control about your code

 

 

ffmpeg in the past was relativ independed today it´s going a different direction it begin to use engines rather then having own routines that can do the things

today ffmpeg is rather like a command line - and internal it already started to use many engines and these use win10 functions, drivers, dependencies - up to some point i found ffmpeg a very nice tool, today im a bit disapointed of it

 

a few years ago i mentioned that problem - now we face it again 

Posted

A long time ago I asked user @Maroc (now gone...) on the My Digital Life Forums about his Python 3.11 Embed build for XP.

As I mentioned before, I can't get it working on XP. See also our conversation later in that thread.

I managed to build yt-dlp with it, but when using I get errors like:

WARNING: [youtube] Unable to download API page: <urllib3.connection.HTTPSConnection object at 0x03B29A70>: Failed to establish a new connection: [Errno 0] Error (caused by TransportError('<urllib3.connection.HTTPSConnection object at 0x03B29A70>: Failed to establish a new connection: [Errno 0] Error'))

 

Posted

im not someone who programs in python but they say its intensional to drop support for python 3.9
the commits say that they could support it still (so also that devloper says there) ... but they dont want to 
and that error says it has to do with "urllib3" of python - what is part of their removement in newer python versions
they say everything below "urllib3" is dropped


urllib3 would be the thing to look for, like what functions of other then XP they used here - and if you can make this version compatible with xp

Posted (edited)

Can someone please test my yt-dlp Python 3.11 build, to see if you face the same errors when trying to download a video?

[debug] Command-line config: ['-v', 'https://www.youtube.com/watch?v=Ef9QnZVpVd8']
[debug] User config "C:\Documents and Settings\Nico\Application Data\yt-dlp\config.txt": ['--rm-cache-dir', '--proxy', '', '--console-title', '--force-ipv4', '--add-metadata', '--embed-thumbnail', '--convert-thumbnails', 'jpg', '--ppa', 'ffmpeg:-metadata synopsis=""', '-o', '~/Bureaublad/%(title)s.%(ext)s', '-f', 'bestvideo[height<=1080][ext=mp4][vcodec^=avc]+bestaudio[ext=m4a]/best[ext=mp4]/best', '--sponsorblock-remove', 'all']
[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.07.27.085012 (win_x86_exe)
[debug] Python 3.11.9 (CPython x86 32bit) - Windows-XP-5.1.2600-SP3 (OpenSSL 3.3.1 4 Jun 2024)
[debug] exe versions: ffmpeg N-116828-g6aafe61-Reino (fdk,setts), ffprobe N-116828-g6aafe61-Reino, phantomjs 1.9.8
[debug] Optional libraries: Cryptodome-3.23.0, brotli-1.1.0, certifi-2025.07.14, mutagen-1.47.0, requests-2.32.3, sqlite3-3.45.3, urllib3-2.5.0, websockets-15.0.1
[debug] Proxy map: {'all': '__noproxy__'}
[debug] Request Handlers: urllib, requests, websockets
[debug] Plugin directories: none
[debug] Loaded 1856 extractors
Removing cache dir C:\Documents and Settings\Nico/.cache\yt-dlp ..
[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: https://www.youtube.com/watch?v=Ef9QnZVpVd8
[youtube] Ef9QnZVpVd8: Downloading webpage
WARNING: [youtube] <urllib3.connection.HTTPSConnection object at 0x0378AF30>: Failed to establish a new connection: [Errno 0] Error. Retrying (1/3)...
[youtube] Ef9QnZVpVd8: Downloading webpage
WARNING: [youtube] <urllib3.connection.HTTPSConnection object at 0x032FD1B0>: Failed to establish a new connection: [Errno 0] Error. Retrying (2/3)...
[youtube] Ef9QnZVpVd8: Downloading webpage
WARNING: [youtube] <urllib3.connection.HTTPSConnection object at 0x032FB730>: Failed to establish a new connection: [Errno 0] Error. Retrying (3/3)...
[youtube] Ef9QnZVpVd8: Downloading webpage
WARNING: [youtube] Unable to download webpage: <urllib3.connection.HTTPSConnection object at 0x0378A110>: Failed to establish a new connection: [Errno 0] Error (caused by TransportError('<urllib3.connection.HTTPSConnection object at 0x0378A110>: Failed to establish a new connection: [Errno 0] Error')). Giving up after 3 retries
[youtube] Ef9QnZVpVd8: Downloading initial data API JSON
WARNING: [youtube] <urllib3.connection.HTTPSConnection object at 0x032F9AD0>: Failed to establish a new connection: [Errno 0] Error. Retrying (1/3)...
[youtube] Ef9QnZVpVd8: Downloading initial data API JSON
WARNING: [youtube] <urllib3.connection.HTTPSConnection object at 0x032F6FB0>: Failed to establish a new connection: [Errno 0] Error. Retrying (2/3)...
[youtube] Ef9QnZVpVd8: Downloading initial data API JSON
WARNING: [youtube] <urllib3.connection.HTTPSConnection object at 0x032FBE90>: Failed to establish a new connection: [Errno 0] Error. Retrying (3/3)...
[youtube] Ef9QnZVpVd8: Downloading initial data API JSON
ERROR: [youtube] Ef9QnZVpVd8: Unable to download API page: <urllib3.connection.HTTPSConnection object at 0x032F9910>: Failed to establish a new connection: [Errno 0] Error (caused by TransportError('<urllib3.connection.HTTPSConnection object at 0x032F9910>: Failed to establish a new connection: [Errno 0] Error'))
  File "yt_dlp\extractor\common.py", line 761, in extract
  File "yt_dlp\extractor\youtube\_video.py", line 3814, in _real_extract
  File "yt_dlp\extractor\youtube\_video.py", line 3794, in _initial_extract
  File "yt_dlp\extractor\youtube\_video.py", line 3772, in _download_initial_data
  File "yt_dlp\extractor\youtube\_base.py", line 1213, in _extract_response
  File "yt_dlp\utils\_utils.py", line 5248, in __iter__
  File "yt_dlp\extractor\common.py", line 4059, in _error_or_warning
  File "yt_dlp\utils\_utils.py", line 5256, in report_retry
  File "yt_dlp\extractor\youtube\_base.py", line 1203, in _extract_response
  File "yt_dlp\extractor\youtube\_base.py", line 791, in _call_api
  File "yt_dlp\extractor\common.py", line 1149, in download_content
  File "yt_dlp\extractor\common.py", line 1107, in download_handle
  File "yt_dlp\extractor\common.py", line 972, in _download_webpage_handle
  File "yt_dlp\extractor\youtube\_base.py", line 769, in _request_webpage
  File "yt_dlp\extractor\common.py", line 921, in _request_webpage

  File "urllib3\connection.py", line 198, in _new_conn
  File "urllib3\util\connection.py", line 60, in create_connection
  File "socket.py", line 962, in getaddrinfo
OSError: [Errno 0] Error

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "yt_dlp\networking\_requests.py", line 338, in _send
  File "requests\sessions.py", line 589, in request
  File "requests\sessions.py", line 703, in send
  File "requests\adapters.py", line 667, in send
  File "urllib3\connectionpool.py", line 841, in urlopen
  File "urllib3\util\retry.py", line 449, in increment
  File "urllib3\util\util.py", line 39, in reraise
  File "urllib3\connectionpool.py", line 787, in urlopen
  File "urllib3\connectionpool.py", line 488, in _make_request
  File "urllib3\connectionpool.py", line 464, in _make_request
  File "urllib3\connectionpool.py", line 1093, in _validate_conn
  File "urllib3\connection.py", line 753, in connect
  File "urllib3\connection.py", line 213, in _new_conn
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x032F9910>: Failed to establish a new connection: [Errno 0] Error

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "yt_dlp\extractor\common.py", line 908, in _request_webpage
  File "yt_dlp\YoutubeDL.py", line 4236, in urlopen
  File "yt_dlp\networking\common.py", line 117, in send
  File "yt_dlp\networking\_helper.py", line 194, in wrapper
  File "yt_dlp\networking\common.py", line 359, in send
  File "yt_dlp\networking\_requests.py", line 366, in _send
yt_dlp.networking.exceptions.TransportError: <urllib3.connection.HTTPSConnection object at 0x032F9910>: Failed to establish a new connection: [Errno 0] Error

 

Edited by nicolaasjan

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
×
×
  • Create New...