利用ffmpeg把视频分解成图片(每秒x张图)再图片合成视频

1. 视频分解成图片

复制代码
ffmpeg -i rawVideo.mp4 -r 5 -f image2 img/%04d.png

-i rawVideo.mp4 输入文件
-r 5 每秒5帧(1秒5张图)    可不写,默认每秒24帧
-f image2 表示输出的格式图像      可不写,默认图像
img/ 图片放在img文件夹下
%04d.png 图片的命名格式,例如0001.png 0001.png 0003.png

如何查看原视频的帧数:ffmpeg -i rawVideo.mp4
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 9779 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
其中30fps为每秒30帧

2. 图片合成视频(有字幕、无声音)

复制代码
ffmpeg -i img/%04d.png out.mp4
或者
ffmpeg -f image2 -i img/%04d.png -vcodec libx264 -r 5 out.mp4

-i img/%04d.mp4    输入文件(当前路径下的img文件夹,命名格式是%04d.png的图片)
out.mp4   输出视频文件
-f image2 表示输出的格式图像      可不写,默认图像
-vcodec libx264 指定编码格式
-r 5 指定每秒5帧

系统默认可能无法播放打开新视频,最好用PotPlayer软件播放
新视频与原视频对比:
新视频时长是原视频的1/5,原因是帧数从30fps改为5fps

如何做到视频有声呢

复制代码
提供思想:
a.提取原视频声音(只能提取到正常语速,不能通过改变帧数改变语速)
b.根据视频默认fps提取图片(否则声音与视频合成不对口)
c.利用图片合成无声视频
d.无声视频与原声音合成视频

参考博客:利用ffmpeg从视频中提取纯(音频、视频、字幕)再合成视频

相关推荐
aqi004 小时前
FFmpeg开发笔记(七十二)Linux给FFmpeg集成MPEG-5视频编解码器EVC
android·ffmpeg·音视频·流媒体
花开花落的个人博客6 小时前
ESP32-S3开发板播放wav音频
音视频
顾道长生'12 小时前
(Arxiv-2025)通过动态 token 剔除实现无需训练的高效视频生成
计算机视觉·音视频·视频生成
每次的天空20 小时前
Android-自定义View的实战学习总结
android·学习·kotlin·音视频
爱分享的飘哥1 天前
【V6.0 - 听觉篇】当AI学会“听”:用声音特征捕捉视频的“情绪爽点”
人工智能·音视频
菜包eo1 天前
二维码驱动的独立站视频集成方案
网络·python·音视频
不太会编程的IT男1 天前
在 Jetson Orin 开发套件上使用 Hardware Encoder / Decoder 构建 FFmpeg
ffmpeg·视频编解码·h.264
阿蒙Amon1 天前
【Python小工具】使用 OpenCV 获取视频时长的详细指南
python·opencv·音视频
m0_687399841 天前
写一个Ununtu C++ 程序,调用ffmpeg API, 来判断一个数字电影的视频文件mxf 是不是Jpeg2000?
开发语言·c++·ffmpeg
aqi001 天前
FFmpeg开发笔记(七十一)使用国产的QPlayer2实现双播放器观看视频
android·ffmpeg·音视频·流媒体