我有三个视频,我想把它连接在一起问题,它对一些视频很好,但是当我测试一个特定的视频时,它会给我一个错误,并导致产生的视频以一种奇怪的方式显示,视频中的一切都进展得非常快,就像我正在转发视频一样。
这是我用来将视频从一个文件( out.txt )中添加到一起的代码
file 'D:/Build/start.mp4'
file 'D:/Build/a.mp4'
file 'D:/Build/Song & Lyrics/2f.mp4'
我和ffmpeg一起使用的命令
ffmpeg -f concat -safe 0 -i out.txt -c copy -y go.mp4
我面对这个错误
[mov,mp4,m4a,3gp,3g2,mj2 @ 05c0dbc0] Auto-inserting h264_mp4toannexb bitstream filter
Input #0, concat, from 'out.txt':
Duration: N/A, start: 0.000000, bitrate: 280 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 155 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Metadata:
creation_time : 2018-02-08T13:25:49.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 02/08/2018.
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s
Metadata:
creation_time : 2018-02-08T13:25:49.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 02/08/2018.
Output #0, mp4, to 'go.mp4':
Metadata:
encoder : Lavf58.7.100
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 155 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 90k tbc
Metadata:
creation_time : 2018-02-08T13:25:49.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 02/08/2018.
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s
Metadata:
creation_time : 2018-02-08T13:25:49.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 02/08/2018.
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[mov,mp4,m4a,3gp,3g2,mj2 @ 05c38840] Auto-inserting h264_mp4toannexb bitstream filter
[mp4 @ 061b8f00] Non-monotonous DTS in output stream 0:0; previous: 624624, current: 88735; changing to 624625. This may result in incorrect timestamps in the output file.
[mp4 @ 061b8f00] Non-monotonous DTS in output stream 0:0; previous: 624625, current: 89247; changing to 624626. This may result in incorrect timestamps in the output file.
[mp4 @ 061b8f00] Non-monotonous DTS in output stream 0:0; previous: 624626, current: 89759; changing to 624627. This may result in incorrect timestamps in the output file.
.....
[mov,mp4,m4a,3gp,3g2,mj2 @ 05c38840] Auto-inserting h264_mp4toannexb bitstream filtereed=69.7x
frame= 8991 fps=2903 q=-1.0 Lsize= 8378kB time=00:05:58.22 bitrate= 191.6kbits/s speed= 116x
video:2469kB audio:5625kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.500685%
那么是什么问题造成了这个错误。当我使用这个新的start.mp4与我在其他视频上尝试过的视频合并时,问题就出现了,而且效果很好。
更新
我测试了将视频转换成MTS格式,然后将它们作为类似问题的答案,但问题是当我将mp4视频转换为此格式时,文件的大小从6MB太大到42 MB!所以如果有更好的答案。或者让文件保持相同大小或更少的方法答案的链接是here,但是它工作得很好,这要事先感谢
发布于 2018-02-08 16:44:17
在这段时间里,我试图解决这个问题并进行一些搜索,我注意到第一个视频与我之前测试过的其他视频没有相同的帧/秒,我使用这个命令使它们都具有25帧/秒。
FFmpeg -y -i source.mp4 -r 25 -s 160x90 -c:v libx264 -b:v 3M -strict -2 -movflags fast start destination.mp4
当我开始添加输出的视频时,这个命令没有任何问题,所以我需要确认是否这个信息是正确的,因为我不确定。但对我来说很管用
https://stackoverflow.com/questions/48687852
复制相似问题