242 字
1 分钟
视频转图片序列
- 常常在轻量级场景下使用
流程:
AI生成视频 ↓导出MP4 ↓ffmpeg拆帧 ↓438张WebP ↓JSON描述播放规则 ↓网页播放FFmpeg 拆帧
假设有一个视频:
video.mp4拆成 PNG
ffmpeg -i video.mp4 frames/frame_%04d.png输出:
frames/├── frame_0001.png├── frame_0002.png├── frame_0003.png...拆成 WebP(更适合网页)
ffmpeg -i video.mp4 frames/frame_%04d.webp输出:
frames/├── frame_0001.webp├── frame_0002.webp├── frame_0003.webp...指定帧率
例如原视频 60 FPS,但只想导出 30 FPS:
ffmpeg -i video.mp4 -vf fps=30 frames/frame_%04d.webp从第 0 帧开始命名
默认是:
frame_0001.webp如果你的播放器要求:
frame_0000.webp可以:
ffmpeg -i video.mp4 -start_number 0 frames/frame_%04d.webp得到:
frame_0000.webpframe_0001.webpframe_0002.webp...同时提取音频
提取音频:
ffmpeg -i video.mp4 -vn -c:a copy audio.m4a参数含义:
-vn:不要视频-c:a copy:直接复制音频流,不重新编码
示例
mkdir -p frames
ffmpeg -i video.mp4 \-vf fps=30 \-start_number 0 \-qscale:v 80 \frames/frame_%04d.webp再提取音频:
ffmpeg -i video.mp4 -vn -c:a copy audio.m4a资源包结构:
naiwa/├── config.json├── audio.m4a└── frames/ ├── frame_0000.webp ├── frame_0001.webp ├── ... └── frame_0437.webp