Skip to content
This repository was archived by the owner on Jun 20, 2026. It is now read-only.

fyom-org/fork-mpv

 
 

Repository files navigation

fyom fork-mpv — libmpv distribution

This project builds the mpv library (libmpv) used by the fyom media center.

It is a fork of FengZeng/mpv (soia's mpv fork) with the closed-source libsoia_utils runtime, the config.data license token, and the soia-specific Vulkan render-context patch removed. The result is a clean GPLv2+ libmpv tarball producer that fyom fully controls. See FORK-NOTES.md for the exact diff vs upstream.

It is designed for GitHub Actions CI, and can also be run locally for testing.

Output Artifacts

Each successful build generates a self-contained runtime package containing:

  • libmpv runtime library (.dylib on macOS, .dll on mingw64, .so on Linux)
  • libmpv link libraries on mingw64 (.lib/.a/.dll.a, when generated)
  • all non-system runtime dynamic dependencies (recursive)
  • Linux package includes runtime dependencies recursively (excluding core glibc/loader libraries)
  • rewritten install names (@rpath) and runtime search path (@loader_path) on macOS
  • SHA256 checksum file

This package is intended to run without requiring Homebrew on the target machine.

Local Build (MacOS)

Download source and build:

bash ./install-vcpkg-deps.sh
bash ./build-ffmpeg.sh
bash ./download.sh
bash ./build-macos.sh

Build a specific mpv version:

MPV_VERSION=0.41.0 bash ./download.sh
bash ./build-ffmpeg.sh
bash ./build-macos.sh

install-vcpkg-deps.sh bootstraps vcpkg and pins it to tag 2026.04.27 by default. Override with VCPKG_REF=... only when intentionally updating the dependency baseline.

Build an x64 macOS library on an arm64 macOS host:

VCPKG_TARGET_TRIPLET=x64-osx-mp bash ./install-vcpkg-deps.sh
bash ./download.sh
MPV_TARGET_ARCH=x86_64 VCPKG_TARGET_TRIPLET=x64-osx-mp bash ./build-ffmpeg.sh
MPV_TARGET_ARCH=x86_64 VCPKG_TARGET_TRIPLET=x64-osx-mp bash ./build-macos.sh
MPV_TARGET_ARCH=x86_64 VCPKG_TARGET_TRIPLET=x64-osx-mp \
  bash ./package-macos-runtime.sh --pkg-name libmpv-local-macos-x86_64

The x64 dependency install uses vcpkg_installed/x64-osx-mp, separate from the default arm64 triplet.

Build a local runtime package:

bash ./package-macos-runtime.sh --pkg-name libmpv-local-macos

Local Build (mingw64 / MSYS2)

Download source and build in MSYS2 MINGW64 shell:

bash ./download.sh
bash ./build-ffmpeg.sh
bash ./build-mingw64.sh

Build a local runtime package:

bash ./package-mingw64-runtime.sh --pkg-name libmpv-local-windows-mingw64-x86_64

Local Build (Linux)

Install dependencies on Ubuntu/Debian (example):

sudo apt-get update
sudo apt-get install -y \
  build-essential git curl python3 meson ninja-build pkg-config nasm \
  libfreetype-dev libfribidi-dev liblcms2-dev libluajit-5.1-dev \
  libass-dev libopus-dev librubberband-dev \
  zlib1g-dev libbz2-dev liblzma-dev \
  libpipewire-0.3-dev libpulse-dev \
  libxss-dev libxpresent-dev \
  libwayland-dev wayland-protocols libxkbcommon-dev \
  libarchive-dev libbluray-dev libcdio-paranoia-dev libdvdnav-dev \
  libzimg-dev libplacebo-dev libvulkan-dev patchelf

Download source and build:

export PATH="$PWD/vendor/meson-bin:$PATH"
bash ./ensure-meson.sh
bash ./download.sh
bash ./build-ffmpeg.sh
bash ./build-linux.sh

Build a local runtime package:

bash ./package-linux-runtime.sh --pkg-name libmpv-local-linux

About

No description, website, or topics provided.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages

  • CMake 51.8%
  • Shell 48.2%