comparison ac3enc.c @ 5331:b24bcdd0ae86 libavcodec

move some common values to ac3.h and utilize them
author jbr
date Sun, 15 Jul 2007 01:31:09 +0000
parents bff60ecc02f9
children 389366aa3458
comparison
equal deleted inserted replaced
5330:37de2d864f03 5331:b24bcdd0ae86
451 psd[blk][ch], bndpsd[blk][ch]); 451 psd[blk][ch], bndpsd[blk][ch]);
452 ff_ac3_bit_alloc_calc_mask(&s->bit_alloc, bndpsd[blk][ch], 452 ff_ac3_bit_alloc_calc_mask(&s->bit_alloc, bndpsd[blk][ch],
453 0, s->nb_coefs[ch], 453 0, s->nb_coefs[ch],
454 ff_fgaintab[s->fgaincod[ch]], 454 ff_fgaintab[s->fgaincod[ch]],
455 ch == s->lfe_channel, 455 ch == s->lfe_channel,
456 2, 0, NULL, NULL, NULL, 456 DBA_NONE, 0, NULL, NULL, NULL,
457 mask[blk][ch]); 457 mask[blk][ch]);
458 } 458 }
459 } 459 }
460 } 460 }
461 } 461 }
532 frame_bits += frame_bits_inc[s->acmod]; 532 frame_bits += frame_bits_inc[s->acmod];
533 533
534 /* audio blocks */ 534 /* audio blocks */
535 for(i=0;i<NB_BLOCKS;i++) { 535 for(i=0;i<NB_BLOCKS;i++) {
536 frame_bits += s->nb_channels * 2 + 2; /* blksw * c, dithflag * c, dynrnge, cplstre */ 536 frame_bits += s->nb_channels * 2 + 2; /* blksw * c, dithflag * c, dynrnge, cplstre */
537 if (s->acmod == 2) { 537 if (s->acmod == AC3_ACMOD_STEREO) {
538 frame_bits++; /* rematstr */ 538 frame_bits++; /* rematstr */
539 if(i==0) frame_bits += 4; 539 if(i==0) frame_bits += 4;
540 } 540 }
541 frame_bits += 2 * s->nb_channels; /* chexpstr[2] * c */ 541 frame_bits += 2 * s->nb_channels; /* chexpstr[2] * c */
542 if (s->lfe) 542 if (s->lfe)
721 put_bits(&s->pb, 2, s->fscod); 721 put_bits(&s->pb, 2, s->fscod);
722 put_bits(&s->pb, 6, s->frmsizecod + (s->frame_size - s->frame_size_min)); 722 put_bits(&s->pb, 6, s->frmsizecod + (s->frame_size - s->frame_size_min));
723 put_bits(&s->pb, 5, s->bsid); 723 put_bits(&s->pb, 5, s->bsid);
724 put_bits(&s->pb, 3, s->bsmod); 724 put_bits(&s->pb, 3, s->bsmod);
725 put_bits(&s->pb, 3, s->acmod); 725 put_bits(&s->pb, 3, s->acmod);
726 if ((s->acmod & 0x01) && s->acmod != 0x01) 726 if ((s->acmod & 0x01) && s->acmod != AC3_ACMOD_MONO)
727 put_bits(&s->pb, 2, 1); /* XXX -4.5 dB */ 727 put_bits(&s->pb, 2, 1); /* XXX -4.5 dB */
728 if (s->acmod & 0x04) 728 if (s->acmod & 0x04)
729 put_bits(&s->pb, 2, 1); /* XXX -6 dB */ 729 put_bits(&s->pb, 2, 1); /* XXX -6 dB */
730 if (s->acmod == 0x02) 730 if (s->acmod == AC3_ACMOD_STEREO)
731 put_bits(&s->pb, 2, 0); /* surround not indicated */ 731 put_bits(&s->pb, 2, 0); /* surround not indicated */
732 put_bits(&s->pb, 1, s->lfe); /* LFE */ 732 put_bits(&s->pb, 1, s->lfe); /* LFE */
733 put_bits(&s->pb, 5, 31); /* dialog norm: -31 db */ 733 put_bits(&s->pb, 5, 31); /* dialog norm: -31 db */
734 put_bits(&s->pb, 1, 0); /* no compression control word */ 734 put_bits(&s->pb, 1, 0); /* no compression control word */
735 put_bits(&s->pb, 1, 0); /* no lang code */ 735 put_bits(&s->pb, 1, 0); /* no lang code */
808 put_bits(&s->pb, 1, 0); /* no coupling strategy */ 808 put_bits(&s->pb, 1, 0); /* no coupling strategy */
809 } else { 809 } else {
810 put_bits(&s->pb, 1, 0); /* no new coupling strategy */ 810 put_bits(&s->pb, 1, 0); /* no new coupling strategy */
811 } 811 }
812 812
813 if (s->acmod == 2) 813 if (s->acmod == AC3_ACMOD_STEREO)
814 { 814 {
815 if(block_num==0) 815 if(block_num==0)
816 { 816 {
817 /* first block must define rematrixing (rematstr) */ 817 /* first block must define rematrixing (rematstr) */
818 put_bits(&s->pb, 1, 1); 818 put_bits(&s->pb, 1, 1);