2017-09-15 39 views
0

我正尝试将与AlexaX一起使用的AlexaPi作为音频处理器(因为它具有VLC缺乏的效果)。在大多数情况下,它的工作原理是,但是我发现它在某些Alexa请求上失败了,因为Alexa在URL之后返回一个带有所需查询参数的URL,而SoX将整个字符串作为“。”之后的结果。是文件类型。这是一个被AlexaPi的main.py程序生成的错误消息的示例:无法让SoX播放带有查询参数的MP3流

2017-09-15 17:51:50 DEBUG: Error attempting play. sox FAIL formats: no handler for file extension `mp3?Expires=1505541107&Signature=g~nHwqbFYxYYPd3WHHYgDdM2Ukvw0J9OICcBI2Jq9M6ORM7pLp97pwt4I3k-S76f3EUC-543csgXOsbRboqXl8RQqqrp3~xxsegy6E-7Y4Fq2itICT14SsmLxXMTr3WRxzOaCujqhvX7vaUENBgH2Tg47RKRqvQTkx5g44iBokRsEgwcFNdQdEKllzfN1I~srBroUMy97XL1NYUVcOPeuRG0ctmu3jsxgKVlONhanc1AHx8wqqU9dJvGcl3OtyD2vw7lRxE2f6aUavgm0ayKpkmVdJyczsk5yJlIMSawjCMoUkLpQrHaU4EzI0w5YsQLggjQEe5KAlsHlNTKY8eRmg__&Key-Pair-Id=APKAJMAIYIGWWT37OIHA' 

就如何解决这个任何想法?到期,签名和密钥对ID都是为了从亚马逊获取响应所必需的,所以我不能简单地将它们剥离。

回答

0

没关系,我想通了。您只需在呼叫的URL字符串之前明确指定文件类型,即“-t mp3”。 SoX与网址无关,它只是无法弄清楚它是什么类型的声音文件,因为.mp3之后的查询字符串。如果你明确地告诉它这种类型,它会按照你所说的去做。