Skip to content

Don't build the vfwcap capture device on Windows - #102

Merged
djthorpe merged 1 commit into
mainfrom
djt/1013/windows-vfwcap
Oct 13, 2026
Merged

djthorpe merged 1 commit into
mainfrom
djt/1013/windows-vfwcap

Conversation

@djthorpe

@djthorpe djthorpe commented Oct 13, 2026 •

Copy link
Copy Markdown
Member

Summary

FFmpeg's Video for Windows capture device (vfwcap) links AVICAP32.dll and MSVFW32.dll. Windows Server Core doesn't have them, so an executable linked with go-media's static FFmpeg fails to start in a mcr.microsoft.com/windows/servercore container, with 0xC0000135 (DLL not found).

This was found building go-omodie's Windows image (djthorpe/go-omodie#21). Every other system DLL the executable loads is in Server Core.

On Windows, FFmpeg is now configured with --disable-indev=vfwcap. Video for Windows is the legacy capture API, and the DirectShow (dshow) and screen (gdigrab) capture devices are still built. Other platforms are unchanged.

Test plan

  • make -n ffmpeg-configure adds --disable-indev=vfwcap only when OS is windows.
  • Windows CI builds and passes.
  • go-omodie's Windows image starts once it uses this.

Video for Windows capture (vfwcap) links avicap32.dll and msvfw32.dll,
which Windows Server Core doesn't have, so an executable linked with
ffmpeg couldn't start in a Server Core container. The DirectShow and
gdigrab capture devices are still built.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 13, 2026 17:57

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The narrowly scoped platform condition correctly addresses the unavailable Server Core DLL dependencies without affecting other builds.

0 open findings

What changed in this PR

Disables FFmpeg’s legacy vfwcap input device on Windows to support Windows Server Core containers.

Changes:

  • Adds a Windows-specific FFmpeg configuration flag.
  • Leaves other platforms and Windows capture devices unchanged.
File Description
Makefile Applies --disable-indev=vfwcap only on Windows builds.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@djthorpe djthorpe self-assigned this Oct 13, 2026
@djthorpe
djthorpe merged commit 3434c1b into main Oct 13, 2026
10 checks passed
@djthorpe
djthorpe deleted the djt/1013/windows-vfwcap branch October 13, 2026 18:41
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.

2 participants