使用xfade过滤器(ffmpeg)播放多个视频时重复的帧

使用xfade过滤器(ffmpeg)播放多个视频时重复的帧,ffmpeg,concatenation,concat,Ffmpeg,Concatenation,Concat,我一直在用音频合并多个视频。这在我之前合并的大多数视频中都适用,但在一些视频中,我收到了“复制超过1000帧”的警告,输出视频被破坏(一些视频无法播放,只有静态图片和声音未对齐) 所有视频的格式都相同。我看到的唯一区别是一些是“yuvj420p(pc)”,而大多数是“yuv420p”。但我尝试在没有“yuvj420p(pc)”的情况下进行合并,但没有任何帮助 已经尝试添加“-vsync vfr”,也没有帮助。 有趣的是,如果我删除第二个或最后一个输入视频,则不会给出任何警告,而且一切正常 我使用

我一直在用音频合并多个视频。这在我之前合并的大多数视频中都适用,但在一些视频中,我收到了“复制超过1000帧”的警告,输出视频被破坏(一些视频无法播放,只有静态图片和声音未对齐)

所有视频的格式都相同。我看到的唯一区别是一些是“yuvj420p(pc)”,而大多数是“yuv420p”。但我尝试在没有“yuvj420p(pc)”的情况下进行合并,但没有任何帮助

已经尝试添加“-vsync vfr”,也没有帮助。 有趣的是,如果我删除第二个或最后一个输入视频,则不会给出任何警告,而且一切正常

我使用的命令是:

ffmpeg  -i intro.mp4 \
     -i 2043651222.mp4 \
     -i 2668231460.mp4 \
     -i 2342967217.mp4 \
     -i 2345792509.mp4 \
     -i 2764881879.mp4 \
     -i 3127825310.mp4 \
     -i 3058954129.mp4 \
     -i 2533841315.mp4 \
     -i 2334544474.mp4 \
     -i 2493440007.mp4 \
     -filter_complex \
"[0][1]xfade=transition=fade:duration=0.5:offset=3.5000000[V01]; \
[V01][2]xfade=transition=fade:duration=0.5:offset=7.67000[V02]; \
[V02][3]xfade=transition=fade:duration=0.5:offset=27.21000[V03]; \
[V03][4]xfade=transition=fade:duration=0.5:offset=37.01000[V04]; \
[V04][5]xfade=transition=fade:duration=0.5:offset=54.11000[V05]; \
[V05][6]xfade=transition=fade:duration=0.5:offset=56.63000[V06]; \
[V06][7]xfade=transition=fade:duration=0.5:offset=80.49000[V07]; \
[V07][8]xfade=transition=fade:duration=0.5:offset=107.23000[V08]; \
[V08][9]xfade=transition=fade:duration=0.5:offset=110.12000[V09]; \
[V09][10]xfade=transition=fade:duration=0.5:offset=118.31000,format=yuv420p[video]; \
[0:a]aresample=async=1:first_pts=0,apad,atrim=0:4[A0]; \
[1:a]aresample=async=1:first_pts=0,apad,atrim=0:4.67[A1]; \
[2:a]aresample=async=1:first_pts=0,apad,atrim=0:20.04[A2]; \
[3:a]aresample=async=1:first_pts=0,apad,atrim=0:10.3[A3]; \
[4:a]aresample=async=1:first_pts=0,apad,atrim=0:17.6[A4]; \
[5:a]aresample=async=1:first_pts=0,apad,atrim=0:3.02[A5]; \
[6:a]aresample=async=1:first_pts=0,apad,atrim=0:24.36[A6]; \
[7:a]aresample=async=1:first_pts=0,apad,atrim=0:27.24[A7]; \
[8:a]aresample=async=1:first_pts=0,apad,atrim=0:3.39[A8]; \
[9:a]aresample=async=1:first_pts=0,apad,atrim=0:8.69[A9]; \
[10:a]aresample=async=1:first_pts=0,apad,atrim=0:14.88[A10]; \
[A0][A1]acrossfade=d=0.5:c1=tri:c2=tri[A0001]; \
[A0001][A2]acrossfade=d=0.5:c1=tri:c2=tri[A0002]; \
[A0002][A3]acrossfade=d=0.5:c1=tri:c2=tri[A0003]; \
[A0003][A4]acrossfade=d=0.5:c1=tri:c2=tri[A0004]; \
[A0004][A5]acrossfade=d=0.5:c1=tri:c2=tri[A0005]; \
[A0005][A6]acrossfade=d=0.5:c1=tri:c2=tri[A0006]; \
[A0006][A7]acrossfade=d=0.5:c1=tri:c2=tri[A0007]; \
[A0007][A8]acrossfade=d=0.5:c1=tri:c2=tri[A0008]; \
[A0008][A9]acrossfade=d=0.5:c1=tri:c2=tri[A0009]; \
[A0009][A10]acrossfade=d=0.5:c1=tri:c2=tri[audio] \
" -map "[video]" -map "[audio]" -movflags +faststart 'compiled.mp4'
完整日志:

ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
  built with Apple clang version 11.0.3 (clang-1103.0.32.62)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3.1 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'intro.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.29.100
  Duration: 00:00:04.00, start: 0.000000, bitrate: 98 kb/s
    Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 2 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
    Stream #0:1(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x1280 [SAR 1:1 DAR 9:16], 85 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : VideoHandler
Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '2043651222.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:04.67, start: 0.000000, bitrate: 471 kb/s
    Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc), 720x1280 [SAR 1:1 DAR 9:16], 333 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #1:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 129 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Input #2, mov,mp4,m4a,3gp,3g2,mj2, from '2668231460.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:20.04, start: 0.000000, bitrate: 1882 kb/s
    Stream #2:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x1280, 1685 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : Core Media Video
    Stream #2:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 191 kb/s (default)
    Metadata:
      handler_name    : Core Media Audio
