comparison cook.c @ 3090:19260d5b8c39 libavcodec

Small cosmetics and better variable names.
author banan
date Mon, 06 Feb 2006 11:03:37 +0000
parents 0b546eab515d
children 0284d5b34916
comparison
equal deleted inserted replaced
3089:072dbc669253 3090:19260d5b8c39
88 int bit_rate; 88 int bit_rate;
89 int sample_rate; 89 int sample_rate;
90 int samples_per_channel; 90 int samples_per_channel;
91 int samples_per_frame; 91 int samples_per_frame;
92 int subbands; 92 int subbands;
93 int numvector_bits; 93 int log2_numvector_size;
94 int numvector_size; //1 << numvector_bits; 94 int numvector_size; //1 << log2_numvector_size;
95 int js_subband_start; 95 int js_subband_start;
96 int total_subbands; 96 int total_subbands;
97 int num_vectors; 97 int num_vectors;
98 int bits_per_subpacket; 98 int bits_per_subpacket;
99 /* states */ 99 /* states */
696 memset(&category, 0, 128*sizeof(int)); 696 memset(&category, 0, 128*sizeof(int));
697 memset(&quant_value_table, 0, 102*sizeof(int)); 697 memset(&quant_value_table, 0, 102*sizeof(int));
698 memset(&category_index, 0, 128*sizeof(int)); 698 memset(&category_index, 0, 128*sizeof(int));
699 699
700 decode_envelope(q, quant_index_table); 700 decode_envelope(q, quant_index_table);
701 q->num_vectors = get_bits(&q->gb,q->numvector_bits); 701 q->num_vectors = get_bits(&q->gb,q->log2_numvector_size);
702 dequant_envelope(q, quant_index_table, quant_value_table); 702 dequant_envelope(q, quant_index_table, quant_value_table);
703 categorize(q, quant_index_table, category, category_index); 703 categorize(q, quant_index_table, category, category_index);
704 expand_category(q, category, category_index); 704 expand_category(q, category, category_index);
705 decode_vectors(q, category, quant_value_table, mlt_buffer); 705 decode_vectors(q, category, quant_value_table, mlt_buffer);
706 } 706 }
952 * 952 *
953 * @param q pointer to the COOKContext 953 * @param q pointer to the COOKContext
954 * @param inbuffer pointer to the inbuffer 954 * @param inbuffer pointer to the inbuffer
955 * @param sub_packet_size subpacket size 955 * @param sub_packet_size subpacket size
956 * @param outbuffer pointer to the outbuffer 956 * @param outbuffer pointer to the outbuffer
957 * @param pos the subpacket number in the frame
958 */ 957 */
959 958
960 959
961 static int decode_subpacket(COOKContext *q, uint8_t *inbuffer, 960 static int decode_subpacket(COOKContext *q, uint8_t *inbuffer,
962 int sub_packet_size, int16_t *outbuffer) { 961 int sub_packet_size, int16_t *outbuffer) {
1117 1116
1118 *data_size = decode_subpacket(q, buf, avctx->block_align, data); 1117 *data_size = decode_subpacket(q, buf, avctx->block_align, data);
1119 1118
1120 return avctx->block_align; 1119 return avctx->block_align;
1121 } 1120 }
1121
1122 #ifdef COOKDEBUG 1122 #ifdef COOKDEBUG
1123 static void dump_cook_context(COOKContext *q, COOKextradata *e) 1123 static void dump_cook_context(COOKContext *q, COOKextradata *e)
1124 { 1124 {
1125 //int i=0; 1125 //int i=0;
1126 #define PRINT(a,b) av_log(NULL,AV_LOG_ERROR," %s = %d\n", a, b); 1126 #define PRINT(a,b) av_log(NULL,AV_LOG_ERROR," %s = %d\n", a, b);
1138 PRINT("samples_per_frame",q->samples_per_frame); 1138 PRINT("samples_per_frame",q->samples_per_frame);
1139 PRINT("subbands",q->subbands); 1139 PRINT("subbands",q->subbands);
1140 PRINT("random_state",q->random_state); 1140 PRINT("random_state",q->random_state);
1141 PRINT("mlt_size",q->mlt_size); 1141 PRINT("mlt_size",q->mlt_size);
1142 PRINT("js_subband_start",q->js_subband_start); 1142 PRINT("js_subband_start",q->js_subband_start);
1143 PRINT("numvector_bits",q->numvector_bits); 1143 PRINT("log2_numvector_size",q->log2_numvector_size);
1144 PRINT("numvector_size",q->numvector_size); 1144 PRINT("numvector_size",q->numvector_size);
1145 PRINT("total_subbands",q->total_subbands); 1145 PRINT("total_subbands",q->total_subbands);
1146 } 1146 }
1147 #endif 1147 #endif
1148
1148 /** 1149 /**
1149 * Cook initialization 1150 * Cook initialization
1150 * 1151 *
1151 * @param avctx pointer to the AVCodecContext 1152 * @param avctx pointer to the AVCodecContext
1152 */ 1153 */
1189 q->subbands = e->subbands; 1190 q->subbands = e->subbands;
1190 q->bits_per_subpacket = avctx->block_align * 8; 1191 q->bits_per_subpacket = avctx->block_align * 8;
1191 1192
1192 /* Initialize default data states. */ 1193 /* Initialize default data states. */
1193 q->js_subband_start = 0; 1194 q->js_subband_start = 0;
1194 q->numvector_bits = 5; 1195 q->log2_numvector_size = 5;
1195 q->total_subbands = q->subbands; 1196 q->total_subbands = q->subbands;
1196 1197
1197 /* Initialize version-dependent variables */ 1198 /* Initialize version-dependent variables */
1198 av_log(NULL,AV_LOG_DEBUG,"e->cookversion=%x\n",e->cookversion); 1199 av_log(NULL,AV_LOG_DEBUG,"e->cookversion=%x\n",e->cookversion);
1199 switch (e->cookversion) { 1200 switch (e->cookversion) {
1222 q->js_subband_start = e->js_subband_start; 1223 q->js_subband_start = e->js_subband_start;
1223 q->joint_stereo = 1; 1224 q->joint_stereo = 1;
1224 q->js_vlc_bits = e->js_vlc_bits; 1225 q->js_vlc_bits = e->js_vlc_bits;
1225 } 1226 }
1226 if (q->samples_per_channel > 256) { 1227 if (q->samples_per_channel > 256) {
1227 q->numvector_bits++; // q->numvector_bits = 6 1228 q->log2_numvector_size = 6
1228 } 1229 }
1229 if (q->samples_per_channel > 512) { 1230 if (q->samples_per_channel > 512) {
1230 q->numvector_bits++; // q->numvector_bits = 7 1231 q->log2_numvector_size = 7
1231 } 1232 }
1232 break; 1233 break;
1233 case MC_COOK: 1234 case MC_COOK:
1234 av_log(NULL,AV_LOG_ERROR,"MC_COOK not supported!\n"); 1235 av_log(NULL,AV_LOG_ERROR,"MC_COOK not supported!\n");
1235 return -1; 1236 return -1;
1240 break; 1241 break;
1241 } 1242 }
1242 1243
1243 /* Initialize variable relations */ 1244 /* Initialize variable relations */
1244 q->mlt_size = q->samples_per_channel; 1245 q->mlt_size = q->samples_per_channel;
1245 q->numvector_size = (1 << q->numvector_bits); 1246 q->numvector_size = (1 << q->log2_numvector_size);
1246 1247
1247 /* Generate tables */ 1248 /* Generate tables */
1248 init_rootpow2table(q); 1249 init_rootpow2table(q);
1249 init_pow2table(q); 1250 init_pow2table(q);
1250 init_gain_table(q); 1251 init_gain_table(q);