我想轉換AVI文件到MPEG,但ffmpeg的是給我這些錯誤信息,「緩衝溢出」和「包過大」ffmpeg的侷限性?
我使用的命令是:
的ffmpeg -I input.avi -s 2592x2160 -b 1200 output.mpg
視頻尺寸 - 是否有任何限制?
我注意到,如果我拍攝一個尺寸較小的視頻,它似乎工作正常,有沒有辦法容納這樣的大尺寸文件?
幀率 - 可以ffmpeg填充視頻嗎?
我也有某些幀率的問題,錯誤信息告訴我只有某些幀速率支持mpeg1格式,我可以得到ffmpeg來填補我的avi文件來解釋這個嗎?
文件大小 - 可以轉換的最大文件大小是否有任何限制?
謝謝, 埃蒙
OUTPUT
ffmpeg -i neoAvi.avi -s 2592x2160 -b 1200k neoMpg.mpg
ffmpeg version N-41416-g718607b Copyright (c) 2000-2012 the FFmpeg developers
built on Jun 8 2012 12:46:19 with gcc 4.6.3
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-ru
ntime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libass
--enable-libcelt --enable-libopencore-amrnb --enable-libopencore-amrwb --enable
-libfreetype --enable-libgsm --enable-libmp3lame --enable-libnut --enable-libope
njpeg --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libth
eora --enable-libutvideo --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-
libvorbis --enable-libvpx --ena libavutil 51. 56.100/51. 56.100
libavcodec 54. 25.100/54. 25.100
libavformat 54. 6.101/54. 6.101
libavdevice 54. 0.100/54. 0.100
libavfilter 2. 78.101/2. 78.101
libswscale 2. 1.100/2. 1.100
libswresample 0. 15.100/0. 15.100
libpostproc 52. 0.100/52. 0.100
[avi @ 01d2be20] Something went wrong during header parsing, I will ignore it an
d try to continue anyway.
[avi @ 01d2be20] Stream #0: not enough frames to estimate rate; consider increas
ing probesize
[avi @ 01d2be20] Stream #1: not enough frames to estimate rate; consider increas
ing probesize
[avi @ 01d2be20] Could not find codec parameters (Subtitle: none)
Input #0, avi, from 'neoAvi.avi':
Duration: 00:00:01.49, start: 0.000000, bitrate: 1493071 kb/s
Stream #0:0: Video: rawvideo, pal8, 2592x2160, 33.33 tbr, 33.33 tbn, 33.33 t
bc
Stream #0:1: Subtitle: none
Please use -b:a or -b:v, -b is ambiguous
File 'neoMpg.mpg' already exists. Overwrite ? [y/N] y
[mpeg @ 02ba71a0] packet too large, ignoring buffer limits to mux it
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=921414 size=946200
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=923455 size=946200
[mpeg @ 02ba71a0] packet too large, ignoring buffer limits to mux it
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=923455 size=946200
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=925496 size=946200
[mpeg @ 02ba71a0] packet too large, ignoring buffer limits to mux it
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=925496 size=946200
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=927537 size=946200
...
[mpeg @ 02ba71a0] packet too large, ignoring buffer limits to mux it
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=921414 size=946200
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=923455 size=946200
[mpeg @ 02ba71a0] packet too large, ignoring buffer limits to mux it
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=923455 size=946200
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=925496 size=946200
[mpeg @ 02ba71a0] packet too large, ignoring buffer limits to mux it
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=925496 size=946200
[mpeg @ 02ba71a0] buffer underflow i=0 bufi=927537 size=946200
frame= 4 fps=3.2 q=5.5 size= 1380kB time=00:00:00.06 bitrate=169573.6kbits
frame= 13 fps=7.3 q=29.1 size= 1604kB time=00:00:00.36 bitrate=35836.2kbits
frame= 22 fps=9.5 q=31.0 size= 2100kB time=00:00:00.66 bitrate=25804.8kbits
frame= 31 fps= 11 q=31.0 size= 2490kB time=00:00:00.96 bitrate=21101.5kbits
frame= 40 fps= 12 q=31.0 size= 3010kB time=00:00:01.26 bitrate=19466.8kbits
frame= 47 fps= 12 q=31.0 Lsize= 3128kB time=00:00:01.53 bitrate=16711.7kbit
s/s dup=0 drop=3
video:3116kB audio:0kB global headers:0kB muxing overhead 0.372684%
在過去我有問題時維度不能被16整除'vertSize%16 == 0'。嘗試使用下一個尺寸的比例都可以被16整除。 –
@EricFortis我在尺寸上犯了一個錯誤,他們實際上是2592 * 2160,可以被16整除。感謝您的建議 –
完整的ffmpeg控制檯輸出是失蹤。這通常包含有用的信息,並且總是建議用於FFmpeg使用問題(這種方式更適合於superuser.com)。 – LordNeckbeard