Mercurial > libavcodec.hg
comparison h263dec.c @ 308:072c4ff05e62 libavcodec
b frames & slices bugfix
author | michaelni |
---|---|
date | Fri, 05 Apr 2002 04:23:01 +0000 |
parents | 764aeec1320e |
children | ac677a84d5df |
comparison
equal
deleted
inserted
replaced
307:764aeec1320e | 308:072c4ff05e62 |
---|---|
218 y = s->mb_y * 16; | 218 y = s->mb_y * 16; |
219 h = s->height - y; | 219 h = s->height - y; |
220 if (h > 16) | 220 if (h > 16) |
221 h = 16; | 221 h = 16; |
222 offset = y * s->linesize; | 222 offset = y * s->linesize; |
223 src_ptr[0] = s->current_picture[0] + offset; | 223 if(s->pict_type==B_TYPE || (!s->has_b_frames)){ |
224 src_ptr[1] = s->current_picture[1] + (offset >> 2); | 224 src_ptr[0] = s->current_picture[0] + offset; |
225 src_ptr[2] = s->current_picture[2] + (offset >> 2); | 225 src_ptr[1] = s->current_picture[1] + (offset >> 2); |
226 src_ptr[2] = s->current_picture[2] + (offset >> 2); | |
227 } else { | |
228 src_ptr[0] = s->last_picture[0] + offset; | |
229 src_ptr[1] = s->last_picture[1] + (offset >> 2); | |
230 src_ptr[2] = s->last_picture[2] + (offset >> 2); | |
231 } | |
226 avctx->draw_horiz_band(avctx, src_ptr, s->linesize, | 232 avctx->draw_horiz_band(avctx, src_ptr, s->linesize, |
227 y, s->width, h); | 233 y, s->width, h); |
228 } | 234 } |
229 } | 235 } |
230 | 236 |