FFMPEG:执行期间的concat demuxer错误

时间:2015-11-01 20:14:06

标签: video ffmpeg

我正在尝试使用FFMPEG concat demuxer来创建单个视频的“循环”。

我首先尝试运行此命令:

ffmpeg -f concat -i behzad.txt -c:v copy output_concat.avi

我的输入文本文件如下:

file 'G:\Masters_Thesis_Files\Honda_Database\Database1\Training\videos\behzad\behzad.avi'
file 'G:\Masters_Thesis_Files\Honda_Database\Database1\Training\videos\behzad\behzad.avi'

输入文件采用原始格式。

运行命令后,我得到以下输出到控制台,生成的视频就是我输入视频文件的第一帧。

ffmpeg version N-74286-ge5774f2 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.3 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-l
ibilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enab
le-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --en
able-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --ena
ble-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc
 --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enabl
e-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma --ena
ble-decklink --enable-zlib
  libavutil      54. 30.100 / 54. 30.100
  libavcodec     56. 57.100 / 56. 57.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 32.100 /  5. 32.100
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
Input #0, concat, from 'behzad.txt':
  Duration: N/A, start: 0.000001, bitrate: 110806 kb/s
    Stream #0:0: Video: rawvideo, bgr24, 640x480, 110806 kb/s, 14.99 fps, 14.99
tbr, 14.99 tbn, 14.99 tbc
File 'output_concat.avi' already exists. Overwrite ? [y/N] y
Output #0, avi, to 'output_concat.avi':
  Metadata:
    ISFT            : Lavf56.40.101
    Stream #0:0: Video: rawvideo, bgr24, 640x480, q=2-31, 110806 kb/s, 14.99 fps
, 14.99 tbr, 14.99 tbn, 14.99 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[avi @ 0000000004723360] Non-monotonous DTS in output stream 0:0; previous: 1186
24821151886176, current: 118624821151886176; changing to 118624821151886177. Thi
s may result in incorrect timestamps in the output file.
[avi @ 0000000004723360] Too large number of skipped frames 118624821151886176 >
 60000
av_interleaved_write_frame(): Invalid argument
[avi @ 0000000004723360] Too large number of skipped frames 118624821151886176 >
 60000
frame=    2 fps=0.0 q=-1.0 Lsize=     906kB time=-00:00:00.00 bitrate=N/A
video:1800kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing
overhead: unknown
Conversion failed!

我还试图在编解码器设置为h264的情况下运行命令,而不是仅仅复制编解码器。当我运行此命令时,输出到控制台仍然有DTS错误,但是,我的输出视频包含整个输入视频而不仅仅是第一帧。它没有像我期望的那样重复视频。

我还应该指定,我在Windows中使用最新版本的Zeranoe FFMPEG运行这些命令。

我对FFMPEG还是比较缺乏经验,这个过程的某些部分我做错了吗?

0 个答案:

没有答案