#mpv #playback #media #libmpv #audio-video


Libmpv abstraction that's easy to use and can play next to all codecs and containers

1 release (0 unstable)

2.0.2-fork.1 Dec 28, 2022

#176 in Video

Download history 25/week @ 2024-01-04 23/week @ 2024-01-11 14/week @ 2024-01-18 36/week @ 2024-01-25 25/week @ 2024-02-01 22/week @ 2024-02-08 39/week @ 2024-02-15 52/week @ 2024-02-22 41/week @ 2024-02-29 64/week @ 2024-03-07 113/week @ 2024-03-14 180/week @ 2024-03-21 134/week @ 2024-03-28 188/week @ 2024-04-04 145/week @ 2024-04-11 92/week @ 2024-04-18

575 downloads per month
Used in 6 crates (5 directly)


5.5K SLoC


A libmpv abstraction written in rust that's easy to use and provides the ability to read next to all video and audio codecs.


This is a personal fork that will be deleted as soon as the original repository is active again.


Rust version >= 1.30. Libmpv version 1.101 (mpv version 0.29.1) is the minimum required version.

For ease of building, you can use the build_libmpv feature that is used to link against. Especially useful to cross compile to windows. The MPV_SOURCE environment variable needs to be set to a directory containing the mpv source you want to build against. For windows targets this is expected to be already built, with a directory named MPV_SOURCE/64 or /32 containing build artifacts for 64-bit and 32-bit targets respectively. On unix this is expected to be a copy of the mpv-build repo.


To run an example, execute cargo run [--release] --example x --test-data/speech_12kbps_mb.wav, where x is any of:

  • events: event enumeration
  • protocol: implementation of custom filereader:// protocol that… reads files


All pull requests/issues welcome.