用 OpenCode 做项目,最爽的地方是什么?就是说人话,它帮你干活。
这两天在做的视频需要背景音乐。网易云会员下载的歌曲全是 NCM 格式,扔进剪映不支持。怎么办?
写了一个 audio-converter skill,接入 OpenCode,直接说"把这个 ncm 转成 mp3",OpenCode 自动调 FFmpeg 搞定。
做视频选 BGM,正常流程是这样的:
这一圈下来,热情都没了。
audio-converter 是一个给 AI Agent 用的音频处理技能,本质上是把 FFmpeg 和 ncmdump 的操作封装成了 SKILL.md。
GitHub:https://github.com/zuoxinpeng/audio-converter
接入 OpenCode 之后,你不需要记住任何命令,直接用自然语言描述你要干什么。
1. 安装 OpenCode(如果还没装):
npm i -g opencode-ai@latest
2. 安装 audio-converter skill:
# 克隆到 OpenCode skills 目录
git clone https://github.com/zuoxinpeng/audio-converter.git ~/.config/opencode/skills/audio-converter
Windows 系统路径:
C:\Users\Administrator\.config\opencode\skills\audio-converter
3. 启动 OpenCode,然后直接说话:
opencode
接入之后,你可以这样用:
转换 NCM 格式
把 downloads 目录下的《晴天》.ncm 转成 mp3
OpenCode 会自动执行 ncmdump 解密,输出同名的 .mp3 文件。
截取音频片段
截取这首歌第 29 秒到 45 秒的部分作为开场 BGM
或者更自然一点:
我只需要 1 分 30 秒到 2 分 45 秒这段旋律,能帮我截出来吗
OpenCode 调用 FFmpeg,用 -c copy 方式直接流复制,速度快且不损失音质。
批量转换
把 music 文件夹里所有 ncm 格式的文件都转成 mp3
OpenCode 遍历目录,逐个转换。
查看音频信息
这首歌的时长和比特率是多少
OpenCode 用 mutagen 库读取元数据,告诉你精确时长、比特率、采样率。
用 OpenCode 做这件事,全程不需要碰命令行:
三步搞定,中间全是自然语言。
| 格式 | 说明 |
|---|---|
| NCM | 网易云音乐专用格式 |
| MP3 | 最通用 |
| WAV | 无损音频 |
| AAC | 苹果系常用 |
| FLAC | 无损压缩 |
| OGG | 开源音频 |
audio-converter skill 封装了两大工具:
ncmdump:解密网易云的 NCM 加密格式,转换成标准 MP3/FLAC。
FFmpeg:音频界的瑞士军刀,负责截取、转换、查看信息。不重新编码的截取(-c copy)速度极快,适合大批量处理。
skill 内部处理了 Python 3.13+ 的 imghdr 兼容性问题,接入后直接可用。
写这个 skill 的出发点很简单:做视频的时候,不想在找 BGM 这件事上浪费时间。网易云会员下载的歌曲直接用,转换截取全部自动化。
OpenCode 加载 skill 之后,你就是在用自然语言操控 FFmpeg。想怎么截就怎么说,它帮你执行。
GitHub:https://github.com/zuoxinpeng/audio-converter
你做视频的时候 BGM 从哪找?网易云还是别的平台?评论区聊聊。
💬 评论区