~ubuntu-branches/ubuntu/trusty/libav/trusty

« back to all changes in this revision

Viewing changes to libavcodec/aaccoder.c

  • Committer: Bazaar Package Importer
  • Author(s): Reinhard Tartler, Jonathan Nieder, Reinhard Tartler
  • Date: 2011-05-13 12:31:33 UTC
  • mfrom: (1.2.2 upstream)
  • mto: (1.3.4 sid)
  • mto: This revision was merged to the branch mainline in revision 4.
  • Revision ID: james.westby@ubuntu.com-20110513123133-zqcsj91sf5489y4s
Tags: 4:0.7~beta2-1
[ Jonathan Nieder ]
* only install doc/APIChanges in *-dev and libav-doc packages
* move note on source package lineage to README.Debian
* install NEWS.Debian in libavcodec-dev
* use dpkg source format 3.0 (quilt)
* allow "debian/rules clean" as unprivileged user

[ Reinhard Tartler ]
* New upstream release

Show diffs side-by-side

added added

removed removed

Lines of Context:
30
30
 * add sane pulse detection
31
31
 ***********************************/
32
32
 
 
33
#include "libavutil/libm.h" // brought forward to work around cygwin header breakage
 
34
 
33
35
#include <float.h>
34
36
#include "avcodec.h"
35
37
#include "put_bits.h"
107
109
                                int *bits, int BT_ZERO, int BT_UNSIGNED,
108
110
                                int BT_PAIR, int BT_ESC)
109
111
{
110
 
    const float IQ = ff_aac_pow2sf_tab[200 + scale_idx - SCALE_ONE_POS + SCALE_DIV_512];
111
 
    const float  Q = ff_aac_pow2sf_tab[200 - scale_idx + SCALE_ONE_POS - SCALE_DIV_512];
 
112
    const float IQ = ff_aac_pow2sf_tab[POW_SF2_ZERO + scale_idx - SCALE_ONE_POS + SCALE_DIV_512];
 
113
    const float  Q = ff_aac_pow2sf_tab[POW_SF2_ZERO - scale_idx + SCALE_ONE_POS - SCALE_DIV_512];
112
114
    const float CLIPPED_ESCAPE = 165140.0f*IQ;
113
115
    int i, j;
114
116
    float cost = 0;
279
281
}
280
282
 
281
283
static int find_min_book(float maxval, int sf) {
282
 
    float Q = ff_aac_pow2sf_tab[200 - sf + SCALE_ONE_POS - SCALE_DIV_512];
 
284
    float Q = ff_aac_pow2sf_tab[POW_SF2_ZERO - sf + SCALE_ONE_POS - SCALE_DIV_512];
283
285
    float Q34 = sqrtf(Q * sqrtf(Q));
284
286
    int qmaxval, cb;
285
287
    qmaxval = maxval * Q34 + 0.4054f;
954
956
                    dist -= b;
955
957
                }
956
958
                dist *= 1.0f / 512.0f / lambda;
957
 
                quant_max = quant(maxq[w*16+g], ff_aac_pow2sf_tab[200 - scf + SCALE_ONE_POS - SCALE_DIV_512]);
 
959
                quant_max = quant(maxq[w*16+g], ff_aac_pow2sf_tab[POW_SF2_ZERO - scf + SCALE_ONE_POS - SCALE_DIV_512]);
958
960
                if (quant_max >= 8191) { // too much, return to the previous quantizer
959
961
                    sce->sf_idx[w*16+g] = prev_scf;
960
962
                    break;