8 个版本
0.6.2 | 2024年3月23日 |
---|---|
0.6.0 | 2024年1月11日 |
0.5.0 | 2023年2月11日 |
0.3.2 | 2022年12月30日 |
0.3.1 |
|
#1 in #libmpv
32KB
610 行
Rust 中的 MPV 插件
为 libmpv 客户端 API 提供绑定,允许您使用 Rust 为 MPV 创建插件。
示例
以下是一个 Cargo.toml
的示例
[package]
name = "mpv-plugin"
version = "0.1.0"
edition = "2021"
[lib]
name = "mpv_plugin"
crate-type = ["cdylib"]
[dependencies]
mpv-client = "0.6.2"
然后是代码 src/lib.rs
use mpv_client::{mpv_handle, Event, Handle};
#[no_mangle]
extern "C" fn mpv_open_cplugin(handle: *mut mpv_handle) -> std::os::raw::c_int {
let client = Handle::from_ptr(handle);
println!("Hello world from Rust plugin {}!", client.name());
loop {
match client.wait_event(-1.) {
Event::Shutdown => { return 0; },
event => { println!("Got event: {}", event); },
}
}
}