Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/91.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript WebKit相当于Firefox';s";moz chunked arraybuffer“;xhr响应类型_Javascript_Html_Google Chrome_Webkit_Web Audio Api - Fatal编程技术网

Javascript WebKit相当于Firefox';s";moz chunked arraybuffer“;xhr响应类型

Javascript WebKit相当于Firefox';s";moz chunked arraybuffer“;xhr响应类型,javascript,html,google-chrome,webkit,web-audio-api,Javascript,Html,Google Chrome,Webkit,Web Audio Api,我想读取一个MP3流(从icecast读取Ice元数据,然后将二进制MP3数据传递给Web音频Api) Firefox有一个“moz chunked arraybuffer”xhr responseType来读取进度数据,但我找不到webkit/chrome的任何等效项 编辑2014/02/03: Chrome已经开始实现xhr.responseType“stream” “解析”在Chrome中登陆(带有--enable-experimental webkit features标志),但是xh

我想读取一个MP3流(从icecast读取Ice元数据,然后将二进制MP3数据传递给Web音频Api)

Firefox有一个“moz chunked arraybuffer”xhr responseType来读取进度数据,但我找不到webkit/chrome的任何等效项


编辑2014/02/03:

Chrome已经开始实现xhr.responseType“stream”

“解析”在Chrome中登陆(带有--enable-experimental webkit features标志),但是xhr.response结果对象(流)还不能直接在Javascript中使用:


编辑2014/07/10:

目前正在制定规范:

Chromium开发人员计划“在不等待标准化完成的情况下制作一些原型”


编辑2015/01/22:

在XHR中不会实现(它只是用于原型设计)。在最近以Chrome发布的实现中(在实验标志后面)


编辑2015/01/30: Fetch API有一个! Streams API被宣布为“即将到来的集成”,它就在这里


2015年4月15日编辑:

\o/荣耀! FetchAPI现在登录到Chrome42中(当前稳定版本:)。 42不仅是对生命、宇宙和一切事物的回答,也是对这个问题的回答:“我如何才能像流一样使用“AJAX请求”:


故事的结尾:)

很抱歉成为坏消息的传递者,但据我所知,目前还没有一个webkit的等价物。最初,分块的arraybuffer响应类型源自与您类似的问题:

此外,MDN还将responseType列为仅在Firefox中可用:


我猜WebKit将得到相反的结果

我认为解决您问题的方法是没有看到html5的完整AudioContext对象

您可以解码音频数据:decodeAudioData() 您可以通过音频缓冲区播放音乐,音频缓冲区可以通过web套接字或分块http流向您传输音乐

当你想播放一首歌时,你只需调用playSound()


因此,真正的答案是使用AudioContext,您将获得成功

有任何供应商实现了这一点吗?可能是的。我就快到了。。。1) 您需要从Icecast(ICE元数据)中删除额外的字节2)decodeAudioData()在每个缓冲区中添加额外的毫秒“空白”音频,这会导致音频质量不佳感谢更新!非常感谢他们。不幸的是,Firefox默认情况下仍然没有启用Fetch API流,因此我们仍然必须依靠“moz chunked arraybuffer”来支持Firefox:(使用Fetch API和ReadableStream显示MJPEG视频流的简短示例: