Mercurial > libavcodec.hg
comparison h264.c @ 6014:33b0514769b2 libavcodec
Fix non_zero_count_cache for deblocking in field pictures.
Based on original patch by Martin Zlomek martin.zlomek a email D cz
ffmpeg-devel thread: H264: Fix non_zero_count_cache for deblocking in fields
Fri, 30 Nov 2007 9:58:23
author | heydowns |
---|---|
date | Thu, 13 Dec 2007 00:50:47 +0000 |
parents | bc6d765d1d53 |
children | 5455f4e43948 |
comparison
equal
deleted
inserted
replaced
6013:af8951e74098 | 6014:33b0514769b2 |
---|---|
169 int topleft_xy, top_xy, topright_xy, left_xy[2]; | 169 int topleft_xy, top_xy, topright_xy, left_xy[2]; |
170 int topleft_type, top_type, topright_type, left_type[2]; | 170 int topleft_type, top_type, topright_type, left_type[2]; |
171 int left_block[8]; | 171 int left_block[8]; |
172 int i; | 172 int i; |
173 | 173 |
174 top_xy = mb_xy - (s->mb_stride << FIELD_PICTURE); | |
175 | |
174 //FIXME deblocking could skip the intra and nnz parts. | 176 //FIXME deblocking could skip the intra and nnz parts. |
175 if(for_deblock && (h->slice_num == 1 || h->slice_table[mb_xy] == h->slice_table[mb_xy-s->mb_stride]) && !FRAME_MBAFF) | 177 if(for_deblock && (h->slice_num == 1 || h->slice_table[mb_xy] == h->slice_table[top_xy]) && !FRAME_MBAFF) |
176 return; | 178 return; |
177 | 179 |
178 //wow what a mess, why didn't they simplify the interlacing&intra stuff, i can't imagine that these complex rules are worth it | 180 //wow what a mess, why didn't they simplify the interlacing&intra stuff, i can't imagine that these complex rules are worth it |
179 | 181 |
180 top_xy = mb_xy - (s->mb_stride << FIELD_PICTURE); | |
181 topleft_xy = top_xy - 1; | 182 topleft_xy = top_xy - 1; |
182 topright_xy= top_xy + 1; | 183 topright_xy= top_xy + 1; |
183 left_xy[1] = left_xy[0] = mb_xy-1; | 184 left_xy[1] = left_xy[0] = mb_xy-1; |
184 left_block[0]= 0; | 185 left_block[0]= 0; |
185 left_block[1]= 1; | 186 left_block[1]= 1; |