I'm having a bit of trouble trying to encode a video using libav.
I get an assert error from ratecontrol.c : 766
saying that q>0.0
I have no clue what is going on, I know that the letter q usually stands for quality, where 0 is lossless.
But in this case, I just can not grasp what could be wrong.
I have a lot of code regarding this, and posting it here is not possible. I'm using the ffmpeg package 1.0 with gpl and libx264. I'm trying to encode using the libx264 encoder with a crf value of 1.
I've checked the values going in and they seem sensible, I tried to save the given images to separate .bmp files and everything seems to be in order.
Edit:
Got it, bitrate was not compatible with the encoder.
It's strange that it should do something like this to indicate this problem..
The file in question seems to be libav ratecontrol.c
The lines surrounding that one is:
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);
So it seems you'd have to dive into and understand modify_qscale
.
Since this question is very general, I suggest you try poking around the code, trying to understand it a little bit.