| 271 | mark_prepared(); |
| 272 | } |
| 273 | |
| 274 | runtime::TaskResult VibeVoiceSession::run(const runtime::TaskRequest & request) { |
| 275 | require_prepared("VibeVoice run"); |
| 276 | const auto wall_start = Clock::now(); |
| 277 | auto vibevoice_request = make_request(request); |
| 278 | auto result = generate_vibevoice( |
| 279 | vibevoice_request, |
| 280 | text_tokenizer_, |
| 281 | audio_tokenizer_, |
| 282 | connector_, |
| 283 | decoder_, |
| 284 | diffusion_head_, |
| 285 | positive_decoder_cache_, |
| 286 | negative_decoder_cache_); |
| 287 | runtime::TaskResult out; |
| 288 | out.audio_output = std::move(result.audio); |
| 289 | engine::debug::timing_log_scalar("session.wall_ms", engine::debug::elapsed_ms(wall_start)); |
| 290 | return out; |
| 291 | } |
| 292 | |
| 293 | VibeVoiceRequest VibeVoiceSession::make_request(const runtime::TaskRequest & request) const { |
nothing calls this directly
no test coverage detected