| 97 | } |
| 98 | |
| 99 | engine::runtime::AudioBuffer read_audio_buffer(const std::string & path_text) { |
| 100 | const auto wav = engine::audio::read_wav_f32(resolve_path(path_text)); |
| 101 | if (wav.sample_rate <= 0 || wav.channels <= 0 || wav.samples.empty()) { |
| 102 | throw std::runtime_error("VibeVoice warmbench received empty voice sample: " + path_text); |
| 103 | } |
| 104 | return engine::runtime::AudioBuffer{wav.sample_rate, wav.channels, wav.samples}; |
| 105 | } |
| 106 | |
| 107 | engine::models::vibevoice::VibeVoiceRequest make_request( |
| 108 | const engine::io::json::Value & object, |
no test coverage detected