1 个不稳定版本
0.3.0 | 2022年12月4日 |
---|---|
0.2.0 |
|
0.1.0 |
|
#2181 in 编码
44KB
888 行
Rust时间码编码器
一个用于实时编码和解码时间码的纯Rust no_std 库。
解码LTC
在Cargo.toml中添加依赖
[dependencies]
timecode-coder = { version = "x.x.x", features = ["decode_ltc"] }
假设你有一个从你的音频接口接收缓冲区的函数
use timecode_coder::ltc_decoder::LtcDecoder;
struct MyAudioHandler {
decoder: LtcDecoder<u16>,
}
impl MyAudioHandler {
// Sampling rate can by any Type that implements `FromPrimitive`
fn new(sampling_rate: u32) -> Self {
Self {
decoder: LtcDecoder::new(sampling_rate)
}
}
fn new_buffer(&mut self, samples: [u16; 512]) {
for sample in samples {
if let Some(timecode_frame) = get_timecode_frame(sample) {
/// New TimecodeFrame received
}
}
}
}
TimecodeFrame
提供
- 小时
- 分钟
- 秒
- 帧
- 帧率(自动检测)
警告。尚未支持丢弃帧。它们将被检测为正常的 '25fps' 或 '30fps'
编码LTC
尚未实现
解码MIDI
尚未实现
编码MIDI
尚未实现
依赖项
~165KB