我目前正在使用精简版Canvas.fm将SoundCloud mp3流转换为使用Node和ffmpeg的ogg流,以支持Firefox等ogg播放浏览器中的audio
元素。我的问题是:虽然为SoundCloud的mp3流正确设置了持续时间,但ogg流在播放器中提供了无限期的持续时间;我想要显示实际的持续时间。
我注意到在请求SoundCloud mp3流时,我收到一个已取消的请求,一个待处理的请求,然后是一个206 Partial Content响应。我的节点应用程序执行类似的重定向,没有多少标题,因为我自己发送它们。
我应该尝试计算/伪造Content-Length或Content-Range标头吗?或者HTML5音频是否从mp3元数据/ ID3信息中获取持续时间?如果我可以从SoundCloud的API(我可以)获得持续时间,我如何将其传递给我的ogg流中的客户端?