自从Mac上的最后两次主要更新(BigSur,Monterey(以来,我遇到了这个问题,通过getUserMedia
捕获Safari手机只能在屏幕上显示Safari窗口时工作(1px就足够了(。每当Safari移动到背景时,麦克风就会停止传输声音,就像被硬件按钮静音一样。对于web应用程序来说,这不是透明的afaik。
有没有这样的设置,甚至是文档或博客文章?我找不到任何关于这是如何或为什么发生的信息(尽管我可以想象为什么(。
这种行为对于使用webrtc的多用户网络应用程序来说尤其不方便,因为在webrtc中,麦克风输入可以与屏幕共享(getDisplayMedia(一起使用。用户通常认为,在共享整个屏幕时,即使safari不在前台/不可见,他们也能被听到。当safari窗口不可见时,一方面允许屏幕共享,但另一方面阻止麦克风传输,这感觉不一致。
如果能提供有关为什么会发生这种情况的信息,以及苹果公司是否有计划在未来改变这种情况,我将不胜感激。
这似乎实际上是音频上下文中的一个错误,与getUserMedia
无关。在我的例子中,麦克风流是通过音频上下文处理的。当Safari窗口移到后台时,该错误会导致音频上下文暂停。
以下是指向错误跟踪器的链接:https://bugs.webkit.org/show_bug.cgi?id=231105