# Go FFmpeg WeChat Stream Demo Standalone demo: Go finds the visible WeChat window, starts FFmpeg `avfoundation` screen capture, crops to the WeChat window rectangle, and serves an MJPEG stream locally. If FFmpeg screen capture does not produce frames, the demo automatically falls back to macOS window-only capture with `screencapture -l `. This captures the WeChat window itself, so other windows covering it should not appear in the stream. Run: ```bash cd demos/go-ffmpeg-wechat-stream go run . ``` Open: ```text http://127.0.0.1:8765/ ``` Options: ```bash go run . -input 3:none -fps 15 -port 8765 -open=true -wait=true ``` Notes: - macOS only. - Requires FFmpeg installed and available in `PATH`. - Requires Screen Recording permission for the terminal/app running the demo. - WeChat must be visible on screen. - By default the demo waits until a visible WeChat window is found. Use `-wait=false` to fail immediately. - FFmpeg `avfoundation` is screen-based, so crop mode can include windows covering WeChat. The fallback `screencapture -l` path is window-based and is closer to Tencent Meeting style app-window sharing. - `-input` is the FFmpeg `avfoundation` screen device. List devices with: ```bash ffmpeg -hide_banner -f avfoundation -list_devices true -i "" ```