Skip to content

macos: fix yt-dlp#785

Open
prez wants to merge 1 commit into
Syncplay:masterfrom
prez:macosfix1
Open

macos: fix yt-dlp#785
prez wants to merge 1 commit into
Syncplay:masterfrom
prez:macosfix1

Conversation

@prez

@prez prez commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

this is an attempt to fix #585. seems to work fine for me locally on macOS.

explanation from the commit message:

syncplay spawns mpv as a subprocess, inheriting its env. mpv in turn spawns yt-dlp, and this inherits PYTHONHOME / PYTHONPATH pointing at syncplay's bundled python, making any python change where it looks for its stdlib, causing it to crash with ModuleNotFoundError: No module named 'encodings'. I do not fully understand why the old code did things the way it did, but it appears as if it attempted to work around this by hardcoding PATH (questionable) to "common" (and incomplete) locations, then doing a peculiar and fragile dance to extract its PYTHONPATH...
my hypothesis is that the only thing breaking yt-dlp is the inherited PYTHONHOME/PYTHONPATH, so just drop that and rely on python locating its stdlib.

closes Syncplay#585

syncplay spawns mpv as a subprocess, inheriting its env.
mpv in turn spawns yt-dlp, and this inherits PYTHONHOME / PYTHONPATH pointing
at syncplay's bundled python, making any python change where it looks for its stdlib,
causing it to crash with `ModuleNotFoundError: No module named 'encodings'`.
I do not fully understand why the old code did things the way it did, but it appears
as if it attempted to work around this by hardcoding PATH (questionable) to "common"
(and incomplete) locations, then doing a peculiar and fragile dance to extract
its PYTHONPATH...
my hypothesis is that the only thing breaking yt-dlp is the inherited PYTHONHOME/PYTHONPATH,
so just drop that and rely on python locating its stdlib.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

On MacOS Ventura; Error: "Failed to recognize file format" when attempting to play any YouTube video

1 participant