我正在尝试通过按此顺序连接来创建视频:
video1.mp4
& video_from_static_image.mp4
& video1.mp4
video1.mp4
是一个简单的视频文件。 video_from_static_image.mp4
是根据a.png
图片创建的,如下所示:
ffmpeg -y -framerate 25 -f image2 -loop 1 -i a.png -c:v libx264 -profile:v main -pix_fmt yuv420p -t 2 -r 25 video_from_static_image.mp4
我通过以下命令创建最终的连接文件:
ffmpeg -y -f concat -safe 0 -i mylist.txt -c copy final_concat.mp4
我在concat过程中收到以下消息:
[mp4 @ 0x7fee6b815e00] Non-monotonous DTS in output stream 0:0; previous: 120678, current: 65722; changing to 120679. This may result in incorrect timestamps in the output file.
运行上述命令时的完整输出是here
当我玩final_concat.mp4
时,它遇到了video_from_static_image.mp4的问题,似乎跳过它(其他变化导致了一段时间的播放)。我尝试了很多东西,但我相信它们都指向上面的DTS错误。
$ ffmpeg -version
ffmpeg version 3.3.4 Copyright (c) 2000-2017 the FFmpeg developers
built with Apple LLVM version 7.3.0 (clang-703.0.31)
configuration: --prefix=/usr/local/Cellar/ffmpeg/3.3.4 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libvpx --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-vda
libavutil 55. 58.100 / 55. 58.100
libavcodec 57. 89.100 / 57. 89.100
libavformat 57. 71.100 / 57. 71.100
libavdevice 57. 6.100 / 57. 6.100
libavfilter 6. 82.100 / 6. 82.100
libavresample 3. 5. 0 / 3. 5. 0
libswscale 4. 6.100 / 4. 6.100
libswresample 2. 7.100 / 2. 7.100
libpostproc 54. 5.100 / 54. 5.100
答案 0 :(得分:1)
重新创建video_from_static_image.mp4
以获得与video1.mp4
相同的参数,并且还包括静音填充音频:
ffmpeg -framerate 24000/1001 -loop 1 -i a.png -f lavfi -i anullsrc=cl=stereo:r=44100 -c:v libx264 -pix_fmt yuv420p -t 2 -shortest video_from_static_image.mp4
现在帧速率,时基,H.264配置文件,音频通道,音频速率和流顺序都是相同的。
然后运行concat命令。