Input #3, mov,mp4,m4a,3gp,3g2,mj2, from '2342967217.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:10.30, start: 0.000000, bitrate: 446 kb/s
    Stream #3:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x1280 [SAR 1:1 DAR 9:16], 367 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #3:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Input #4, mov,mp4,m4a,3gp,3g2,mj2, from '2345792509.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:17.60, start: 0.000000, bitrate: 2546 kb/s
    Stream #4:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x1280, 2342 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : Core Media Video
    Stream #4:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 199 kb/s (default)
    Metadata:
      handler_name    : Core Media Audio
Input #5, mov,mp4,m4a,3gp,3g2,mj2, from '2764881879.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:03.02, start: 0.000000, bitrate: 1293 kb/s
    Stream #5:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x1280, 1110 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : Core Media Video
    Stream #5:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 178 kb/s (default)
    Metadata:
      handler_name    : Core Media Audio
Input #6, mov,mp4,m4a,3gp,3g2,mj2, from '3127825310.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:24.36, start: 0.000000, bitrate: 401 kb/s
    Stream #6:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x1280 [SAR 1:1 DAR 9:16], 323 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #6:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
Input #7, mov,mp4,m4a,3gp,3g2,mj2, from '3058954129.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:27.24, start: 0.000000, bitrate: 1723 kb/s
    Stream #7:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x1280, 1519 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : Core Media Video
    Stream #7:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 194 kb/s (default)
    Metadata:
      handler_name    : Core Media Audio
Input #8, mov,mp4,m4a,3gp,3g2,mj2, from '2533841315.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:03.39, start: 0.000000, bitrate: 1807 kb/s
    Stream #8:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x1280, 1657 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : Core Media Video
    Stream #8:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 150 kb/s (default)
    Metadata:
      handler_name    : Core Media Audio
Input #9, mov,mp4,m4a,3gp,3g2,mj2, from '2334544474.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:08.69, start: 0.000000, bitrate: 2675 kb/s
    Stream #9:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 720x1280, 2500 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : Core Media Video
    Stream #9:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 180 kb/s (default)
    Metadata:
      handler_name    : Core Media Audio
Input #10, mov,mp4,m4a,3gp,3g2,mj2, from '2493440007.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
  Duration: 00:00:14.88, start: 0.000000, bitrate: 966 kb/s
    Stream #10:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 720x1280, 889 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : Core Media Video
    Stream #10:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, mono, fltp, 69 kb/s (default)
    Metadata:
      handler_name    : Core Media Audio
File 'compiled.mp4' already exists. Overwrite? [y/N] y
Stream mapping:
  Stream #0:0 (aac) -> aresample
  Stream #0:1 (h264) -> xfade:main
  Stream #1:0 (h264) -> xfade:xfade
  Stream #1:1 (aac) -> aresample
  Stream #2:0 (h264) -> xfade:xfade
  Stream #2:1 (aac) -> aresample
  Stream #3:0 (h264) -> xfade:xfade
  Stream #3:1 (aac) -> aresample
  Stream #4:0 (h264) -> xfade:xfade
  Stream #4:1 (aac) -> aresample
  Stream #5:0 (h264) -> xfade:xfade
  Stream #5:1 (aac) -> aresample
  Stream #6:0 (h264) -> xfade:xfade
  Stream #6:1 (aac) -> aresample
  Stream #7:0 (h264) -> xfade:xfade
  Stream #7:1 (aac) -> aresample
  Stream #8:0 (h264) -> xfade:xfade
  Stream #8:1 (aac) -> aresample
  Stream #9:0 (h264) -> xfade:xfade
  Stream #9:1 (aac) -> aresample
  Stream #10:0 (h264) -> xfade:xfade
  Stream #10:1 (aac) -> aresample
  format -> Stream #0:0 (libx264)
  acrossfade -> Stream #0:1 (aac)
