Skip to content
Martin Vallevand edited this page Mar 15, 2026 · 7 revisions

libmpv-mingw64-builder

A build script that produces a yauiclient-optimised libmpv SDK for Windows x64.

Each build produces two zips per mpv version tag:

File Contents
libmpv-sdk-vX.XX.X.zip Headers, import libs (MSVC + MinGW), pkg-config
libmpv-runtime-vX.XX.X.zip libmpv-2.dll, FFmpeg DLLs, libplacebo-NNN.dll

Feature profile

  • OpenGL render API (mpv_render_context / MPV_RENDER_API_TYPE_OPENGL)
  • D3D11VA + DXVA2 hardware decoding (copy mode — compatible with OpenGL render path)
  • WASAPI audio output
  • LuaJIT scripting
  • Blu-ray playback (libbluray)
  • HTTPS streaming via Windows SChannel (tls-verify option supported)
  • Ivy Bridge CPU baseline (AVX1 / SSE4.2, no AVX2 — runs on older Intel hardware)
  • No Vulkan, no encoders, no capture devices

MPV versions

mpv tag FFmpeg libplacebo
v0.41.0 7.1.1 shared DLL (libplacebo-351.dll)
v0.40.0 7.1.1 shared DLL
v0.39.0 6.1.1 static (bundled into libmpv-2.dll)
v0.38.0 6.1.1 static (bundled into libmpv-2.dll)
v0.37.0 6.1.1 static (bundled into libmpv-2.dll)

SDK zip layout

include/
  mpv/
    client.h
    render.h
    render_gl.h
    stream_cb.h
lib/
  libmpv-2.dll        ← also present here for convenience
  libmpv.dll.a        ← MinGW import lib
  libmpv.lib          ← MSVC import lib
  libmpv.def          ← export definitions
  pkgconfig/
    libmpv.pc

Runtime zip layout

libmpv-2.dll
avcodec-NN.dll
avfilter-NN.dll
avformat-NN.dll
avutil-NN.dll
swresample-N.dll
swscale-N.dll
libplacebo-NNN.dll    ← v0.41.0 and v0.40.0 only

Downloads

Note: Upload your built zips to this wiki page via drag-and-drop in the GitHub wiki editor, then replace the placeholder URLs below with the generated CDN links.

v0.41.0

File Link
Runtime libmpv-runtime-v0.41.0.zip
SDK libmpv-sdk-v0.41.0.zip
Runtime MD5 libmpv-runtime-v0.41.0.md5
SDK MD5 libmpv-sdk-v0.41.0.md5

v0.40.0

File Link
Runtime libmpv-runtime-v0.40.0.zip
SDK libmpv-sdk-v0.40.0.zip
Runtime MD5 libmpv-runtime-v0.40.0.md5
SDK MD5 libmpv-sdk-v0.40.0.md5

v0.39.0

File Link
Runtime libmpv-runtime-v0.39.0.zip
SDK libmpv-sdk-v0.39.0.zip
Runtime MD5 libmpv-runtime-v0.39.0.md5
SDK MD5 libmpv-sdk-v0.39.0.md5

v0.38.0

File Link
Runtime libmpv-runtime-v0.38.0.zip
SDK libmpv-sdk-v0.38.0.zip
Runtime MD5 libmpv-runtime-v0.38.0.md5
SDK MD5 libmpv-sdk-v0.38.0.md5

v0.37.0

File Link
Runtime libmpv-runtime-v0.37.0.zip
SDK libmpv-sdk-v0.37.0.zip
Runtime MD5 libmpv-runtime-v0.37.0.md5
SDK MD5 libmpv-sdk-v0.37.0.md5

Build script

build-libmpv-mingw64.sh

Run from an MSYS2 MinGW64 shell. Remember to chmod +x after downloading Builds one or more mpv version tags in a single invocation:

./build-libmpv-mingw64.sh v0.41.0 v0.40.0 v0.39.0 v0.38.0 v0.37.0

Prerequisites (MSYS2 MinGW64)

pacman -S --needed \
  mingw-w64-x86_64-libass          \
  mingw-w64-x86_64-libplacebo      \
  mingw-w64-x86_64-freetype        \
  mingw-w64-x86_64-harfbuzz        \
  mingw-w64-x86_64-lcms2           \
  mingw-w64-x86_64-luajit          \
  mingw-w64-x86_64-libjpeg-turbo   \
  mingw-w64-x86_64-libbluray       \
  mingw-w64-x86_64-spirv-cross     \
  mingw-w64-x86_64-llvm            \
  mingw-w64-x86_64-tools-git

Environment overrides

Variable Default Purpose
FFMPEG6_VERSION 6.1.1 FFmpeg version for mpv < v0.40.0
FFMPEG7_VERSION 7.1.1 FFmpeg version for mpv ≥ v0.40.0
WORK_DIR $PWD/work Scratch space for sources and builds
OUT_DIR $PWD/out Output directory for zips
JOBS nproc Parallel build jobs
CUSTOM_PATCH_DIR (none) Directory with ffmpeg/ and mpv/ patch subdirs

Notes

  • Always launch MSYS2 from a Windows Explorer shortcut, not from JP Software TCC/LE — TCC intercepts windres child processes.
  • The script is fully resumable: FFmpeg and mpv source trees are reused across runs. A per-version stamp file prevents redundant FFmpeg rebuilds.
  • libplacebo is always a shared DLL on MSYS2 (no static .a available). For v0.41.0+ it is included in the runtime zip. For older tags it is statically linked into libmpv-2.dll.

Using this SDK

See Using-the-SDK for integration guides for specific projects.

Licenses

See Licenses for the open source license information for all distributed binaries.

Clone this wiki locally