Mercurial > libavcodec.hg
changeset 2302:857e16e85aea libavcodec
fix constrained parameters flag
author | michael |
---|---|
date | Mon, 18 Oct 2004 23:07:18 +0000 |
parents | 79b14ad60f81 |
children | e1caca4f3261 |
files | motion_est.c mpeg12.c |
diffstat | 2 files changed, 12 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/motion_est.c Mon Oct 18 03:02:48 2004 +0000 +++ b/motion_est.c Mon Oct 18 23:07:18 2004 +0000 @@ -1882,7 +1882,7 @@ { if(s->me_method>=ME_EPZS){ int score[8]; - int i, y; + int i, y, range= s->avctx->me_range; uint8_t * fcode_tab= s->fcode_tab; int best_fcode=-1; int best_score=-10000000; @@ -1894,10 +1894,18 @@ int xy= y*s->mb_stride; for(x=0; x<s->mb_width; x++){ if(s->mb_type[xy] & type){ - int fcode= FFMAX(fcode_tab[mv_table[xy][0] + MAX_MV], - fcode_tab[mv_table[xy][1] + MAX_MV]); + int mx= mv_table[xy][0]; + int my= mv_table[xy][1]; + int fcode= FFMAX(fcode_tab[mx + MAX_MV], + fcode_tab[my + MAX_MV]); int j; + if(range){ + if(mx >= range || mx < -range || + my >= range || my < -range) + continue; + } + for(j=0; j<fcode && j<8; j++){ if(s->pict_type==B_TYPE || s->current_picture.mc_mb_var[xy] < s->current_picture.mb_var[xy]) score[j]-= 170;
--- a/mpeg12.c Mon Oct 18 03:02:48 2004 +0000 +++ b/mpeg12.c Mon Oct 18 23:07:18 2004 +0000 @@ -303,6 +303,7 @@ s->mb_width * s->mb_height <= 396 && s->mb_width * s->mb_height * framerate.num <= framerate.den*396*25 && framerate.num <= framerate.den*30 && + s->avctx->me_range && s->avctx->me_range < 128 && vbv_buffer_size <= 20 && v <= 1856000/400 && s->codec_id == CODEC_ID_MPEG1VIDEO;