Mercurial > libavcodec.hg
comparison dv.c @ 8702:47b746b11172 libavcodec
Replacing the constant with a macro
author | romansh |
---|---|
date | Sat, 31 Jan 2009 01:34:44 +0000 |
parents | 04423b2f6e0b |
children | 52cfc4fe405c |
comparison
equal
deleted
inserted
replaced
8701:bb7f9053df83 | 8702:47b746b11172 |
---|---|
980 uint8_t* data; | 980 uint8_t* data; |
981 uint8_t* ptr; | 981 uint8_t* ptr; |
982 uint8_t* dif; | 982 uint8_t* dif; |
983 int do_edge_wrap; | 983 int do_edge_wrap; |
984 DECLARE_ALIGNED_16(DCTELEM, block[64]); | 984 DECLARE_ALIGNED_16(DCTELEM, block[64]); |
985 EncBlockInfo enc_blks[5*6]; | 985 EncBlockInfo enc_blks[5*DV_MAX_BPM]; |
986 PutBitContext pbs[5*6]; | 986 PutBitContext pbs[5*DV_MAX_BPM]; |
987 PutBitContext* pb; | 987 PutBitContext* pb; |
988 EncBlockInfo* enc_blk; | 988 EncBlockInfo* enc_blk; |
989 int vs_bit_size = 0; | 989 int vs_bit_size = 0; |
990 int qnos[5]; | 990 int qnos[5]; |
991 | 991 |
1094 for (i = 0; i < 5; i++) { | 1094 for (i = 0; i < 5; i++) { |
1095 dif[i*80 + 3] = qnos[i]; | 1095 dif[i*80 + 3] = qnos[i]; |
1096 } | 1096 } |
1097 | 1097 |
1098 /* First pass over individual cells only */ | 1098 /* First pass over individual cells only */ |
1099 for (j = 0; j < 5 * 6; j++) | 1099 for (j = 0; j < 5 * s->sys->bpm; j++) |
1100 dv_encode_ac(&enc_blks[j], &pbs[j], &pbs[j+1]); | 1100 dv_encode_ac(&enc_blks[j], &pbs[j], &pbs[j+1]); |
1101 | 1101 |
1102 /* Second pass over each MB space */ | 1102 /* Second pass over each MB space */ |
1103 for (j = 0; j < 5 * 6; j += 6) { | 1103 for (j=0; j<5*s->sys->bpm; j+=s->sys->bpm) { |
1104 pb = &pbs[j]; | 1104 pb = &pbs[j]; |
1105 for (i = 0; i < 6; i++) { | 1105 for (i=0; i<s->sys->bpm; i++) { |
1106 if (enc_blks[i+j].partial_bit_count) | 1106 if (enc_blks[i+j].partial_bit_count) |
1107 pb = dv_encode_ac(&enc_blks[i+j], pb, &pbs[j+6]); | 1107 pb = dv_encode_ac(&enc_blks[i+j], pb, &pbs[j+s->sys->bpm]); |
1108 } | 1108 } |
1109 } | 1109 } |
1110 | 1110 |
1111 /* Third and final pass over the whole video segment space */ | 1111 /* Third and final pass over the whole video segment space */ |
1112 pb = &pbs[0]; | 1112 pb = &pbs[0]; |
1113 for (j = 0; j < 5 * 6; j++) { | 1113 for (j=0; j<5*s->sys->bpm; j++) { |
1114 if (enc_blks[j].partial_bit_count) | 1114 if (enc_blks[j].partial_bit_count) |
1115 pb = dv_encode_ac(&enc_blks[j], pb, &pbs[6*5]); | 1115 pb = dv_encode_ac(&enc_blks[j], pb, &pbs[s->sys->bpm*5]); |
1116 if (enc_blks[j].partial_bit_count) | 1116 if (enc_blks[j].partial_bit_count) |
1117 av_log(NULL, AV_LOG_ERROR, "ac bitstream overflow\n"); | 1117 av_log(NULL, AV_LOG_ERROR, "ac bitstream overflow\n"); |
1118 } | 1118 } |
1119 | 1119 |
1120 for (j = 0; j < 5 * 6; j++) | 1120 for (j=0; j<5*s->sys->bpm; j++) |
1121 flush_put_bits(&pbs[j]); | 1121 flush_put_bits(&pbs[j]); |
1122 | 1122 |
1123 return 0; | 1123 return 0; |
1124 } | 1124 } |
1125 | 1125 |