Ok, thanks for your reply..
I've tried to change the value of qmin and qmax in the body of thefunction EncodeVideo, i've change the data, just as a test, accoding to this
> qmax and qmin are the 'quality-ranges' in which you define to
> encode. Oposite from what most, atleast me, would expect is that
> higher the values the lower the quality.
> -qmin 50 an qmax 51 gives the lowest quality
> -qmin 0 -qmax 1 gives the highest quality
found here
http://archives.free.net.ph/message/200 ... d6.en.html
int f; //as global variable
..
..
f=0; //this in OpenEncoder
static block_t *EncodeVideo( encoder_t *p_enc, picture_t *p_pict )
{
encoder_sys_t *p_sys = p_enc->p_sys;
AVFrame frame;
int i_out, i_plane;
if(!(i_framenum%500))
{
if(f)
{
p_enc->p_sys->i_qmin=0;
p_enc->p_sys->i_qmax=1;
f=0;
}
else
{
p_enc->p_sys->i_qmin=50;
p_enc->p_sys->i_qmax=51;
f=1;
}
}
..
..
this should change the quality of the video every 500 frames...I've compiled it and launched with command line
but at runtime the video quality remains the same... Do the values are stored in another structure which is not modificable in EncodeVideo function?
By using some dbg msg, i've seen that this function is called for each frame of the input (in my case, screen capture @25fps).. In your opinion there are any way to modify this quality parameters correctly?
Thanks a lot for your help,i'm a bit confused!