Mercurial > libavcodec.hg
comparison 4xm.c @ 1294:6896bc2f3bf5 libavcodec
10l (array[-1] ...)
author | michaelni |
---|---|
date | Sun, 01 Jun 2003 10:13:29 +0000 |
parents | a918c7d38345 |
children | 5c67ef6498ed |
comparison
equal
deleted
inserted
replaced
1293:a918c7d38345 | 1294:6896bc2f3bf5 |
---|---|
490 | 490 |
491 // for(j=0; j<16; j++) | 491 // for(j=0; j<16; j++) |
492 // printf("%2X", ptr[j]); | 492 // printf("%2X", ptr[j]); |
493 | 493 |
494 for(j=257; j<512; j++){ | 494 for(j=257; j<512; j++){ |
495 int smallest[2]= {-1,-1}; | 495 int min_freq[2]= {256*256, 256*256}; |
496 int smallest[2]= {0, 0}; | |
496 int i; | 497 int i; |
497 for(i=0; i<j; i++){ | 498 for(i=0; i<j; i++){ |
498 if(frequency[i] == 0) continue; | 499 if(frequency[i] == 0) continue; |
499 if(frequency[i] < frequency[ smallest[1] ]){ | 500 if(frequency[i] < min_freq[1]){ |
500 if(frequency[i] < frequency[ smallest[0] ]){ | 501 if(frequency[i] < min_freq[0]){ |
501 smallest[1]= smallest[0]; | 502 min_freq[1]= min_freq[0]; smallest[1]= smallest[0]; |
502 smallest[0]= i; | 503 min_freq[0]= frequency[i];smallest[0]= i; |
503 }else | 504 }else{ |
504 smallest[1]= i; | 505 min_freq[1]= frequency[i];smallest[1]= i; |
506 } | |
505 } | 507 } |
506 } | 508 } |
507 | 509 if(min_freq[1] == 256*256) break; |
508 if(smallest[1] == -1) break; | 510 |
509 | 511 frequency[j]= min_freq[0] + min_freq[1]; |
510 frequency[j]= frequency[ smallest[0] ] + frequency[ smallest[1] ]; | |
511 flag[ smallest[0] ]= 0; | 512 flag[ smallest[0] ]= 0; |
512 flag[ smallest[1] ]= 1; | 513 flag[ smallest[1] ]= 1; |
513 up[ smallest[0] ]= | 514 up[ smallest[0] ]= |
514 up[ smallest[1] ]= j; | 515 up[ smallest[1] ]= j; |
515 frequency[ smallest[0] ]= frequency[ smallest[1] ]= 0; | 516 frequency[ smallest[0] ]= frequency[ smallest[1] ]= 0; |
554 prestream= read_huffman_tables(f, prestream); | 555 prestream= read_huffman_tables(f, prestream); |
555 | 556 |
556 init_get_bits(&f->gb, buf + 4, 8*bitstream_size); | 557 init_get_bits(&f->gb, buf + 4, 8*bitstream_size); |
557 | 558 |
558 prestream_size= length + buf - prestream; | 559 prestream_size= length + buf - prestream; |
559 | 560 |
560 f->bitstream_buffer= av_fast_realloc(f->bitstream_buffer, &f->bitstream_buffer_size, prestream_size + FF_INPUT_BUFFER_PADDING_SIZE); | 561 f->bitstream_buffer= av_fast_realloc(f->bitstream_buffer, &f->bitstream_buffer_size, prestream_size + FF_INPUT_BUFFER_PADDING_SIZE); |
561 f->dsp.bswap_buf((uint32_t*)f->bitstream_buffer, (uint32_t*)prestream, prestream_size/4); | 562 f->dsp.bswap_buf((uint32_t*)f->bitstream_buffer, (uint32_t*)prestream, prestream_size/4); |
562 init_get_bits(&f->pre_gb, f->bitstream_buffer, 8*prestream_size); | 563 init_get_bits(&f->pre_gb, f->bitstream_buffer, 8*prestream_size); |
563 | 564 |
564 f->last_dc= 0*128*8*8; | 565 f->last_dc= 0*128*8*8; |