我正在尝试减少生成的自定义响应的延迟并将其保存到音频文件以在 twilio 调用中播放,但根据文档,我很困惑音频文件块是否可以作为流发送到 twilio,然后播放为每个来回响应调用音频,而不是等待整个音频文件首先生成完整的音频?
我尝试过一些代码,但由于我的组织的保密协议而无法共享
是的,可以通过 WebSockets 连接将音频文件流回 Twilio:
//Send Audio to Twilio when Generated Audio from Eleven Labs is Complete
elevenLabs.on("AudioReceived", (audio) => {
ws.send(
JSON.stringify({
event: "media",
streamSid,
media: {
payload: audio,
},
}),
);
});
此代码片段来自示例代码存储库。
请记住,有效负载需要满足以下规格:
要将媒体发送回 Twilio,您必须提供格式正确的媒体消息。
有效负载必须采用音频/x-mulaw 编码,采样率为 8000,并且必须采用 Base64 编码。音频可以是任何大小。
媒体消息按照收到的顺序进行缓冲和播放。如果您需要中断缓冲的音频,请发送明确的消息。