@echo off setlocal EnableExtensions cd /d "%~dp0" REM Prefer bundled runtime (field OHD via Y:), then Program Files installs. REM Never put WindowsApps first — Store python.exe stubs shadow real Python (OHD profile). REM Prefer real Gyan FFmpeg bin — WinGet\Links symlinks often Access Denied. set "PY=" if exist "%~dp0runtime\Python311\python.exe" set "PY=%~dp0runtime\Python311\python.exe" if not defined PY if exist "%~dp0runtime\Python312\python.exe" set "PY=%~dp0runtime\Python312\python.exe" if not defined PY if exist "%ProgramFiles%\Python311\python.exe" set "PY=%ProgramFiles%\Python311\python.exe" if not defined PY if exist "%ProgramFiles%\Python312\python.exe" set "PY=%ProgramFiles%\Python312\python.exe" if not defined PY if exist "%LocalAppData%\Programs\Python\Python311\python.exe" set "PY=%LocalAppData%\Programs\Python\Python311\python.exe" if not defined PY if exist "%LocalAppData%\Programs\Python\Python312\python.exe" set "PY=%LocalAppData%\Programs\Python\Python312\python.exe" set "FFMPEG_BIN=" if exist "%~dp0runtime\ffmpeg\bin\ffmpeg.exe" set "FFMPEG_BIN=%~dp0runtime\ffmpeg\bin" if not defined FFMPEG_BIN for /d %%P in ("%ProgramFiles%\WinGet\Packages\Gyan.FFmpeg_*") do ( for /d %%V in ("%%P\ffmpeg-*") do ( if exist "%%V\bin\ffmpeg.exe" set "FFMPEG_BIN=%%V\bin" ) ) if not defined FFMPEG_BIN for /d %%P in ("%LocalAppData%\Microsoft\WinGet\Packages\Gyan.FFmpeg_*") do ( for /d %%V in ("%%P\ffmpeg-*") do ( if exist "%%V\bin\ffmpeg.exe" set "FFMPEG_BIN=%%V\bin" ) ) set "PATH=%~dp0runtime\Python311;%~dp0runtime\Python311\Scripts;%ProgramFiles%\Python311;%ProgramFiles%\Python311\Scripts;%ProgramFiles%\Python312;%ProgramFiles%\Python312\Scripts;%PATH%" if defined FFMPEG_BIN set "PATH=%FFMPEG_BIN%;%PATH%" if not exist "%~dp0run" mkdir "%~dp0run" if not exist "%~dp0log" mkdir "%~dp0log" if not exist "%~dp0config.ini" ( if exist "%~dp0config.win11.ini" ( copy /y "%~dp0config.win11.ini" "%~dp0config.ini" >nul ) else ( echo FATAL: config.ini missing >> "%~dp0log\supervisor.log" exit /b 1 ) ) if not defined PY ( echo %DATE% %TIME% FATAL: no Python found ^(runtime\Python311 or Program Files^) >> "%~dp0log\supervisor.log" exit /b 1 ) "%PY%" "%~dp0dyzineframe_supervisor.py" if errorlevel 1 ( echo %DATE% %TIME% FATAL: supervisor exit %ERRORLEVEL% py=%PY% >> "%~dp0log\supervisor.log" exit /b %ERRORLEVEL% )