Revision fca58a81

View differences:

libavcodec/vc1dec.c
162 162

  
163 163
static void vc1_loop_filter_iblk(MpegEncContext *s, int pq)
164 164
{
165
    int i, j;
166
    if(!s->first_slice_line)
165
    int j;
166
    if (!s->first_slice_line) {
167 167
        s->dsp.vc1_v_loop_filter16(s->dest[0], s->linesize, pq);
168
    s->dsp.vc1_v_loop_filter16(s->dest[0] + 8*s->linesize, s->linesize, pq);
169
    for(i = !s->mb_x*8; i < 16; i += 8)
170
        s->dsp.vc1_h_loop_filter16(s->dest[0] + i, s->linesize, pq);
171
    for(j = 0; j < 2; j++){
172
        if(!s->first_slice_line)
168
        if (s->mb_x)
169
            s->dsp.vc1_h_loop_filter16(s->dest[0] - 16*s->linesize, s->linesize, pq);
170
        s->dsp.vc1_h_loop_filter16(s->dest[0] - 16*s->linesize+8, s->linesize, pq);
171
        for(j = 0; j < 2; j++){
173 172
            s->dsp.vc1_v_loop_filter8(s->dest[j+1], s->uvlinesize, pq);
174
        if(s->mb_x)
175
            s->dsp.vc1_h_loop_filter8(s->dest[j+1], s->uvlinesize, pq);
173
            if (s->mb_x)
174
                s->dsp.vc1_h_loop_filter8(s->dest[j+1]-8*s->uvlinesize, s->uvlinesize, pq);
175
        }
176
    }
177
    s->dsp.vc1_v_loop_filter16(s->dest[0] + 8*s->linesize, s->linesize, pq);
178

  
179
    if (s->mb_y == s->mb_height-1) {
180
        if (s->mb_x) {
181
            s->dsp.vc1_h_loop_filter16(s->dest[0], s->linesize, pq);
182
            s->dsp.vc1_h_loop_filter8(s->dest[1], s->uvlinesize, pq);
183
            s->dsp.vc1_h_loop_filter8(s->dest[2], s->uvlinesize, pq);
184
        }
185
        s->dsp.vc1_h_loop_filter16(s->dest[0] + 8, s->linesize, pq);
176 186
    }
177 187
}
178 188

  

Also available in: Unified diff