Mercurial > libavcodec.hg
comparison h264.c @ 7389:8ef2e8f077ff libavcodec
Remove another of these obfuscated special cases for field pictures
that does not do anything.
author | michael |
---|---|
date | Fri, 25 Jul 2008 12:23:41 +0000 |
parents | d2d876733e9e |
children | 7abedf6425d8 |
comparison
equal
deleted
inserted
replaced
7388:d2d876733e9e | 7389:8ef2e8f077ff |
---|---|
3549 break; | 3549 break; |
3550 default: assert(0); | 3550 default: assert(0); |
3551 } | 3551 } |
3552 } | 3552 } |
3553 | 3553 |
3554 if (!current_ref_assigned && FIELD_PICTURE && | 3554 if (!current_ref_assigned) { |
3555 !s->first_field && s->current_picture_ptr->reference) { | |
3556 | |
3557 /* Second field of complementary field pair; the first field of | 3555 /* Second field of complementary field pair; the first field of |
3558 * which is already referenced. If short referenced, it | 3556 * which is already referenced. If short referenced, it |
3559 * should be first entry in short_ref. If not, it must exist | 3557 * should be first entry in short_ref. If not, it must exist |
3560 * in long_ref; trying to put it on the short list here is an | 3558 * in long_ref; trying to put it on the short list here is an |
3561 * error in the encoded bit stream (ref: 7.4.3, NOTE 2 and 3). | 3559 * error in the encoded bit stream (ref: 7.4.3, NOTE 2 and 3). |
3567 av_log(h->s.avctx, AV_LOG_ERROR, "illegal short term reference " | 3565 av_log(h->s.avctx, AV_LOG_ERROR, "illegal short term reference " |
3568 "assignment for second field " | 3566 "assignment for second field " |
3569 "in complementary field pair " | 3567 "in complementary field pair " |
3570 "(first field is long term)\n"); | 3568 "(first field is long term)\n"); |
3571 } else { | 3569 } else { |
3572 /* | |
3573 * First field in reference, but not in any sensible place on our | |
3574 * reference lists. This shouldn't happen unless reference | |
3575 * handling somewhere else is wrong. | |
3576 */ | |
3577 assert(0); | |
3578 } | |
3579 current_ref_assigned = 1; | |
3580 } | |
3581 | |
3582 if(!current_ref_assigned){ | |
3583 pic= remove_short(h, s->current_picture_ptr->frame_num); | 3570 pic= remove_short(h, s->current_picture_ptr->frame_num); |
3584 if(pic){ | 3571 if(pic){ |
3585 unreference_pic(h, pic, 0); | 3572 unreference_pic(h, pic, 0); |
3586 av_log(h->s.avctx, AV_LOG_ERROR, "illegal short term buffer state detected\n"); | 3573 av_log(h->s.avctx, AV_LOG_ERROR, "illegal short term buffer state detected\n"); |
3587 } | 3574 } |