#解码器 #rodio #编码 #atrac

atrac3p-decoder

Rust 中的 Atrac3+ 解码器。可以作为 Rodio 的数据源。

3 个版本

0.1.2 2020年4月21日
0.1.1 2020年4月10日
0.1.0 2020年4月10日

#1070 in 音频

LGPL-2.1-or-later

240KB
6K SLoC

Atrac3+ 解码器

Crates.io

Atrac3+ 解码器在 Rust 中。可以作为 Rodio 的数据源。目前仅支持 .at3 / .wav RIFF WAV 容器格式。

Rodio 数据源

Decoder 符合 rodio 的 Source 特性,以及 Iterator

Rodio 示例

use anyhow::Error;

use std::fs::File;
use std::io::BufReader;

fn main() -> Result<(), Error> {
    let file = File::open("path/to/song.at3")?;
    let reader = BufReader::new(file);

    let decoder = atrac3p_decoder::Decoder::new(reader)?;

    let device = rodio::default_output_device().unwrap();
    let sink = rodio::Sink::new(&device);

    sink.append(decoder);
    sink.play();
    sink.sleep_until_end();

    Ok(())
}

依赖项

~4.5–6MB
~111K SLoC