ChinaFFmpeg

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 13780|回复: 8

[Linux] 图片合成视频,加入淡入淡出等效果,视频出现问题

[复制链接]
发表于 2017-7-7 11:57:16 | 显示全部楼层 |阅读模式
我将多张图片依次处理,每张图片生成一段小视频,有各自的时长和效果,把这些小视频合成一个完整视频的时候出现问题,每张图片的播放时长跟原先的小视频时长不一样,有的变短,有的变长,求大神告知如何解决,下面是脚本



/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00001.jpg -t 00:00:03 -s 1280x720  -b:v 2048k -vcodec mpeg4 text1.mp4
/usr/local/ffmpeg/bin/ffmpeg -i text1.mp4 -vf "drawtext=text=FIIISH:fontfile=/Library/Fonts/Arial.ttf:x=20:y=20:fontsize=44:enable='gte(t,1)'" -t 00:00:03 -vcodec mpeg4 -b:v 2048k -y 1.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 1.mp4 -vf fade=in:0:25 -s 1280x720 -t 00:00:03 -vcodec mpeg4 -b:v 2048k fade_1.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00002.jpg -t 00:00:02 -s 1280x720  -b:v 2048k -vcodec mpeg4 2.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 2.mp4 -vf "scale=8000:-1,zoompan=z='zoom+0.001':s='1280*720'" -s 1280x720 -t 00:00:02 -b:v 2048k -vcodec mpeg4 fade_2.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00003.jpg -t 00:00:03 -s 1280x720  -b:v 2048k -vcodec mpeg4 3.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 3.mp4 -vf fade=out:70:20:c=white -b:v 2048k -t 00:00:03 -s 1280x720 -vcodec mpeg4 fade_3.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00004.jpg -t 00:00:02 -s 1280x720  -b:v 2048k -vcodec mpeg4 4.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 4.mp4 -vf fade=in:0:25 -s 1280x720 -t 00:00:02 -b:v 2048k -vcodec mpeg4 fade_4.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00005.jpg -t 00:00:02 -s 1280x720  -b:v 2048k -vcodec mpeg4 5.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 5.mp4 -vf "scale=8000:-1,zoompan=z='zoom+0.001':s='1280*720'" -s 1280x720 -t 00:00:02 -b:v 2048k -vcodec mpeg4 fade_5.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00006.jpg -t 00:00:03 -s 1280x720  -b:v 2048k -vcodec mpeg4 6.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 6.mp4 -vf "scale=8000:-1,zoompan=z='zoom+0.001':s='1280*720'" -s 1280x720 -t 00:00:03 -b:v 2048k -vcodec mpeg4 fade_6.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00007.jpg -t 00:00:02 -s 1280x720  -b:v 2048k -vcodec mpeg4 7.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 7.mp4 -vf "scale=8000:-1,zoompan=z='zoom+0.001':s='1280*720'" -s 1280x720 -t 00:00:02 -b:v 2048k -vcodec mpeg4 fade_7.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00008.jpg -t 00:00:02 -s 1280x720  -b:v 2048k -vcodec mpeg4 8.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 8.mp4 -vf "scale=8000:-1,zoompan=z='if(lte(zoom,1.0),1.5,max(1.001,zoom-0.0015)):s='1280*720'" -t 00:00:02 -b:v 2048k -vcodec mpeg4 fade_8.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00009.jpg -t 00:00:03 -s 1280x720  -b:v 2048k -vcodec mpeg4 9.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 9.mp4 -vf "scale=8000:-1,zoompan=z='zoom+0.001':s='1280*720'" -s 1280x720 -t 00:00:03 -b:v 2048k -vcodec mpeg4 fade_9.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00010.jpg -t 00:00:02 -s 1280x720  -b:v 2048k -vcodec mpeg4 10.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 10.mp4 -vf "scale=8000:-1,zoompan=z='if(lte(zoom,1.0),1.5,max(1.001,zoom-0.0015))':s='1280*720'" -t 00:00:02 -b:v 2048k -vcodec mpeg4 fade_10.mp4

/usr/local/ffmpeg/bin/ffmpeg -y -loop 1 -r 30 -i /Users/lk/Desktop/file/im00011.jpg -t 00:00:03 -s 1280x720  -b:v 2048k -vcodec mpeg4 11.mp4
/usr/local/ffmpeg/bin/ffmpeg -y -i 11.mp4 -vf fade=out:60:30 -t 00:00:03 -s 1280x720 -b:v 2048k -vcodec mpeg4 fade_11.mp4


/usr/local/ffmpeg/bin/ffmpeg -f concat -i files.txt -c copy -y -b:v 4096k -vcodec mpeg4 myvideo.mp4

回复

使用道具 举报

发表于 2017-7-7 13:51:34 | 显示全部楼层
1. 帧率相同
2. 编码相同
3. 采样率相同

最后在拼接的时候就不会有问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-7-7 13:55:08 | 显示全部楼层
孙悟空 发表于 2017-7-7 13:51
1. 帧率相同
2. 编码相同
3. 采样率相同

我这些命令 都控制参数了啊   -r 帧率   -b 采样率  编码也都用的MP4
回复 支持 反对

使用道具 举报

发表于 2017-7-7 17:45:09 | 显示全部楼层
流年忘夏 发表于 2017-7-7 13:55
我这些命令 都控制参数了啊   -r 帧率   -b 采样率  编码也都用的MP4

你的看上去应该是在输入部分,可以每一条的输出部分控制
回复 支持 反对

使用道具 举报

发表于 2018-2-27 15:20:31 | 显示全部楼层
楼主的问题解决了吗?
回复 支持 反对

使用道具 举报

发表于 2018-2-27 15:25:25 | 显示全部楼层
yp68319 发表于 2018-2-27 15:20
楼主的问题解决了吗?

按照他的方法是已经解决的
回复 支持 反对

使用道具 举报

发表于 2018-2-27 15:42:38 | 显示全部楼层
孙悟空 发表于 2018-2-27 15:25
按照他的方法是已经解决的

我也在实现和楼主类似的功能,也遇到了同样的问题。

目前猜测应该是在子视频生成的时候,使用缩放的过场动画,生成的视频的帧率应该和其他的不统一。
回复 支持 反对

使用道具 举报

发表于 2018-2-27 16:37:10 | 显示全部楼层
目前的方法是使其他子视频的帧率和缩放子视频的一致,自测正常了。

但是缩放子视频的帧率为什么有问题,尚不清楚。
回复 支持 反对

使用道具 举报

发表于 2018-2-28 09:39:34 | 显示全部楼层
缩放效果会覆盖帧率设置,缩放效果帧率默认是25。

fps
Set the output frame rate, default is ’25’.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|ChinaFFmpeg

GMT+8, 2024-12-27 12:29 , Processed in 0.052549 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表