当我想连接并用ffmpeg记录两个mp4视频时,我遇到了这个问题。我得到的输出是:
[concat @ 0x2566e80] DTS 4079 < 8156 out of order0:02:43.12 bitrate= 291.3kbits/s
完成输出:
/opt/ffmpeg/ffmpeg -f concat -i liste.txt -strict -2 -c:v libx264 -c:a aac output.mp4
ffmpeg version N-66233-g16de4d9 Copyright (c) 2000-2014 the FFmpeg developers
built on Sep 11 2014 18:19:48 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
configuration: --enable-gpl --enable-libx264
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Input #0, concat, from 'liste.txt':
Duration: N/A, start: 0.000000, bitrate: 681 kb/s
Stream #0:0: Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 636x360, 585 kb/s, 25 fps, 25 tbr, 50 tbn, 50 tbc
Stream #0:1: Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s
[libx264 @ 0x278f760] using cpu capabilities: MMX2 SSE2Fast SSSE3
[libx264 @ 0x278f760] profile High, level 3.0
[libx264 @ 0x278f760] 264 - core 142 r2431 ac76440 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - 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 trel lis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=1 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 in terlaced=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 'output.mp4':
Metadata:
encoder : Lavf56.4.101
Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 636x360, q=-1--1, 25 fps, 12800 tbn, 25 tbc
Metadata:
encoder : Lavc56.1.100 libx264
Stream #0:1: Audio: aac ([64][0][0][0] / 0x0040), 44100 Hz, stereo, fltp, 128 kb/s
Metadata:
encoder : Lavc56.1.100 aac
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
[concat @ 0x2690e00] DTS 4079 < 8156 out of order0:02:43.12 bitrate= 676.2kbits/s
frame= 5060 fps= 10 q=28.0 Lsize= 20857kB time=00:06:44.60 bitrate= 422.3kbits/s dup=0 drop=5055
video:14484kB audio:6193kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.864065%
[libx264 @ 0x278f760] frame I:27 Avg QP:19.39 size: 27262
[libx264 @ 0x278f760] frame P:2986 Avg QP:24.08 size: 3879
[libx264 @ 0x278f760] frame B:2047 Avg QP:26.48 size: 1228
[libx264 @ 0x278f760] consecutive B-frames: 34.9% 30.6% 8.8% 25.7%
[libx264 @ 0x278f760] mb I I16..4: 10.8% 45.8% 43.4%
[libx264 @ 0x278f760] mb P I16..4: 4.0% 7.1% 3.5% P16..4: 25.5% 11.1% 4.2% 0.0% 0.0% skip:44.6%
[libx264 @ 0x278f760] mb B I16..4: 0.4% 0.6% 0.8% B16..8: 23.8% 5.9% 1.2% direct: 1.0% skip:66.4% L0:51.2% L1:42.6% BI: 6.2%
[libx264 @ 0x278f760] 8x8 transform intra:47.3% inter:58.5%
[libx264 @ 0x278f760] coded y,uvDC,uvAC intra: 51.2% 63.2% 24.8% inter: 10.5% 13.1% 1.1%
[libx264 @ 0x278f760] i16 v,h,dc,p: 18% 46% 10% 26%
[libx264 @ 0x278f760] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 22% 29% 20% 4% 4% 4% 5% 5% 6%
[libx264 @ 0x278f760] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 23% 13% 5% 7% 7% 7% 6% 6%
[libx264 @ 0x278f760] i8c dc,h,v,p: 48% 26% 19% 8%
[libx264 @ 0x278f760] Weighted P-Frames: Y:2.2% UV:1.6%
[libx264 @ 0x278f760] ref P L0: 78.9% 11.3% 7.2% 2.6% 0.0%
[libx264 @ 0x278f760] ref B L0: 94.7% 4.9% 0.4%
[libx264 @ 0x278f760] ref B L1: 97.8% 2.2%
[libx264 @ 0x278f760] kb/s:586.22
我还尝试了其他ffmepg选项,例如:-preset -vcodec libx264 -crf 25 -s 360x288 -vpre veryslow -c aac -ar 44100 -ab 56k
但没有成功。有人能帮助我吗?
答案 0 :(得分:0)
Tre重新编码您的视频,视频中可能存在PTS损坏 首先尝试重新打包视频。
ffmpeg -i input -acodec copy -vcodec copy output
如果无效,请尝试重新编码视频
ffmpeg -i input -acodec libvo_aacenc -vcodec libx264 -vsync drop output
现在尝试使用concat命令以与以前相同的方式组合视频。它应该工作。