#media #playback #mpv #libmpv


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

#107 in Video

Download history 9/week @ 2023-02-11 14/week @ 2023-02-18 4/week @ 2023-02-25 12/week @ 2023-03-04 10/week @ 2023-03-11 9/week @ 2023-03-18 5/week @ 2023-03-25 5/week @ 2023-04-01 22/week @ 2023-04-08 21/week @ 2023-04-15 28/week @ 2023-04-22 44/week @ 2023-04-29 30/week @ 2023-05-06 70/week @ 2023-05-13 90/week @ 2023-05-20 58/week @ 2023-05-27

254 downloads per month
Used in 4 crates


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.