The packaging section claimed <config>/obs-studio/plugins/<name>/bin/64bit is "exactly the layout OBS searches on Linux and Windows". The layout is right; the base directory is not the same on both.
obs-studio's AddExtraModulePaths() (frontend/widgets/OBSBasic.cpp in 32.x, UI/window-basic-main.cpp in 30.x) uses GetAppConfigPath on Linux/macOS but GetProgramDataPath on Windows — os_get_program_data_path → CSIDL_COMMON_APPDATA → C:\ProgramData. So Windows scans C:\ProgramData\obs-studio\plugins\, never %APPDATA%\obs-studio\ (CSIDL_APPDATA), which on Windows is where OBS keeps its config.
This bit a director on 2026-09-09: a correctly-shaped install under AppData\Roaming produced an OBS log with zero mention of the module. Worth calling out because the failure is silent — OBS names any module it finds but cannot use (is disabled, Failed to initialize module, Module ... not loaded), so no line at all means the file is not on a scanned path.
Docs only; no build or code change. The streamer-tools download page carried the same error and is fixed in that repo's PR #36.
The packaging section claimed `<config>/obs-studio/plugins/<name>/bin/64bit` is "exactly the layout OBS searches on Linux and Windows". The *layout* is right; the *base directory* is not the same on both.
obs-studio's `AddExtraModulePaths()` (`frontend/widgets/OBSBasic.cpp` in 32.x, `UI/window-basic-main.cpp` in 30.x) uses `GetAppConfigPath` on Linux/macOS but `GetProgramDataPath` on Windows — `os_get_program_data_path` → `CSIDL_COMMON_APPDATA` → `C:\ProgramData`. So Windows scans `C:\ProgramData\obs-studio\plugins\`, never `%APPDATA%\obs-studio\` (`CSIDL_APPDATA`), which on Windows is where OBS keeps its config.
This bit a director on 2026-09-09: a correctly-shaped install under `AppData\Roaming` produced an OBS log with **zero mention** of the module. Worth calling out because the failure is silent — OBS names any module it finds but cannot use (`is disabled`, `Failed to initialize module`, `Module ... not loaded`), so no line at all means the file is not on a scanned path.
Docs only; no build or code change. The streamer-tools download page carried the same error and is fixed in that repo's PR #36.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01AzGnvQ6wfD7bw7PZN35ft9
The packaging section claimed `<config>/obs-studio/plugins/<name>/bin/64bit`
is "exactly the layout OBS searches on Linux and Windows". The layout is
right; the base directory is not the same on both. obs-studio's
`AddExtraModulePaths()` uses `GetAppConfigPath` on Linux/macOS but
`GetProgramDataPath` (`CSIDL_COMMON_APPDATA`) on Windows, so Windows scans
`C:\ProgramData\obs-studio\plugins\`, never `%APPDATA%\obs-studio\`
(`CSIDL_APPDATA`) — which on Windows is where OBS keeps its config.
This bit a director on 2026-09-09: a correctly-shaped install under
`AppData\Roaming` produced an OBS log with zero mention of the module. Noted
here because the failure is silent — OBS names any module it finds but cannot
use, so an absence of any line means the file is not on a scanned path at all.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AzGnvQ6wfD7bw7PZN35ft9
jknapp
merged commit 1571d7ecea into main2026-09-09 23:44:21 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The packaging section claimed
<config>/obs-studio/plugins/<name>/bin/64bitis "exactly the layout OBS searches on Linux and Windows". The layout is right; the base directory is not the same on both.obs-studio's
AddExtraModulePaths()(frontend/widgets/OBSBasic.cppin 32.x,UI/window-basic-main.cppin 30.x) usesGetAppConfigPathon Linux/macOS butGetProgramDataPathon Windows —os_get_program_data_path→CSIDL_COMMON_APPDATA→C:\ProgramData. So Windows scansC:\ProgramData\obs-studio\plugins\, never%APPDATA%\obs-studio\(CSIDL_APPDATA), which on Windows is where OBS keeps its config.This bit a director on 2026-09-09: a correctly-shaped install under
AppData\Roamingproduced an OBS log with zero mention of the module. Worth calling out because the failure is silent — OBS names any module it finds but cannot use (is disabled,Failed to initialize module,Module ... not loaded), so no line at all means the file is not on a scanned path.Docs only; no build or code change. The streamer-tools download page carried the same error and is fixed in that repo's PR #36.
🤖 Generated with Claude Code
https://claude.ai/code/session_01AzGnvQ6wfD7bw7PZN35ft9