MCPcopy Create free account
hub / github.com/0xShug0/audio.cpp / parse_voice_preset

Function parse_voice_preset

app/server/config.cpp:22–43  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

20}
21
22ServerModelConfig::VoicePreset parse_voice_preset(
23 const std::filesystem::path & base,
24 const engine::io::json::Value & value,
25 const std::string & context) {
26 if (!value.is_object()) {
27 throw std::runtime_error(context + " must be an object");
28 }
29 ServerModelConfig::VoicePreset preset;
30 if (const auto * voice_id = value.find("voice_id")) {
31 preset.voice_id = voice_id->as_string();
32 }
33 if (const auto * voice_ref = value.find("voice_ref")) {
34 preset.voice_ref = resolve_path(base, voice_ref->as_string());
35 }
36 if (const auto * reference_text = value.find("reference_text")) {
37 preset.reference_text = reference_text->as_string();
38 }
39 if (!preset.voice_id.has_value() && !preset.voice_ref.has_value() && !preset.reference_text.has_value()) {
40 throw std::runtime_error(context + " must set voice_id, voice_ref, or reference_text");
41 }
42 return preset;
43}
44
45} // namespace
46

Callers 1

load_server_configFunction · 0.85

Calls 3

is_objectMethod · 0.80
resolve_pathFunction · 0.70
findMethod · 0.45

Tested by

no test coverage detected