1

avi ファイルを mpeg に変換しようとしていますが、ffmpeg で「バッファ アンダーフロー」と「パケットが大きすぎます」というエラー メッセージが表示されます。

私が使用しているコマンドは次のとおりです。

ffmpeg -I 入力.avi -s 2592x2160 -b 1200 出力.mpg

  1. 動画のサイズ - 制限はありますか?

    小さいサイズのビデオを撮影すると問題なく動作するように見えることに気付きました。このような大きなサイズのファイルに対応する方法はありますか?

  2. フレームレート - ffmpeg はビデオをパディングできますか?

    特定のフレーム レートにも問題があります。mpeg1 フォーマットでは特定のフレーム レートのみがサポートされているというエラー メッセージが表示されます。

  3. ファイル サイズ - 変換できる最大ファイル サイズに制限はありますか?

ありがとう、イーモン

出力

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%
4

2 に答える 2

0

可能なサイズ制限 (ただし、サイズが 100Mio のエンコード (MP4 16/9 HD) のシングル パスの例の場合のみ)

ffmpeg -y -i "imput.avi" -f mp4 -r 29.97 -vcodec libx264 -preset veryslow -vf setdar=16:9 -fs 100000000 -acodec libvo_aacenc -ab 112k -ar 48000 -ac 2 output.mp4

-fs 100000000 = 100Mio

于 2016-02-07T16:44:47.500 に答える