Mercurial > libavcodec.hg
comparison rv40.c @ 6027:d1b9b395b1db libavcodec
RV40 decoder should use availability cache
author | kostya |
---|---|
date | Sun, 16 Dec 2007 12:45:38 +0000 |
parents | a33699306850 |
children | 493dc59d469a |
comparison
equal
deleted
inserted
replaced
6026:49c086b24908 | 6027:d1b9b395b1db |
---|---|
211 r->s.mb_skip_run = svq3_get_ue_golomb(gb) + 1; | 211 r->s.mb_skip_run = svq3_get_ue_golomb(gb) + 1; |
212 | 212 |
213 if(--r->s.mb_skip_run) | 213 if(--r->s.mb_skip_run) |
214 return RV34_MB_SKIP; | 214 return RV34_MB_SKIP; |
215 | 215 |
216 if(r->avail[0]) | 216 if(r->avail_cache[5-1]) |
217 blocks[r->mb_type[mb_pos - 1]]++; | 217 blocks[r->mb_type[mb_pos - 1]]++; |
218 if(r->avail[1]){ | 218 if(r->avail_cache[5-4]){ |
219 blocks[r->mb_type[mb_pos - s->mb_stride]]++; | 219 blocks[r->mb_type[mb_pos - s->mb_stride]]++; |
220 if(r->avail[2]) | 220 if(r->avail_cache[5-2]) |
221 blocks[r->mb_type[mb_pos - s->mb_stride + 1]]++; | 221 blocks[r->mb_type[mb_pos - s->mb_stride + 1]]++; |
222 if(r->avail[3]) | 222 if(r->avail_cache[5-5]) |
223 blocks[r->mb_type[mb_pos - s->mb_stride - 1]]++; | 223 blocks[r->mb_type[mb_pos - s->mb_stride - 1]]++; |
224 } | 224 } |
225 | 225 |
226 for(i = 0; i < RV34_MB_TYPES; i++){ | 226 for(i = 0; i < RV34_MB_TYPES; i++){ |
227 if(blocks[i] > count){ | 227 if(blocks[i] > count){ |