Press [q] to stop, [?] for help
[swscaler @ 0x7ff21ef72000] deprecated pixel format used, make sure you did set range correctly
[libx264 @ 0x7ff227827800] using SAR=1/1
[libx264 @ 0x7ff227827800] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7ff227827800] profile High, level 3.1, 4:2:0, 8-bit
[libx264 @ 0x7ff227827800] 264 - core 160 r3011M cde9a93 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'compiled.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.45.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p(progressive), 720x1280 [SAR 1:1 DAR 9:16], q=-1--1, 30 fps, 15360 tbn, 30 tbc (default)
    Metadata:
      encoder         : Lavc58.91.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
    Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
    Metadata:
      encoder         : Lavc58.91.100 aac
More than 1000 frames duplicated    1024kB time=00:00:47.41 bitrate= 176.9kbits/s dup=597 drop=996 speed=5.81x    
[mp4 @ 0x7ff227815200] Starting second pass: moving the moov atom to the beginning of the filep=1954 speed=4.07x    
frame= 3989 fps=121 q=-1.0 Lsize=   13252kB time=00:02:12.98 bitrate= 816.3kbits/s dup=1946 drop=1954 speed=4.05x    
video:11094kB audio:2036kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.927680%
[libx264 @ 0x7ff227827800] frame I:23    Avg QP:14.09  size: 69236
[libx264 @ 0x7ff227827800] frame P:1195  Avg QP:18.60  size:  6527
[libx264 @ 0x7ff227827800] frame B:2771  Avg QP:21.69  size:   710
[libx264 @ 0x7ff227827800] consecutive B-frames:  3.3% 11.5%  2.6% 82.6%
[libx264 @ 0x7ff227827800] mb I  I16..4: 36.4% 41.9% 21.7%
[libx264 @ 0x7ff227827800] mb P  I16..4:  3.1%  6.0%  1.1%  P16..4: 15.4%  5.5%  2.9%  0.0%  0.0%    skip:66.0%
[libx264 @ 0x7ff227827800] mb B  I16..4:  0.1%  0.1%  0.0%  B16..8: 10.2%  0.6%  0.0%  direct: 0.4%  skip:88.5%  L0:42.8% L1:53.3% BI: 3.8%
[libx264 @ 0x7ff227827800] 8x8 transform intra:55.8% inter:63.6%
[libx264 @ 0x7ff227827800] coded y,uvDC,uvAC intra: 25.6% 42.8% 14.5% inter: 2.7% 2.5% 0.0%
[libx264 @ 0x7ff227827800] i16 v,h,dc,p: 45% 22% 14% 19%
[libx264 @ 0x7ff227827800] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 38% 19% 28%  3%  2%  3%  2%  3%  2%
[libx264 @ 0x7ff227827800] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 32% 17% 15%  6%  7%  8%  5%  6%  4%
[libx264 @ 0x7ff227827800] i8c dc,h,v,p: 55% 15% 23%  7%
[libx264 @ 0x7ff227827800] Weighted P-Frames: Y:2.0% UV:1.7%
[libx264 @ 0x7ff227827800] ref P L0: 68.4% 13.3% 14.4%  3.9%  0.1%
[libx264 @ 0x7ff227827800] ref B L0: 86.0% 12.0%  2.1%
[libx264 @ 0x7ff227827800] ref B L1: 96.9%  3.1%
[libx264 @ 0x7ff227827800] kb/s:683.43
[aac @ 0x7ff22781fc00] Qavg: 2168.180

建议提供一个仍然显示问题的最小命令。@llogan我希望我可以。这就是问题所在。。如果我删除一个输入视频,一个交叉淡入淡出和修剪的东西得到正常和视频组装好。少了一个视频,“复制了1000多帧”就消失了。你能提供所有11个输入文件的链接吗?只需在28个输入视频上分别运行xfade和triimng+crossfade。它是有效的。输出文件的持续时间几乎相同。这有帮助吗?ffprobe的两个输出文件:另一个更新-我刚刚合并了视频和音频,一切都完全同步。为什么这不能一次成功对我来说仍然是个谜。