Crates.io | libmpv2 |
lib.rs | libmpv2 |
version | 4.1.0 |
source | src |
created_at | 2024-04-12 17:15:24.773521 |
updated_at | 2024-10-20 14:10:08.536821 |
description | Libmpv abstraction that's easy to use and can play next to all codecs and containers |
homepage | |
repository | https://github.com/kohsine/libmpv-rs |
max_upload_size | |
id | 1206531 |
size | 10,966,185 |
Credits go to @anlumo for the rendering implementation and @sirno for updating the API to support libmpv version 2.0.
A libmpv abstraction written in rust that's easy to use and provides the ability to read next to all video and audio codecs.
Rust version >= 1.30. Libmpv version 2.0 (mpv version 0.35.0) 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/jellyfish.mp4
, where x is any of:
events
: event enumerationprotocol
: implementation of custom filereader://
protocol that… reads filesopengl
: openGL rendering onto SDL2 windowAll pull requests/issues welcome.