From c74d0504ccd52dc1eb7a9a03645c5dea1227b62d Mon Sep 17 00:00:00 2001 From: michael Date: Tue, 28 Oct 2003 13:17:11 +0000 Subject: [PATCH] 10l git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11306 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpcodecs/vf_spp.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/libmpcodecs/vf_spp.c b/libmpcodecs/vf_spp.c index 7a2221dd6f..f1516ef828 100644 --- a/libmpcodecs/vf_spp.c +++ b/libmpcodecs/vf_spp.c @@ -197,7 +197,7 @@ static inline void add_block(int16_t *dst, int stride, DCTELEM block[64]){ } } -static void store_slice_c(uint8_t *dst, int16_t *src, int dst_stride, int src_stride, int width, int log2_scale){ +static void store_slice_c(uint8_t *dst, int16_t *src, int dst_stride, int src_stride, int width, int height, int log2_scale){ int y, x; #define STORE(pos) \ @@ -205,7 +205,7 @@ static void store_slice_c(uint8_t *dst, int16_t *src, int dst_stride, int src_st if(temp & 0x100) temp= ~(temp>>31);\ dst[x + y*dst_stride + pos]= temp; - for(y=0; y<8; y++){ + for(y=0; ytemp + 8 + y*stride, dst_stride, stride, width, 6-p->log2_count); + store_slice(dst + (y-8)*dst_stride, p->temp + 8 + y*stride, dst_stride, stride, width, XMIN(8, height+8-y), 6-p->log2_count); } #if 0 for(y=0; ypriv->temp_stride= (width+16+15)&(~15); - vf->priv->temp= malloc(vf->priv->temp_stride*(height+16)*sizeof(int16_t)); - vf->priv->src = malloc(vf->priv->temp_stride*(height+16)*sizeof(uint8_t)); + vf->priv->temp= malloc(vf->priv->temp_stride*h*sizeof(int16_t)); + vf->priv->src = malloc(vf->priv->temp_stride*h*sizeof(uint8_t)); return vf_next_config(vf,width,height,d_width,d_height,flags,outfmt); }