我试图使用libavcodec(ffmpeg)将原始像素数据编码为mp4格式。每件事情都很顺利,我得到的.avi文件质量不错,但有些时候编解码器会给出“编码帧太大”的警告。而当它这样做时,一些框架的一部分(通常是框架的底部)看起来乱码或混杂起来。任何人可以告诉我何时发出此警告。以下是我使用的编码器设置:ffmpeg(libavcodec)警告:编码帧太大
qmax = 6;
qmin = 2;
bit_rate = 200000; // if I increase this, I get more warnings.
width = 1360;
height = 768;
time_base.den = 15; // frames per second
time_base.num = 1;
gop_size = 48;
pix_fmt = PIX_FMT_YUV420P;
问候,
你使用什么编解码器?对ffmpeg源代码的一个快速的grep表明这个错误是由编解码器(libavcodec中的源文件)而不是muxers(libavformat中的源文件)生成的。 – stribika 2010-10-05 13:25:35
另一件事:你想要一个AVI或MP4文件? – stribika 2010-10-05 13:26:02
我正在使用CODEC_ID_MPEG4(使用“av_guess_format(”mp4“,NULL,NULL);”)。一般来说,mp4格式存储在avi容器中(所以最终结果总是avi文件)。 – ivymike 2010-10-05 13:36:35