|
|
@@ -4261,6 +4261,7 @@ redo_frame: |
|
|
|
int x, y; |
|
|
|
// int bits= put_bits_count(&s->c.pb); |
|
|
|
|
|
|
|
if(!(avctx->flags2 & CODEC_FLAG2_MEMC_ONLY)){ |
|
|
|
//FIXME optimize |
|
|
|
if(pict->data[plane_index]) //FIXME gray hack |
|
|
|
for(y=0; y<h; y++){ |
|
|
@@ -4330,6 +4331,20 @@ redo_frame: |
|
|
|
{START_TIMER |
|
|
|
predict_plane(s, s->spatial_dwt_buffer, plane_index, 1); |
|
|
|
STOP_TIMER("pred-conv")} |
|
|
|
}else{ |
|
|
|
//ME/MC only |
|
|
|
if(pict->pict_type == I_TYPE){ |
|
|
|
for(y=0; y<h; y++){ |
|
|
|
for(x=0; x<w; x++){ |
|
|
|
s->current_picture.data[plane_index][y*s->current_picture.linesize[plane_index] + x]= |
|
|
|
pict->data[plane_index][y*pict->linesize[plane_index] + x]; |
|
|
|
} |
|
|
|
} |
|
|
|
}else{ |
|
|
|
memset(s->spatial_dwt_buffer, 0, sizeof(DWTELEM)*w*h); |
|
|
|
predict_plane(s, s->spatial_dwt_buffer, plane_index, 1); |
|
|
|
} |
|
|
|
} |
|
|
|
if(s->avctx->flags&CODEC_FLAG_PSNR){ |
|
|
|
int64_t error= 0; |
|
|
|
|
|
|
|