制作视频
文字转语音
第三方接口
图片+文字 转视频
:ffmpeg
第三方接口
图片+文字 转视频
:ffmpeg
##名称:ffmpeg实现将图片转换为视频 ##平台:ubuntu(已经安装好了ffmpeg工具) ##日期:2017年12月10日 简介: 因为学习需要,需要将连续图片转换成视频,昨天和今天早上用opencv实现了, 但是对于视频的处理用ffmpeg工具,更为强大。 1.基本格式 终端输入: ffmpeg -f image2 -i /home/ttwang/images/image%d.jpg tt.mp4 其中/home/ttwang/images/images%d.jpg 为图片路径 图片的命名格式为image%d.jpg形式,即:image0 image1 image2 ....... tt.mp4为输出视频文件名 2.指定编码格式的使用 终端输入: ffmpeg -f image2 -i /home/ttwang/images/image%d.jpg -vcodec libx264 tt.mp4 3.指定输出帧率 终端输入:ffmpeg -f image2 -i /home/ttwang/images/image%d.jpg -vcodec libx264 -r 10 tt.mp4 -r 10 表示定义帧率为10,这样输出的视频就是每秒播放十帧 4.其余ffmpeg小技巧参考资料 参考资料
单图片转视频
先产生一个背景后,再做 overlay,这里需要注意一下分辨率的设置,视频源的分辨率要和图片分辨率一样;
ffmpeg -ss 0 -t 30 -f lavfi -i color=c=0x000000:s=1920x1080:r=30 -i ~/Desktop/test.png -filter_complex “[1:v]scale=1920:1080[v1];[0:v][v1]overlay=0:0[outv]” -map [outv] -c:v libx264 ~/Desktop/test.mp4 -y
ffmpeg -ss 0 -t 30 -f lavfi -i color=c=0x000000:s=1920x1080:r=30 -i ~/Desktop/test.png -filter_complex "[1:v]scale=1920:1080[v1];[0:v][v1]overlay=0:0[outv]" -map [outv] -c:v libx264 ~/Desktop/test.mp4 -y
1
为什么这么转,还 overlay 处理一下?因为直接转图片,默认是按25帧每秒转的,那么转出来的视频的时长只有40ms;视频时长太短了,没有意义;所以通过overlay 来转, 可以设置单图片的输出时长。
多图片转视频
多张图片组转视频
ffmpeg -f image2 -i ~/Desktop/images/image%d.jpg -vcodec libx264 ~/Desktop/test.mp4 -y
1
图片按固定的帧率转视频
ffmpeg -f image2 -i ~/Desktop/images/image%d.jpg -vcodec libx264 -r 10 ~/Desktop/test.mp4 -y
1
设置图片切换帧率为每秒一张图片
ffmpeg -r 1 -i ~/Desktop/%d.jpg -vf fps=1 -vcodec libx264 ~/Desktop/test.mp4 -y
阅读量: 1096
发布于:
修改于:
发布于:
修改于: