微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

与 xfade 合并时,ffmpeg 因“重复超过 1k 帧”而失败

如何解决与 xfade 合并时,ffmpeg 因“重复超过 1k 帧”而失败

当我尝试使用相同的编解码器(由 ffmpeg 在上一步中生成)合并 8 个或更多视频剪辑时,我收到 More than 1000 frames duplicated 警告,并且结果输出未正确合并。 7 个视频剪辑不会发生这种情况。

我尝试移除第 8 个剪辑以检查该剪辑是否有问题,但它发生了相同的情况。还对剪辑重新排序,但没有成功。

我使用的命令是:

ffmpeg -i scenes/step-000.mp4 -i scenes/step-001.mp4 -i scenes/step-002.mp4 -i scenes/step-003.mp4 -i scenes/step-004.mp4 -i scenes/step-005.mp4 -i scenes/step-008.mp4 -i scenes/step-009.mp4 -filter_complex_script temp/2021-03-17-14-51-13-6.txt  -y -map "[video]" -map "[audio]" -pix_fmt yuv420p -movflags +faststart output.mp4

filter_complex_script内容是:

[0][1] xfade=transition=fade:duration=2:offset=2.48 [vtmp1]; [vtmp1][2] xfade=transition=fade:duration=2:offset=12.56 [vtmp2]; [vtmp2][3] xfade=transition=fade:duration=2:offset=100.58 [vtmp3]; [vtmp3][4] xfade=transition=fade:duration=2:offset=167.60 [vtmp4]; [vtmp4][5] xfade=transition=fade:duration=2:offset=222.62 [vtmp5]; [vtmp5][6] xfade=transition=fade:duration=2:offset=232.70 [vtmp6]; [vtmp6][7] xfade=transition=fade:duration=2:offset=282.72 [video]; [0:a][1:a] acrossfade=d=2:c1=tri:c2=tri [atmp1]; [atmp1][2:a] acrossfade=d=2:c1=tri:c2=tri [atmp2]; [atmp2][3:a] acrossfade=d=2:c1=tri:c2=tri [atmp3]; [atmp3][4:a] acrossfade=d=2:c1=tri:c2=tri [atmp4]; [atmp4][5:a] acrossfade=d=2:c1=tri:c2=tri [atmp5]; [atmp5][6:a] acrossfade=d=2:c1=tri:c2=tri [atmp6]; [atmp6][7:a] acrossfade=d=2:c1=tri:c2=tri [audio]

FFMPEG 版本 4.3.2-tessus

解决方法

您的 ffmpeg 太旧了。 Download 最新版本:最好是从“git master”构建。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。