首页 > 解决方案 > 与 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

标签: ffmpegvideo-processing

解决方案


ffmpeg的太老了。下载最新版本:最好是来自“git master”的构建。


推荐阅读