5个不稳定版本
0.3.1 | 2021年2月23日 |
---|---|
0.3.0 | 2021年2月15日 |
0.2.1 | 2020年1月21日 |
0.2.0 | 2020年1月21日 |
0.1.0 | 2020年1月21日 |
在音频分类中排名435
每月下载量106次
用于 2 crates
31KB
480 行
rmp3
针对minimp3的惯用no_std绑定,不进行内存分配。
文档
文档托管在docs.rs上。
使用方法
将以下内容添加到您的Cargo.toml
[dependencies]
rmp3 = "0.3"
... 或者,如果您需要std
特定功能
[dependencies]
rmp3 = { features = ["std"], version = "0.3" }
最基础的例子是使用提供的流式迭代器解码文件,如下所示
use rmp3::{Decoder, Frame};
let mp3 = std::fs::read("test.mp3")?;
let mut decoder = Decoder::new(&mp3);
while let Some(frame) = decoder.next() {
if let Frame::Audio(audio) = frame {
// process audio frame here!
imaginary_player.append(
audio.channels(),
audio.sample_count(),
audio.sample_rate(),
audio.samples(),
);
}
}
查看文档以获取更多示例和信息。
特性
float
:将样本类型更改为单精度浮点数,因此解码器将输出浮点PCM。- 这是一个非可加特性,将更改API。 不要在不通知的情况下在库中这样做 (为什么?).
mp1-mp2
:包含MP1和MP2解码代码。simd (默认):在符合条件的目标上启用手写的SIMD优化。
std
:添加需要std
的功能
依赖
~220KB