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

Function attach_previous_audio

tests/stable_audio/stable_audio_warm_bench.cpp:161–182  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

159}
160
161void attach_previous_audio(
162 engine::runtime::TaskRequest & request,
163 const std::vector<engine::runtime::AudioBuffer> & previous_audio) {
164 auto attach = [&](const char * option, const char * kind) {
165 const auto it = request.options.find(option);
166 if (it == request.options.end()) {
167 return false;
168 }
169 const size_t index = static_cast<size_t>(std::stoul(it->second));
170 if (index >= previous_audio.size()) {
171 throw std::runtime_error(std::string("Stable Audio warmbench previous audio index out of range: ") + option);
172 }
173 request.audio_input = previous_audio[index];
174 request.options["audio_input_kind"] = kind;
175 return true;
176 };
177 const bool init = attach("init_audio_from_previous", "init_audio");
178 const bool inpaint = attach("inpaint_audio_from_previous", "inpaint_audio");
179 if (init && inpaint) {
180 throw std::runtime_error("Stable Audio warmbench request cannot use both init_audio_from_previous and inpaint_audio_from_previous");
181 }
182}
183
184std::vector<engine::runtime::TaskRequest> parse_requests(const std::string & request_sequence_json) {
185 if (request_sequence_json.empty()) {

Callers 1

mainFunction · 0.85

Calls 4

stringFunction · 0.70
findMethod · 0.45
endMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected