
BlackHole 使用指南3 步在 macOS 上搭好低延迟虚拟声卡环回【免费下载链接】BlackHoleBlackHole is a modern macOS audio loopback driver that allows applications to pass audio to other applications with zero additional latency.项目地址: https://gitcode.com/gh_mirrors/bl/BlackHole你正在用 OBS 开播观众要听到游戏和网页里的声音而你戴的耳机还得照常出声——两者要同时发生就需要一条能把系统声音转成麦克风输入的通道。BlackHole 就是为此而生的 macOS 虚拟音频工具一个开源虚拟驱动在系统里创建出一块纯软件的虚拟声卡让任意两个应用之间的声音直接互转。装好之后它以 BlackHole 16ch 之类的名字出现在系统音频设备列表中自带一组输入端口和一组输出端口A 应用把声音送到输出端B 应用再从输入端取走全程不经过真实硬件也不需要关闭系统完整性保护SIP或加载内核扩展。先装会用一行命令安装 16ch 版在终端执行轻量需求选 2ch多轨录制选 64ch其余不变brew install blackhole-16ch按下面流程验证设备是否就位打开「音频 MIDI 设置」聚焦搜索 Audio MIDI Setup 即可在左下角设备列表中找到BlackHole 16ch应显示 16 ins / 16 outs选中它确认右下角格式为 48,000 Hz、32-bit float与常用采样率保持一致把主音量滑块拉到顶避免音量在零位影响测试任选一个播放器把输出切到 BlackHole 16ch再用录音应用从它的输入端录 10 秒回放确认有声想自己编译的话clone 仓库git clone https://gitcode.com/gh_mirrors/bl/BlackHole后用 xcodebuild 构建将产物拷到/Library/Audio/Plug-Ins/HAL再执行sudo killall -9 coreaudiod重启音频服务即可。原理速览Core Audio 虚拟驱动为何几乎零延迟注册为一块真设备它是 Core Audio 体系下的 AudioServerPlugInHAL 插件虚拟设备驱动由系统音频服务加载并向系统注册任何应用都能在输入/输出列表里选它而非内核扩展因此无需改动系统安全设置。内存里直接交接数据驱动内部是一块 65536 帧的共享环形缓冲Float32 采样输出流写入、输入流读取信号不绕道用户空间也没有二次缓冲层。同一时钟、零延迟帧输入与输出共享内部固定时钟默认 48 kHz默认延迟帧数为 0驱动本身几乎不排队等待残余延迟只剩系统音频路径的固有量级。选型速查2ch / 16ch / 64ch 怎么挑版本通道适合2ch2语音通话、OBS 只录系统声音16ch16直播混音、多轨录制多数场景的推荐起点64ch64stems 多轨、复杂混音工程128ch / 256ch128 / 256广播级大型制作需自行编译Homebrew 只提供 2ch / 16ch / 64ch 三种包128 与 256 通道需从源码构建采样率覆盖 8 kHz ~ 768 kHz共 12 档44.1k、48k、96k、192k 等常用档位齐全采样精度固定为 32-bit float对 24-bit 整型是无损的无需额外设置Intel 与 Apple Silicon 均有对应构建直播/播客OBS 用系统声音当麦克风「音频 MIDI 设置」左下角点 → 创建多输出设备勾选「内建输出」与 BlackHole 16ch且把内建输出排在第一位多输出设备的 macOS 限制两者采样率保持一致为除主时钟设备以外的各项勾选 Drift Correction漂移校正「系统设置 → 声音」中把默认输出切到这个多输出设备OBS 添加「音频输入采集」源设备选 BlackHole 16ch通道取 1–2效果观众在直播里听到电脑声音你的监听耳机照常出声麦克风可在 OBS 中单独混入。音乐制作macOS 录系统声音进 DAW将源应用播放器、软音源或另一台 DAW的输出设备设为 BlackHole 16ch在 GarageBand / Logic 中把项目输入设备设为 BlackHole 16ch轨道输入选通道 1–2多轨分录给不同应用分配不同通道对例如应用 A 走 1–2、应用 B 走 3–4一次录音同时落下多轨想边录边听按上一节搭一个多输出设备做监听避免录音时耳机没声音教学录屏同步录下软件操作的声音被演示软件输出 → BlackHole 16ch通道 1–2录屏工具QuickTime、OBS 等的音频输入选 BlackHole 16ch画面与声音进入同一条录像需要人声讲解时讲解麦克风另占一对通道如 3–4后期可分轨调整响度录屏工具若只支持双声道输入先用 2ch 版跑通流程再按需升级通道数兼容性速查支持的 macOS 版本10.10 – 10.14Yosemite 起官方最低支持线10.15 – 11Catalina / Big SurIntel 与 Apple Silicon 双架构12 起Monterey 及更新当前主流版本完全支持排错速查无声、卡顿、升级后失效现象原因处理装完找不到设备它是驱动而非 App不会出现在「应用程序」文件夹到「音频 MIDI 设置」或「系统设置 → 声音」的设备列表里找选了设备仍无声录音应用未获麦克风权限或设备音量在零位「系统设置 → 隐私与安全性 → 麦克风」授权把输入/输出音量滑块拉到顶多输出下内建扬声器没声macOS 限制内建输出须排在多输出列表首位将 Built-in Output 调整到第一位并保持勾选多输出用几分钟后出现卡口/爆音聚合成员之间采样时钟漂移除主时钟设备外为所有成员开启 Drift Correction安装包装到一半失败部分系统版本在 Downloads 等特定目录安装 pkg 的已知问题把 .pkg 移到桌面后重新双击安装系统大版本升级后设备失效音频服务状态需要刷新重装对应通道版本或执行sudo killall -9 coreaudiod开源可改源码入口与二次开发BlackHole 的价值在于用一个可读性很强的单文件驱动把应用间传声做成了系统级能力项目以 GPL-3.0 开源二次开发门槛很低驱动全部逻辑集中在 BlackHole/BlackHole.c设备注册、环形缓冲读写、时钟与音量控制都在其中Installer/create_installer.sh 演示了一次构建 2/16/64/128/256 通道版本并完成签名、公证的完整流程Uninstaller/create_uninstaller.sh 生成对应的卸载包改几个编译期常量即可定制kNumber_Of_Channels定通道、kSampleRates定采样率、kDriver_Name定设备名需要只进不出或只出不进的隐藏设备时用镜像设备的 kDevice2 常量组合即可【免费下载链接】BlackHoleBlackHole is a modern macOS audio loopback driver that allows applications to pass audio to other applications with zero additional latency.项目地址: https://gitcode.com/gh_mirrors/bl/BlackHole创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考