Mercurial > libavcodec.hg
comparison vc1.c @ 4471:cfbd1f3d457c libavcodec
Save frame header info in context variables
author | kostya |
---|---|
date | Sun, 04 Feb 2007 10:46:28 +0000 |
parents | 2c9a66c5223a |
children | 82277cf5f051 |
comparison
equal
deleted
inserted
replaced
4470:2c9a66c5223a | 4471:cfbd1f3d457c |
---|---|
1614 return 0; | 1614 return 0; |
1615 } | 1615 } |
1616 | 1616 |
1617 static int vc1_parse_frame_header_adv(VC1Context *v, GetBitContext* gb) | 1617 static int vc1_parse_frame_header_adv(VC1Context *v, GetBitContext* gb) |
1618 { | 1618 { |
1619 int fcm; | |
1620 int pqindex, lowquant; | 1619 int pqindex, lowquant; |
1621 int status; | 1620 int status; |
1622 | 1621 |
1623 v->p_frame_skipped = 0; | 1622 v->p_frame_skipped = 0; |
1624 | 1623 |
1625 if(v->interlace) | 1624 if(v->interlace) |
1626 fcm = decode012(gb); | 1625 v->fcm = decode012(gb); |
1627 switch(get_prefix(gb, 0, 4)) { | 1626 switch(get_prefix(gb, 0, 4)) { |
1628 case 0: | 1627 case 0: |
1629 v->s.pict_type = P_TYPE; | 1628 v->s.pict_type = P_TYPE; |
1630 break; | 1629 break; |
1631 case 1: | 1630 case 1: |
1644 } | 1643 } |
1645 if(v->tfcntrflag) | 1644 if(v->tfcntrflag) |
1646 get_bits(gb, 8); | 1645 get_bits(gb, 8); |
1647 if(v->broadcast) { | 1646 if(v->broadcast) { |
1648 if(!v->interlace || v->panscanflag) { | 1647 if(!v->interlace || v->panscanflag) { |
1649 get_bits(gb, 2); | 1648 v->rptfrm = get_bits(gb, 2); |
1650 } else { | 1649 } else { |
1651 get_bits1(gb); | 1650 v->tff = get_bits1(gb); |
1652 get_bits1(gb); | 1651 v->rptfrm = get_bits1(gb); |
1653 } | 1652 } |
1654 } | 1653 } |
1655 if(v->panscanflag) { | 1654 if(v->panscanflag) { |
1656 //... | 1655 //... |
1657 } | 1656 } |