2017-09-25 55 views
2

我一直在焦急地等待OS 11和OS 11上的Safari 11的发布。现在他们终于来了,我可以使用Safari从麦克风录制音频数据 - 除非长期承诺的支持实际上不起作用。WebRTC对Safari 11的支持依旧破损

我使用Safari 11.0版(12604.1.38.1.7)运行macOS Sierra 10.12.6。下面的演示都失败,错误:

任何人都可以证实这种行为?首先,我需要知道在Safari 11中看到WebRTC是否完全破碎。

接下来是iOS中的Safari 11。这对我来说测试要困难得多。看起来上面的所有演示在iOS上也被打破了。 XCode中的iOS模拟器上的Safari 11甚至不支持WebRTC,而iOS上的实际Safari 11向浏览器报告支持它,但与桌面一样,它实际上并不工作。

有没有人知道世界上发生了什么?据我所知,刚刚推出iOS 11和Sierra的Safari 11不仅不支持音频录制,而且更糟糕的是,通过了getUserMedia功能检测代码,意味着可以捕获音频(但它实际上并不工作)。

我很好奇,如果升级到高峰塞拉利昂修复任何事情,但我不想尝试,因为即使它在那里工作,我需要访问一个破碎的状态尝试并找出一些方法来解决破坏特征检测。

我需要处理这个问题,但这很困难,因为网上唯一的文档说“Safari 11支持WebRTC的音频部分”,我无法在手机或台式机上的任何位置进行复制。

任何帮助或确认,将不胜感激。

回答

1

由于缺少前缀不正确的AudioContext,所以webaudio输入演示失败。尝试,如果 window.AudioContext = window.AudioContext || window.webkitAudioContext;

修复的东西

另见this issue即将令其运行一些黑客。

+1

我真的从苹果的人那里听到一个人为我澄清了一些事情。我不理解的重要事情是,Safari 11显然只支持音频流,但不支持音频捕获。所以当你试图在本地捕获一个音频流时,你显然会得到一个错误或者(正如我所看到的)一个空的流。 我真的希望有一个解决这个或解决方法,因为我需要捕获,而不是流。 –

+1

recordrtc用于在将MediaRecorder添加到Chrome之前实现自己的MediaRecorder API,可能它会为Safari添加另一个黑客技术。检查github存储库,有几个问题。 –