尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Soundflower完整上手指南:让Mac系统音频在应用间自由流转的终极教程

Soundflower完整上手指南:让Mac系统音频在应用间自由流转的终极教程 Soundflower完整上手指南让Mac系统音频在应用间自由流转的终极教程【免费下载链接】SoundflowerMacOS system extension that allows applications to pass audio to other applications. Soundflower works on macOS Catalina.项目地址: https://gitcode.com/gh_mirrors/so/Soundflower想把电脑里正在播放的音乐录进视频想在做直播时只把游戏声音推给观众却总是被macOS一个输出只能对应一个设备的设定卡住Soundflower正是为这个痛点而生——它是一个开源虚拟音频设备能像一根数字音频线一样把任意应用的输出接到任意应用的输入上让声音在软件之间自由流转。无论你是想录制系统声音的内容创作者还是需要混音的音乐爱好者这篇Soundflower安装与使用教程都能带你从零上手彻底玩转音频路由。Soundflower到底是什么从虚拟音频线说起先别被内核扩展IOKit这类词吓到。Soundflower的底层原理其实很朴素它在系统中注册了一个虚拟的声卡设备。任何应用把声音播放给它时它不会真的发出声响而是把这段音频流原封不动地转交给另一个正在监听它的应用。想象一下两间房间中间架了一根水管A房间把水倒进水管B房间打开水龙头就能接到——Soundflower就是那根水管。它借助macOS的IOKit框架完成内核级的音频搬运延迟低、路径稳定这是它和普通软件层转发方案最大的不同。安装后你会在声音设置里看到名为Soundflower (2ch)和Soundflower (64ch)的两个设备前者适合日常使用后者面向多轨专业场景这一点我们后面细说。小提示Soundflower本质上是虚拟音频输入输出设备它本身不会发出任何声音你听到的仍然来自你的物理音箱或耳机这点要提前有心理预期。上手前的准备确认你的环境适合安装在动手之前先对照下面的清单打个勾能省去后面不少麻烦✅ 运行环境为macOS系统支持到CatalinaM1芯片的Mac目前官方尚未支持这一点务必留意✅ 已安装Xcode及Xcode命令行工具因为源码构建需要用到编译器✅ 拥有管理员权限安装内核扩展和授权环节必须输入密码✅ 系统安全设置允许内核扩展加载后面的授权步骤会详细说明如果你的目标只是快速用起来也可以直接使用项目预编译的安装包如果想自己构建、或者想看看代码是怎么实现的就跟着下面的完整安装步骤走。一步步安装从获取源码到系统授权第一步获取Soundflower项目源码打开终端把项目克隆到本地。仓库地址为git clone https://gitcode.com/gh_mirrors/so/Soundflower cd Soundflower克隆完成后你会看到项目里除了内核驱动源码Source目录下的SoundflowerEngine和SoundflowerDevice还有控制面板SoundflowerBed和打包工具Tools目录划分非常清晰。第二步用构建脚本完成编译与装载进入Tools目录执行构建脚本。脚本会先调用Xcode把源码编译成内核扩展再自动把它拷贝到系统扩展目录并加载整个过程只需要一条命令cd Tools chmod x build.rb ./build.rb dev这里的dev是Development配置的简写适合本机调试正式分发则用depDeployment会生成通用二进制版本。构建过程中系统会提示你输入管理员密码——这很正常因为内核扩展文件需要以root身份安装到系统目录放心输入即可。第三步完成系统授权并重启内核扩展不是装上就生效的macOS的安全机制会拦一道打开系统偏好设置→安全性与隐私切到通用标签页找到允许从以下位置下载的应用程序区域点击允许按钮授权Soundflower内核扩展加载重启电脑让设置彻底生效。重启后打开系统声音设置如果能看见Soundflower (2ch)和Soundflower (64ch)两个设备就说明安装大功告成了。玩起来四个拿来即用的音频路由场景装好之后Soundflower的价值全看你怎么用它。下面四个场景覆盖了绝大多数人的需求每个都能照着做。场景一录制系统声音做游戏实况或视频剪辑这是Soundflower最经典的用法。以前想录下网页里的视频声音只能外放后用麦克风录音质大打折扣。现在这样做在系统声音设置的输出里选择Soundflower (2ch)打开QuickTime Player或任意录音软件把输入设备也选成Soundflower (2ch)播放视频开始录制录完把输出设备切回音箱即可。需要说明的是录完后你自己在播放时是听不到声音的因为输出被切走了把输出切回物理设备再回放即可。场景二直播时单独输出游戏声音不干扰麦克风直播最怕观众听不到游戏声、又听到你后台的杂音。利用Soundflower可以把音频源彻底分开音频源处理方式效果游戏声音游戏内输出设为Soundflower可独立控制是否推给观众麦克风人声直接输入直播软件清晰、无串扰背景音乐播放器输出设为Soundflower想放就放、想关就关在直播软件如OBS中把游戏与音乐的音频源都指向Soundflower麦克风单独一路就能实现观众听到的和你听到的完全分离。场景三做音频编辑与多轨录制如果你用DAW数字音频工作站做音乐或播客Soundflower能扮演内部音频总线的角色实时监听把编辑软件输出路由到Soundflower再接入耳机监听通道多轨录制让多个App的声音同时汇入录音软件的不同轨道实现分轨采集效果链测试把一个软件的输出送给另一个软件处理串起完整的音频处理链路。场景四会议中只分享指定应用的声音在线会议想放一段视频给参会者听又不想让系统通知声穿帮把视频播放器的输出设为Soundflower会议软件输入选择Soundflower其他参会者就只会听到视频声音干净利落。调优建议让音频更流畅的三条经验用顺了之后如果追求更低的延迟或更高的稳定性下面三条经验很实用按需选择通道数日常录制、直播用2通道就够延迟更低、兼容性最好需要同时处理多路独立音频时再切64通道毕竟它本来就是为多轨场景设计的。降低采样率缓解卡顿在音频MIDI设置里把Soundflower的采样率适当调低能明显缓解老设备上的爆音和卡顿。给系统留出余量Soundflower全程参与音频搬运关闭无关后台应用、保持内存充足播放效果会更稳定。遇到持续爆音时重启一次系统往往能清掉残留的音频缓存。遇到问题别慌三个高频故障的排查办法问题一Soundflower设备没出现在声音设置里多半是内核扩展没有正常加载。在终端手动重新装载一次即可cd Soundflower/Tools sudo ./load.rb脚本会先卸载旧的内核扩展再重新拷贝并加载Soundflower.kext绝大多数设备不显示的情况都能解决。问题二音频断断续续或爆音先打开活动监视器看看CPU占用——音频处理和系统负载高度相关。关闭占用大户后还不行就试试调低采样率或换一个缓冲区大小。如果某个应用崩溃导致音频路断裂重开该应用通常就能恢复。问题三权限类报错内核扩展对权限非常敏感。如果反复报权限错误检查两点安装时是否真的以管理员身份运行系统安全性与隐私里是否放行了内核扩展。想彻底排查可以在终端查看系统日志里的错误详情对症下药。再进一步认识SoundflowerBed和卸载的正确姿势SoundflowerBed你的菜单栏音频控制台项目里还附带了一个配套应用SoundflowerBed。它常驻菜单栏让你不必每次都打开系统偏好设置快速查看当前Soundflower设备的工作状态一键切换输入/输出设备在Soundflower与物理设备间来回跳转在需要频繁切换路由的场景下比如边录边听体验提升非常明显。它是用Cocoa写的原生菜单栏应用代码在SoundflowerBed目录下想定制界面或加功能也可以直接改源码。卸载Soundflower的正确姿势以后不用了别直接拖App。最稳妥的方式是在Finder中按ShiftCmdG分别跳转到/Library/Extensions和/System/Library/Extensions把里面的Soundflower.kext拖进废纸篓然后执行下面这条命令刷新系统扩展缓存sudo touch /Library/Extensions/最后重启电脑即可彻底清除。项目中Tools目录下的Uninstall Soundflower.scpt脚本也能代劳嫌手动麻烦的话可以直接跑它。写在最后让macOS的每一路声音都听你的回顾一下Soundflower带给我们的其实是一种掌控感系统原本只允许音频单向流出到唯一设备而它用一根虚拟音频线打通了所有可能——录制系统声音、直播混音、多轨编辑、会议分享全部信手拈来。同时它又是开源的底层逻辑就摆在那里想深入研究内核音频、IOKit驱动的朋友完全可以一边用一边读代码。最后给你一张速查清单✅ 克隆源码后用./build.rb dev一键构建装载✅ 记得在安全性与隐私中授权内核扩展并重启✅ 日常用2通道多轨场景切64通道✅ 设备不显示时用sudo ./load.rb重新装载✅ 配合SoundflowerBed菜单栏一键切换更顺手安装、路由、优化、排障每一步都走通之后你的Mac就拥有了一套完全属于自己的音频流转方案。现在去把系统里那些出不去的声音都接出来吧。【免费下载链接】SoundflowerMacOS system extension that allows applications to pass audio to other applications. Soundflower works on macOS Catalina.项目地址: https://gitcode.com/gh_mirrors/so/Soundflower创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表