| 338 | field("language"); |
| 339 | out << json_quote(result.text_output->language); |
| 340 | } |
| 341 | } |
| 342 | if (result.audio_output.has_value()) { |
| 343 | const auto wav = encode_pcm16_wav(*result.audio_output); |
| 344 | field("audio"); |
| 345 | out << json_quote(base64_encode(wav)); |
| 346 | field("sample_rate"); |
| 347 | out << result.audio_output->sample_rate; |
| 348 | field("channels"); |
| 349 | out << result.audio_output->channels; |
| 350 | } |
| 351 | if (!result.named_audio_outputs.empty()) { |
| 352 | field("named_audio_outputs"); |
| 353 | out << "["; |
| 354 | for (size_t i = 0; i < result.named_audio_outputs.size(); ++i) { |
| 355 | if (i != 0) { |
| 356 | out << ","; |
| 357 | } |
| 358 | const auto wav = encode_pcm16_wav(result.named_audio_outputs[i].audio); |
| 359 | out << "{\"id\":" << json_quote(result.named_audio_outputs[i].id) |
| 360 | << ",\"audio\":" << json_quote(base64_encode(wav)) |
| 361 | << ",\"sample_rate\":" << result.named_audio_outputs[i].audio.sample_rate |
| 362 | << ",\"channels\":" << result.named_audio_outputs[i].audio.channels |
no test coverage detected