X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fsvq1enc.c;h=feceaee6e8efb0f861354c005c32defd81c28bc7;hb=018a6645bc606b545e6efdd980d9449c33e09b00;hp=d9af5d80cc3e6bc78c5c2b68a53f363067f14285;hpb=6faf0a21e18f314c48a886864145abe715be6572;p=ffmpeg diff --git a/libavcodec/svq1enc.c b/libavcodec/svq1enc.c index d9af5d80cc3..feceaee6e8e 100644 --- a/libavcodec/svq1enc.c +++ b/libavcodec/svq1enc.c @@ -113,10 +113,6 @@ static void svq1_write_header(SVQ1Context *s, int frame_type) #define QUALITY_THRESHOLD 100 #define THRESHOLD_MULTIPLIER 0.6 -#if HAVE_ALTIVEC -#undef vector -#endif - static int encode_block(SVQ1Context *s, uint8_t *src, uint8_t *ref, uint8_t *decoded, int stride, int level, int threshold, int lambda, int intra){ int count, y, x, i, j, split, best_mean, best_score, best_count; int best_vector[6]; @@ -160,7 +156,7 @@ static int encode_block(SVQ1Context *s, uint8_t *src, uint8_t *ref, uint8_t *dec } best_count=0; - best_score -= ((block_sum[0]*block_sum[0])>>(level+3)); + best_score -= (int)(((unsigned)block_sum[0]*block_sum[0])>>(level+3)); best_mean= (block_sum[0] + (size>>1)) >> (level+3); if(level<4){ @@ -567,6 +563,10 @@ static av_cold int svq1_encode_end(AVCodecContext *avctx) av_freep(&s->motion_val8[i]); av_freep(&s->motion_val16[i]); } + if(s->current_picture.data[0]) + avctx->release_buffer(avctx, &s->current_picture); + if(s->last_picture.data[0]) + avctx->release_buffer(avctx, &s->last_picture); return 0; }