c++ - 如何在 Wondershare Filmora Scrn 等 mac os 中录制系统声音?
问题描述
通常使用 Soundflower,但必须安装。Filmora srcn 无需安装驱动程序即可录制系统声音。它是如何捕捉声音的?MacOS,而不是 iOS
解决方案
我只花了 5 分钟通过 .app 包下载了他们的 dmg 和 root。我发现了一个“SystemAudioRecorder.kext”,它似乎链接到各种IOAudio*
IOKit 类,所以我的猜测是通过它。(它在一个 zip 文件中Wondershare Filmora Scrn.app/Contents/Resources/FSRecorder.app/Contents/Resources/SystemAudioRecorder.zip
:)
我怀疑您可能无法避免编写驱动程序。IOAudio kexts 已被弃用,所以我不特别推荐走这条路。最简单的解决方案可能是实现一个充当音频输出设备的 Core Audio Server 插件。然而,这通常会停止输出到您的系统音频设备,这可能是也可能不是您想要的。(您没有指定。)您也许可以使用元设备将您的录音设备与系统音频结合起来——我还没有测试过这种方法,上次我做这样的事情时,IOAudio 还没有被弃用。(即使那样做起来也很痛苦。)但是,也许与 HAL 插件不同类型的音频插件会更好地工作。
无论如何,这仍然需要管理员访问权限(并重新启动)来安装音频插件,尽管它不需要 kext 签名证书,只需要一个常规的“开发人员 ID”证书。
Apple 的 NullAudio 示例代码可能是音频服务器插件开发的最佳起点。(这不是操作系统的一个特别有据可查的角落。)
推荐阅读
- python - 我希望从 python 中的单个大数据框生成一系列较小的数据框,同时使用过滤器命名数据框
- c# - 正则表达式问题(在 asp.net MVC5 中)
- sql - 按特定年份对列中的所有 - / + 值求和
- scala - Akka TCP 请求响应需要 Thread.sleep
- mysql - 获取两条记录之间的差异
- scripting - 攻击者可以下载 cgi 脚本吗?
- spring - 如何测试 Spring 事件监听器条件 SpEL?
- swift - 将 iOS 上的 Apollo 订阅与后端用于 websocket 的 Action Cable 集成
- c++ - 有没有办法从 double 到 std::array 的隐式转换
? - node.js - RSAES-PKCS1- V1_5 使用 NodeJs 加密的公共加密