尝试使用libav对视频进行编码时遇到了一些麻烦。
我从ratecontrol.c : 766
得到q>0.0
我不知道发生了什么,我知道字母q通常代表质量,0代表无损。
但在这种情况下,我无法理解可能出现的问题。
我有很多关于此的代码,并且无法在此处发布。我正在使用ffmpeg包1.0和gpl和libx264。我正在尝试使用crf值为1的libx264编码器进行编码。
我已经检查了进入的值并且它们看起来很合理,我试图将给定的图像保存为单独的.bmp文件,所有内容似乎都是有序的。
编辑:
知道了,比特率与编码器不兼容。
奇怪的是它应该做这样的事情来表明这个问题..
答案 0 :(得分:1)
有问题的文件似乎是libav ratecontrol.c
围绕那条线的线是:
763 q= modify_qscale(s, rce, q, picture_number);
764
765 rcc->pass1_wanted_bits+= s->bit_rate/fps;
766
767 assert(q>0.0);
所以看来你必须深入了解modify_qscale
。
由于这个问题非常笼统,我建议你尝试一下代码,试着去理解它。