#voicevox #load #dynamically #download #run-time #dyn #voice-vox

voicevox-dyn

在Rust中动态加载和运行voicevox

3个版本 (破坏性更新)

0.3.0 2023年10月13日
0.2.0 2023年10月13日
0.1.0 2023年9月18日

#474 in 音频

MIT 许可证

15KB
271 代码行

无需烦恼使用voicevox

下载VOICEVOX CORE并在运行时动态加载。

此包旨在使在Rust中使用voicevox尽可能容易,特别是使其能够分发一个设置voicevox并运行它的单个二进制文件变得容易。

示例

use voicevox_dyn::{AccelerationMode, VoiceVox};

const SPEAKER_ID: u32 = 4;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let threads = std::thread::available_parallelism()?.get() as u16;

    let mut vv = VoiceVox::load()?;
    vv.init(AccelerationMode::Auto, threads, false)?;
    vv.load_model(SPEAKER_ID)?;

    let wav = vv.tts("こんにちは", SPEAKER_ID, Default::default())?;

    std::fs::write("audio.wav", wav.as_slice())?;

    Ok(())
}

替代方案

如果您更喜欢动态链接voicevox,我推荐使用vvcore


lib.rs:

无需烦恼使用VoiceVox

下载VOICEVOX CORE并在运行时动态加载。

此包的目的是使使用voicevox尽可能容易,特别是使分发一个设置voicevox并运行它的单个二进制文件变得容易。

替代方案

如果您更喜欢动态链接voicevox,我推荐使用vvcore

依赖项

~6–13MB
~175K SLoC