我正在尝试用Alexa的技巧播放5秒循环的1小时音频,但我找不到路。
有人知道如何执行此操作吗?
const LoopAudioHandler = {
canHandle(handlerInput) {
const request = handlerInput.requestEnvelope.request;
return request.type === 'IntentRequest'
&& request.intent.name === 'LoopAudio';
},
handle(handlerInput) {
const audio = "<audio src='https://audio-alexa-ang.s3.amazonaws.com/perro-ladrando-v2.mp3' />"
return handlerInput.responseBuilder
.speak(audio)
.reprompt(HELP_REPROMPT)
.getResponse();
},
};
结果是仅播放1次。我需要它循环播放一个小时。
答案 0 :(得分:0)
不幸的是,音频标签有一些限制(docs)。其中之一是一个响应中的最大音频长度为240s。另一个限制是一个响应中的音频标签数量为5。
在您的情况下,您可以将音频文件加长,合并并使其长至48s,因此在这种情况下,您将能够添加5个音频标签并播放240s音频,或者仅使音频文件的长度240 s,并且仅单独使用它就可以了。
不过,还有另一种方法。要播放一个小时的音频,您必须走另一条路线并使用audio player interface,其作用与常规技巧略有不同,但它可以无限期地循环播放音频。 here是使用音频播放器界面的一种示例技能。