音频不离开硬盘:Audacity 的 OpenVINO AI 插件把5个模型搬进本地
【免费下载链接】openvino-plugins-ai-audacityA set of AI-enabled effects, generators, and analyzers for Audacity®.项目地址: https://gitcode.com/gh_mirrors/op/openvino-plugins-ai-audacity
如今提到"AI 处理音频",大多数人第一反应是找个网页、上传文件、等云端排队。而这个项目恰好反着来:Audacity AI插件(仓库名 openvino-plugins-ai-audacity)把音乐分离、语音转录、噪声抑制、音乐生成、音频超分辨率这5类模型全部装进本地,断网也能用,音频数据全程不离开你的硬盘。它基于 Intel 的 OpenVINO 推理框架,能调用你机器上的 CPU、GPU、NPU。适合不想把录音上传云端的人、网络不稳定的环境,以及一切想免费给 Audacity 加"AI 外挂"的用户。这篇不按功能清单念,而是按你拿到手之后的真实探索顺序来讲:先弄懂它凭什么能在本地跑这些大模型,再完成启用模块这第一道坎,然后逐个摸清参数,最后带走几个别人踩过的坑。
本地跑大模型,凭的是什么?
先做个对比:云端音频工具的好处是零安装,代价是你的素材要过一道别人的服务器。对采访录音、医疗语音、商业演示这类内容来说,上传本身就是一个风险。这个插件选择的路线是把推理层整个搬到本地,功夫主要花在移植上:
- 音乐分离用的是 Meta 的 Demucs v4(htdemucs),模型被转成 OpenVINO IR 格式(htdemucs_v4.xml / .bin);
- 语音转录基于 OpenAI 的 Whisper,跑在 whisper.cpp 之上并启用 OpenVINO 后端;
- 噪声抑制支持 DeepFilterNet2、DeepFilterNet3,另保留了一个 legacy 的 denseunet 模型;
- 音乐生成用 MusicGen-Small 与 MusicGen-Small-Stereo(单声道/立体声两版,输出均为 32kHz);
- 超分辨率移植自 versatile_audio_super_resolution(AudioSR),能把音频提升到 24kHz 带宽、48kHz 采样率。
这些管线大多原本是 python + PyTorch 写的,项目把它们重写成 C++,模型也转换成 OpenVINO 的中间表示。这才是"本地跑"的关键:OpenVINO 会根据你选的设备把模型即时编译成对应指令集,CPU 能跑、GPU 能加速、部分平台还能用 NPU。想验证这一点,直接翻源码——模型相关代码集中在 mod-openvino/,五个功能各自的参数说明在 doc/feature_doc/。
动手之前先记一张入口表,5个功能在 Audacity 里的位置并不一样:
| 功能 | 菜单位置 | 背后模型 |
|---|---|---|
| 音乐分离 | 效果 → OpenVINO AI Effects | Demucs v4 |
| 噪声抑制 | 效果 → OpenVINO AI Effects | DeepFilterNet2/3 |
| 音乐生成 | 生成(Generate)菜单 | MusicGen-Small |
| 语音转录 | 分析(Analyze)菜单 | Whisper(whisper.cpp) |
| 音频超分 | 效果(Effect)菜单 | AudioSR |
装上之后的第一道坎:把模块从 New 改成 Enabled
安装方式分平台。Windows 用户直接拿发布页的安装包;Linux 最简单的路子是装 Audacity 的 snap 包,它开箱自带 OpenVINO 模块支持:
sudo snap install audacity想用 GPU/NPU 加速,把自己加进 render 组,再装 intel-npu-driver 这个 snap。模型并不内置在 snap 里,装完跑一条命令批量拉取:
sudo audacity.fetch-models --batch源码党也有完整构建文档:doc/build_doc/windows/README.md 和 doc/build_doc/linux/README.md(以 Ubuntu 22.04 为例)。手动构建需要额外准备 OpenVINO 2024.6、OpenVINO Tokenizers、libtorch 2.4.1、OpenCL,并先编译带 OpenVINO 后端的 whisper.cpp。源码在:
git clone https://gitcode.com/gh_mirrors/op/openvino-plugins-ai-audacity无论哪种方式,装完后都有一道必做的操作,也是最容易卡住的一步:打开 编辑 → 首选项 → 模块,你会看到 mod-openvino 的状态是 "New",必须手动改成 "Enabled",保存后重启 Audacity,AI 菜单才会出现。
打开效果菜单,第一个值得试的是音乐分离
重启之后,从 效果 → OpenVINO AI Effects → OpenVINO Music Separation 进入。菜单里音乐分离、噪声抑制等功能并列排在 OpenVINO AI Effects 子菜单下。
弹出的参数对话框只需要你决定两件事:分离成几轨、跑在哪个设备上。
- Separation Mode(分离模式):2-Stem 出两轨(伴奏 + 人声),4-Stem 出四轨(鼓、贝斯、其他乐器、人声)。做卡拉OK伴奏选 2-Stem 就够。
- OpenVINO Inference Device(推理设备):CPU 兼容性最好;有独显就选 GPU,速度优势明显。旁边的 Device Details 按钮会列出设备映射,多 GPU 时能看清哪个是 GPU.0、哪个是 GPU.1。
- Shifts(进阶选项):这个效果会带着随机位移把 htdemucs 管线跑 N 遍再合成。数值越高可能越好,但耗时随数值线性增长——1 用来快速预览,日常用 2,出成品再上 3–4。
点 Apply 后首次加载会有 10~30 秒停顿,这是模型在针对你选的设备即时编译,编译结果会缓存到磁盘,第二次加载明显变快。跑完工作区会出现带后缀的新轨道:-Drums、-Bass、-Vocals、-Other Instruments,一眼分清。每条分离轨道都是 32-bit float 立体声,可以继续独立做 EQ、压缩,再混回原工程。
转录和降噪:参数藏在细节里
Whisper 转录:从 base 到 large 的取舍
入口在 分析 → OpenVINO Whisper Transcription。它产出的不是新音频,而是一条标签轨道——文字带时间戳对齐到波形,能直接当字幕底稿。
值得改的参数有三个:
- Whisper Model:base 最快、效果够用;源语言不是英语时建议上 small 或 medium;追求准确率用 large(v1/v2/v3)。模型在安装时选择下载。
- Mode:transcribe 按源语言输出;translate 强制转成英语,多语言素材做本地化时直接用。
- Source Language:默认 auto 自动检测,也可以手动指定。
两个进阶参数同样实用:Initial Prompt 可以写进人名、缩写等上下文,明显提升识别准确率;Max Segment Length 设成 1 时输出"词级"时间戳(whisper.cpp 的实验功能)。另外,small.en-tdrz 这个特殊模型内置实验性的说话人分离,会生成两条标签轨道,每次说话人切换就换一条——录播客、做多嘉宾字幕时能省掉大量手动对齐。
噪声抑制:三选一怎么挑
入口在 效果 → OpenVINO AI Effects → OpenVINO Noise Suppression。模型下拉里有 deepfilternet2、deepfilternet3 和 denseunet 三个选项,文档的明确建议是用 DeepFilterNet 系列,denseunet 只是 legacy 保留。它直接修改你选中的轨道,处理前最好先复制一份原始轨道留底,方便对比。
生成与超分:最考验参数的两个功能
音乐生成(生成 → OpenVINO Music Generation)是"玩具感"最强的功能,也是最容易玩出惊喜的。几个关键旋钮:
- Seed:留空则每次随机,结果差异很大;想复现某次满意的片段,就把当时的 seed 记下来——生成片段本身会在轨道名里标注全部参数,复现条件一应俱全。
- Guidance Scale:数值越高越贴 prompt,但可能伤音质,官方建议 2–4。
- TopK:50 左右出更连贯、结构化的作品;拉到 250 以上更天马行空。
- Context Length + Audio Continuation:勾选后可以用已有片段"续写",生成器拿末尾若干秒当上下文。比如先产出 5 秒你满意的开头,再勾选延续,一路延成长曲。
内存管理有个细节:模型第一次 Generate 后常驻内存,方便反复试参数;试够了点 "Unload Models" 主动释放。实验阶段建议把 Duration 设成 5 秒,省时省力。如果生成到一半 fade out 或突然走偏——这是常态——删掉走偏的部分,用 Audio Continuation 从"好听的尾巴"接着续,比重新生成整段划算得多。
超分辨率(效果 → OpenVINO Super Resolution)面向修复场景:把低质量音频提升到 24kHz 带宽、48kHz 采样率。模型选 Basic (General) 处理音乐和环境声,选 Speech 处理纯人声;Chunk Size 选 5.12 秒比 10.24 秒可能更好但更慢;Steps 越大质量越高、收益递减;勾选 Normalize Output RMS 后输出会按输入响度归一,音量观感不跳变。
值得记住的五个数字与三个坑
- 首次加载 10~30 秒:模型在针对设备即时编译,之后走磁盘缓存,不必每次等。
- 模型整体体积以 GB 计:构建文档直接警告"按量计费网络下要小心",下载前心里有数。
- 模型存放位置:Linux 源码构建版在 /usr/local/lib/openvino-models,Windows 构建版在 Audacity.exe 同级目录;snap 版用 audacity.fetch-models 统一管理。
- Shifts 每 +1,音乐分离耗时线性翻倍:1 预览、2 日常、3–4 出成品。
- MusicGen 输出 32kHz、超分输出 48kHz,混进工程时注意采样率匹配。
坑一:处理前先复制原轨,尤其降噪这类"原地修改"的效果。坑二:未选中音频时打开音乐生成,Audio Continuation 会自动置灰,这是设计如此,不是 bug。坑三:模型文件很大,换机器重装时直接把 openvino-models 目录拷到新环境,能省下整轮重新下载的时间。
下一步:从一首 2-Stem 开始
如果你刚装完,最划算的第一步是:导入一首歌,框选一段,效果 → 音乐分离,选 2-Stem,设备选 GPU(没有就 CPU),Shifts 用 1,Apply。几十秒后你就有了人声和伴奏两轨。然后再去 分析 → Whisper Transcription 试一条语音,感受"标签轨道带时间戳"到底长什么样。这两个功能跑通,其余三个功能里的参数再多也不慌。
继续深挖的入口都在仓库里:功能文档在 doc/feature_doc/,构建指南在 doc/build_doc/,五个功能的 C++ 实现集中在 mod-openvino/。遇到参数看不懂,先翻对应功能的 README 再动手调——这个项目的文档写得很细,值得当手册用。
【免费下载链接】openvino-plugins-ai-audacityA set of AI-enabled effects, generators, and analyzers for Audacity®.项目地址: https://gitcode.com/gh_mirrors/op/openvino-plugins-ai-audacity
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考