📚 系列导航:这一篇开始新的 AI 视频系列,先把上一首歌变成一支真正能看的视频。
从今天开始,我们更新全新的 AI 视频系列教程。
AI 视频其实涉及到非常多的概念,技术栈,场景等,但是不着急,咱们一步步来。
第一篇,我想直接带大家折腾一支最简单的 AI 视频,让每个人亲自感受一下 AI 视频是什么。之后再逐步讲清 AI 视频的关键点、整体流程和技术栈。
AI 音乐系列结束以后,我们拿到的是一个 MP3。
我把《Reborn》歌曲信息重新翻出来看了一遍:文件约 4.8 MB,时长 219.6 秒,也就是 3 分 39 秒。
它能听,但不能看。想发到视频号、抖音或者小红书,总不能让观众盯着一张静态封面听三分多钟。
甚至把这首歌发给对象、兄弟或父母时,如果只有一个 MP3、没有实时歌词,体验也会差很多。
所以 AI 视频系列的第一篇,咱们先不盘点一堆模型,也不碰复杂分镜。今天只干一件事--把一个 MP3,做成一支带音浪和 KTV 歌词的完整 AI MV。
看完这一篇,你会拿到:
一套「播放器截图 → AI 定风格 → 动态 MV」的制作流程
一份可以直接交给 Codex 的制作提示词
对歌词时间戳和音频可视化的基本理解
一个以后替换歌曲就能重复使用的单分镜 MV 模板
01 一个 MP3,怎么变成视频
视频这东西看着复杂,拆开以后并没有那么神秘。
咱们这次做的 MV,可以拆成四个画面层和一条音轨:
组成部分 | 负责什么 | 最终效果 |
|---|---|---|
背景 | 定氛围 | 模糊封面、渐变、光影或者颗粒 |
播放器 | 定结构 | 封面、歌名、作者、播放进度 |
音浪 | 跟音乐互动 | 随声音变化的一排柱子或波形 |
KTV 歌词 | 告诉观众唱到哪里 | 当前歌词逐字变色 |
MP3 | 控制全片时间 | 音乐播放到哪,所有元素就走到哪 |
你可以把视频理解成一个舞台。背景、封面、歌词和音浪是台上的演员,MP3 是后台的总指挥。
音乐播放到第 30 秒,画面里的所有元素就必须同时走到第 30 秒。歌词不能慢半拍,进度条不能提前,音浪也不能自己乱跳。
所以这篇表面上是在做 MV,真正要学的是一件更底层的事:怎么让不同素材在同一条时间轴上同步运行。
💡 一句话总结:视频就是多个图层共用一条时间轴。
02 别从空白开始,先找一张喜欢的播放器
很多人第一次做视频,上来就会对 AI 说:
帮我设计一个高级、有科技感、有音乐氛围的播放器。这几个词看起来说了很多,实际上什么都没说。
你脑子里的「高级」,可能是黑胶唱片和暖黄色灯光;AI 理解的「高级」,可能是一片蓝紫渐变加满屏发光按钮。最后做出来不好看,不一定是 AI 能力不行,而是双方从一开始就没看着同一张图。
最简单的解决办法,是先去找一张你真正喜欢的音乐播放器截图,比如网易云音乐、QQ 音乐的播放页面。
这些音乐播放器的设计已经很成熟,也支持各种皮肤和主题,你只需要找到自己最喜欢的播放界面。
重点不是功能有多少,而是你一眼看过去,觉得它的封面、歌词、颜色和留白很舒服。
然后把截图交给 AI,让它先分析,不要直接开工:
请分析这张音乐播放器截图。
不要复制其中的 Logo、品牌、文案、专辑封面和其他版权素材,只提取它的布局结构、信息层级、配色、字体、间距和视觉风格。
我要用它制作一支 9:16 竖屏 AI 音乐 MV,请帮我输出一份播放器画面设计方案,包含:
1. 背景怎么处理。
2. 歌曲封面放在哪里。
3. 歌名和作者怎么排版。
4. KTV 歌词显示几行、放在哪里。
5. 音浪和播放进度放在哪里。
6. 主色、辅助色和文字颜色。
7. 哪些元素适合增加轻微动效。
8. 哪些品牌元素和版权素材必须替换。
最终效果要简洁、有音乐氛围,适合持续播放。我现在做视觉类项目,已经很少让 AI 从一句抽象形容词开始猜。现在主流 AI 工具基本都支持多模态。设计层面,直接扔给它一张截图参考,是最简单、最高效、最准确的方式。
参考图不是让 AI 原样抄,而是让它把你的审美翻译成一份能执行的设计方案。
截图只在制作过程中当参考。最终成片里的品牌 Logo、他人封面、歌手照片和界面文案都要换成自己的;如果没有自己的品牌 Logo,直接删掉对应位置即可。
💡 一句话总结:参考图把模糊审美变成具体设计。
03 把静态播放器变成一个单分镜视频
设计定下来以后,咱们不需要把整个播放器截图直接塞进视频。
正确做法是让 AI 重新搭出同样的信息结构,再把所有内容换成自己的:
背景换成歌曲封面的模糊放大版,或者 AI 生成的专属氛围图。
封面换成自己的歌曲封面,或者让 AI 根据歌词内容重新生成一个歌曲封面。
歌名换成你的歌名,作者换成你或者「AI」。
配色从封面里提取,不照搬参考播放器。
歌词、音浪和进度条重新实现,让它们真正跟音乐同步。
整个 MV 从头到尾可以只有这一个画面,但这个画面内部一直在变化:
元素 | 动态效果 | 变化依据 |
|---|---|---|
背景 | 缓慢缩放、光影流动 | 全片时间 |
歌曲封面 | 轻微呼吸或缓慢旋转 | 全片时间 |
音浪 | 高低持续变化 | 当前音频能量 |
KTV 歌词 | 当前字逐个点亮 | 歌词时间戳 |
进度条 | 从左向右推进 | 当前时间/总时长 |
光晕 | 随强弱改变亮度 | 音量变化 |
这就是「单分镜」:不是把一张图片放三分钟,而是镜头不切换,镜头内部的内容元素持续运动。
第一篇选择这种形式很合适。它避开了人物换脸、场景不一致、镜头衔接和视频循环这些问题,但仍然能让你完整经历一次 AI 视频生产。
💡 一句话总结:单分镜不换画面,但画面一直在动。
04 KTV 歌词的难点,不是字幕样式
普通字幕很好做:一句话到时间了,让它出现就行。
KTV 歌词不一样。它要知道这一句什么时候开始、什么时候结束,还要知道当前唱到了哪个字。
类比:歌词是演员的台词,时间戳是舞台旁边的提示灯。 时间一到,对应的字就亮起来。
Whisper 到底是什么
Whisper 是 OpenAI 开源的语音识别模型,可以把音频转成文字,并找出每段人声出现的大致位置。
类比:Whisper 像一个拿着秒表听歌的人。 它一边听,一边记下「这一句大概从第几秒唱到第几秒」。在这支 MV 里,它不是替咱们写歌词,而是帮歌词找时间。
Whisper 不强制要求显卡,CPU 也能跑,只是速度慢一些。官方给出的模型显存参考是:small 约 2 GB、medium 约 5 GB、turbo 约 6 GB、large 约 10 GB。实际使用还要给系统和视频渲染留空间,我更建议这样选:
你的电脑 | 推荐方案 |
|---|---|
没有 NVIDIA 显卡,内存 16 GB 左右 |
|
NVIDIA 显存 8 GB 左右 |
|
NVIDIA 显存 12 GB 及以上 |
|
Mac 的 Apple 芯片也能用 CPU 跑,但 faster-whisper 官方 GPU 路线 主要面向 NVIDIA CUDA,不要把「能在 Mac 上运行」误解成「默认会调用苹果 GPU」。
faster-whisper 快在哪里
faster-whisper 不是另一套识别模型,而是用 CTranslate2 重新实现的 Whisper 推理引擎。简单说,识别能力还是 Whisper 那一套,但它支持 INT8、批量转写、词级时间戳和静音检测,通常跑得更快,也更省内存。
我在另一个口播项目里实测过:使用 faster-whisper-large-v3 + CPU INT8,113.97 秒的音频跑完花了 68.27 秒,速度已经快过实时播放。不过歌曲有伴奏、和声和拖音,比口播难得多,速度快不代表时间戳不用校准。
《Reborn》这份歌词时间轴当时使用的是 OpenAI Whisper large-v3;faster-whisper 是现在更适合普通读者本地运行的替代方案。
总之,先让 AI 检查你的电脑配置。16 GB 内存一般可以从 small/medium + INT8 开始尝试,但实际速度还取决于 CPU,相关环境也可以让 AI 帮你配置。
歌词时间戳大致可以分成三层:
时间数据 | 能实现的效果 | 准确度 |
|---|---|---|
行级时间戳 | 整句歌词切换 | 基础可用 |
逐字估算时间戳 | KTV 逐字变色 | 大部分慢歌可用 |
音素级强制对齐 | 精确匹配拖音、Rap 和密集咬字 | 更高,但处理更复杂 |
拿《Reborn》来说,我现有的歌词数据一共有 53 句歌词、581 个逐字时间点。
第一句不是从第 0 秒开始,而是从第 20.24 秒才进入:
{
"text": "江",
"start": 20.240,
"end": 20.618
}这个数据表达的意思很简单:视频播放到 20.240 秒时,「江」字开始点亮;播放到 20.618 秒时,轮到下一个字。
生成这份数据的流程是:
MP3 + 已经确认无误的原始歌词
↓
Whisper 分析实际演唱的位置
↓
找到每句歌词的开始和结束
↓
生成普通 LRC、KTV LRC 和 lyrics.json这里有个很关键的区别:咱们已经知道正确歌词,不需要让 Whisper 重新替我们写一遍歌词。
我看过《Reborn》的强制识别原始结果。第一句「江湖上的招式,翻新比翻脸快」,模型听成了「江湖上的礁石,繁星筆繁链块」;后面的「满地都是捷径」,也被听成了「满地都是结晶」。
这不是模型故意捣乱。歌曲里有伴奏、拖音、和声和特殊咬字,识别难度本来就比普通口播高。
所以现在这套方案,是让 Whisper 负责提供时间骨架,再把正确歌词放回对应位置。句内逐字时间先做均匀估算,最后通过试听校准。
它能做出可用的 KTV 效果,但必须如实说:这不是绝对准确的音素级强制对齐。Rap、英文和拖长音,仍然需要人工调整。
💡 一句话总结:KTV 的核心,是每个字都有自己的时刻。
05 音浪为什么会跟着音乐跳
播放器有了,歌词也能同步了,接下来是音浪。
音浪不是随机播放的一段动画,而是从 MP3 的真实声音里计算出来的。
先认识 librosa:把音乐翻译成数字
这一步,项目里用到的工具叫 librosa。它是 Python 里一套专门分析音乐和音频的工具,不负责生成歌曲,也不直接画音浪,而是把人耳听到的声音翻译成程序能理解的数字。
类比:librosa 就像给音乐做体检。
你听到的是鼓点、贝斯、人声和旋律;它分析的是这一刻声音有多强、低中高频分别有多活跃、节拍大概落在哪里。
在《Reborn》这个项目里,librosa 先把 MP3 读取成 22.05 kHz 单声道音频,再通过 STFT 把声音拆成频谱,用 Mel 滤波器压缩成 8 个频段,同时计算 RMS、BPM 和节拍点。整条链路是这样的:
MP3
→ librosa 分析
→ 8 个频段 + RMS + BPM + 节拍点
→ JSON
→ Remotion 逐帧绘制
→ 观众看到的音浪所以准确地说,librosa 不是在生成音浪,而是在提供画音浪需要的数据。同一个 MP3 使用同一套参数分析,得到的数据基本一致。
这里先认识三个数据:
数据 | 它表示什么 | 可以控制什么 |
|---|---|---|
RMS | 当前声音整体有多强 | 光晕亮度、整体缩放 |
频段 | 低音、中音、高音分别有多强 | 一排音浪柱的不同高度 |
Beat | 音乐节拍落在哪里 | 卡点、轻微弹跳和强调动画 |
我用现有音频工具重新分析了一遍《Reborn》:按 30 fps 输出音浪数据、拆成 8 个频段,219.6 秒的歌最终得到 6589 帧音浪数据,估算出的速度约为 100 BPM。
其中第 100 秒的数据长这样:
{
"time": 100.0,
"bands": [0.941, 0.8736, 0.788, 0.7939, 0.7149, 0.7422, 0.6827, 0.6427],
"rms": 0.5434
}不用被这一串数字吓到。8 个 bands,就是第 100 秒时 8 根音浪柱各自应该有多高;rms 则代表这一刻整体声音有多强。
视频每走一帧,程序就读取这一帧对应的数据,再把柱子画出来。声音强,柱子变高;声音弱,柱子落下。
从声音特征到视觉柱形,这就是音频可视化的基本原理,不需要 AI 每一帧临场发挥。
💡 一句话总结:音浪是声音数据,不是随机动画。
06 把所有东西放进同一条时间轴
现在咱们已经有了五样东西:
最终版 MP3
音乐播放器的设计方案
自己的歌曲封面和文字
歌词时间轴数据
每一帧对应的音浪数据
接下来,就可以让 Remotion 把它们放进同一条视频时间轴。后面的文章会详细介绍 Remotion,这一篇先让 AI 直接用起来。
这张图展示了整支 MV 的生产过程:AI 负责理解设计和生成素材,音频工具负责歌词时间和音浪数据,Remotion 负责稳定地把所有内容逐帧画出来。
程序里最核心的规则只有两条:
当前时间 = 当前帧 ÷ 视频帧率
某个字的开始时间 ≤ 当前时间 < 结束时间
→ 点亮这个字假设视频是 30 fps,第 3000 帧就是第 100 秒。程序会同时做三件事:
把播放进度推到第 100 秒。
找出第 100 秒正在唱的歌词。
读取第 100 秒的 8 个频段数据,画出音浪。
这也是工程化视频和大模型生成视频的区别。
大模型擅长从无到有生成画面,工程化视频擅长把确定的数据稳定地画出来。KTV 歌词、音浪和播放进度明显属于后者--你不会希望同一个时间点每次生成都不一样。
你不需要先学 React,也不用自己手写时间轴。把输入文件、效果和验收标准讲清楚,Codex 可以替你完成具体实现。
💡 一句话总结:AI 负责理解,程序负责稳定渲染。
07 五个最容易出现的问题
流程看起来顺了,真正做的时候还有五个地方需要注意。
前奏和间奏没有歌词
《Reborn》开头的 20.24 秒都是纯音乐。第一遍副歌结束后,到 Rap 开始之前还有 12.08 秒间奏;第二遍副歌到 Outro 之间,空白更是达到 21.3 秒。
这些时间里不能一直挂着上一句歌词。正确做法是让歌词淡出,只留下封面、音浪和进度。
拖长音不能永远平均分配
逐字均匀分配适合先把流程跑通,但歌手可能一个字唱很久,后面几个字快速带过。
这种情况要试听后调整单字的开始和结束时间,不能只盯 JSON 看。
Rap 和英文需要单独检查
《Reborn》里既有 Rap,也有 Yo check it、Uh-huh 和 Reborn。
中文逐字点亮还算自然,英文如果按字母一个个亮,经常像打字机,不像唱歌。更合适的处理是按完整单词或者发音单位点亮。
模型识别的歌词不能直接当真
前面已经看到了,「招式」可能变「礁石」,「捷径」可能变「结晶」。
正确歌词永远以你自己确认过的 lyrics.txt 为准,Whisper 主要负责找时间。
音频一旦改变,时间戳必须跟着重做
歌词时间轴和音浪数据都绑定当前 MP3。如果后面把歌曲裁短、变速、增加空白或者换了另一个版本,旧时间戳就不能继续用。
我的习惯是把最终 MP3 先定下来,再生成歌词和音浪数据。音频没定稿之前,不在时间轴上做精细校准。
💡 一句话总结:先定音频,再做时间轴和人工校准。
08 动手做出你的第一支 AI MV
现在开始动手。
先准备四个文件:
ai-mv/
├── song.mp3 # 最终版歌曲
├── lyrics.txt # 与实际演唱一致的歌词
├── reference.png # 你喜欢的播放器截图
└── cover.png # 自己的歌曲封面这里需要使用能操作本地文件和运行命令的 AI 编程工具,比如 Codex。普通网页版聊天工具只能给建议,没法在你电脑上分析 MP3 和导出视频。
进入这个文件夹,把下面这段提示词交给它:
我要把当前目录里的 song.mp3 做成一支 9:16 竖屏音乐 MV。
输入文件:
- song.mp3:最终音频
- lyrics.txt:已经确认无误的歌词
- reference.png:音乐播放器视觉参考
- cover.png:歌曲封面
歌曲信息:
- 歌曲名:请填写
- 作者:请填写
请先检查本机是否具备 Node.js、FFmpeg 和可用的音频转写环境,不要直接写代码。先给我一份最小实现方案,确认后再执行。
成片要求:
1. 使用 Remotion,分辨率 1080×1920,30 fps,时长严格跟 song.mp3 一致。
2. reference.png 只参考布局、信息层级、配色和间距,不复制 Logo、品牌、文案和版权素材。
3. 使用 cover.png、歌曲名和作者重做播放器界面。
4. 背景有缓慢缩放和轻微光影,封面有克制的呼吸动效。
5. 先检测硬件:没有 NVIDIA 显卡就优先用 faster-whisper 的 small/medium + INT8;8 GB 显存可用 turbo;12 GB 及以上可用 large-v3。用模型分析实际演唱时间,但正确歌词以 lyrics.txt 为准。
6. 输出 song.lrc、song_karaoke.lrc 和 song_lyrics.json;逐字时间先估算,并保留手动校准入口。
7. 使用 Python 的 librosa 分析 MP3,提取 8 个 Mel 频段、RMS、BPM 和节拍点,按 30 fps 输出 song_spectrum.json,让音浪跟真实音乐变化。
8. 当前歌词逐字点亮;前奏、间奏和尾奏没有演唱时,歌词自动淡出。
9. 英文默认按单词点亮,不要按单个字母逐个点亮。
10. 先启动 Remotion Studio 查看预览,不要直接渲染最终 MP4。等我试听并校准歌词后再出片。
验收标准:
- 音频从头到尾完整,无裁切、变速和重复。
- 进度条、歌词和音浪使用同一时间基准。
- 歌词不提前、不长期滞后,纯音乐段不残留上一句。
- 最终模板可以通过替换 MP3、歌词、封面、歌曲名和作者复用;参考图只在需要更换整体视觉风格时重新提供。AI 给出方案后,不要一次性让它闷头做到最终导出。按照下面的顺序验收:
先看一张静态播放器画面,确认布局和风格。
再看 10 秒动态预览,确认背景、封面和音浪。
接入完整 MP3,重点试听开头、Rap、两段间奏和结尾。
校准歌词后,再导出最终 MP4。
最后你应该拿到:
song.mp3
song.lrc
song_karaoke.lrc
song_lyrics.json
song_spectrum.json
final-mv.mp4以后做下一首歌,不需要重新设计整套视频。换掉 MP3、歌词、封面、歌曲名和作者,再跑一次流程就行;只有想更换整体视觉风格时,才需要提供新的播放器参考图。
💡 一句话总结:先预览校准,再导出可复用的最终模板。
小结
这一篇,咱们没有生成十几个电影镜头,只用一个播放器场景,就把 MP3 变成了一支完整 AI MV。
真正值得带走的是三件事:
不会设计,就先找一张喜欢的截图,让 AI 把审美翻译成设计方案。
KTV 歌词的核心不是字幕样式,而是每个字背后的时间戳。
AI 负责理解和生成,程序负责按照同一条时间轴稳定合成。
这是最简单的一支 AI 视频,但里面已经用到了视觉参考、音频分析、时间轴、动态渲染和人工校准。
下一篇预告
做完这支 MV,你会发现整个过程里同时出现了多模态模型、语音识别模型、音频分析工具、播放器设计、Remotion 和 FFmpeg。它们都跟 AI 视频有关,但根本不是一类东西。
下一篇,我会把 AI 视频的工具、模型和工程化路线一次讲清楚:每一类解决什么问题、各自有什么优缺点,以及你面对不同视频需求时到底应该怎么选。
本系列持续更新,建议收藏。