Revision 26f548bb libavcodec/wmavoice.c

View differences:

libavcodec/wmavoice.c
558 558
    int n, idx;
559 559

  
560 560
    /* Create frequency power spectrum of speech input (i.e. RDFT of LPCs) */
561
    ff_rdft_calc(&s->rdft, lpcs);
561
    s->rdft.rdft_calc(&s->rdft, lpcs);
562 562
#define log_range(var, assign) do { \
563 563
        float tmp = log10f(assign);  var = tmp; \
564 564
        max       = FFMAX(max, tmp); min = FFMIN(min, tmp); \
......
601 601
     * is a sinus input) by doing a phase shift (in theory, H(sin())=cos()).
602 602
     * Hilbert_Transform(RDFT(x)) = Laplace_Transform(x), which calculates the
603 603
     * "moment" of the LPCs in this filter. */
604
    ff_dct_calc(&s->dct, lpcs);
605
    ff_dct_calc(&s->dst, lpcs);
604
    s->dct.dct_calc(&s->dct, lpcs);
605
    s->dst.dct_calc(&s->dst, lpcs);
606 606

  
607 607
    /* Split out the coefficient indexes into phase/magnitude pairs */
608 608
    idx = 255 + av_clip(lpcs[64],               -255, 255);
......
623 623
    coeffs[1] = last_coeff;
624 624

  
625 625
    /* move into real domain */
626
    ff_rdft_calc(&s->irdft, coeffs);
626
    s->irdft.rdft_calc(&s->irdft, coeffs);
627 627

  
628 628
    /* tilt correction and normalize scale */
629 629
    memset(&coeffs[remainder], 0, sizeof(coeffs[0]) * (128 - remainder));
......
693 693
        /* apply coefficients (in frequency spectrum domain), i.e. complex
694 694
         * number multiplication */
695 695
        memset(&synth_pf[size], 0, sizeof(synth_pf[0]) * (128 - size));
696
        ff_rdft_calc(&s->rdft, synth_pf);
697
        ff_rdft_calc(&s->rdft, coeffs);
696
        s->rdft.rdft_calc(&s->rdft, synth_pf);
697
        s->rdft.rdft_calc(&s->rdft, coeffs);
698 698
        synth_pf[0] *= coeffs[0];
699 699
        synth_pf[1] *= coeffs[1];
700 700
        for (n = 1; n < 64; n++) {
......
702 702
            synth_pf[n * 2]     = v1 * coeffs[n * 2] - v2 * coeffs[n * 2 + 1];
703 703
            synth_pf[n * 2 + 1] = v2 * coeffs[n * 2] + v1 * coeffs[n * 2 + 1];
704 704
        }
705
        ff_rdft_calc(&s->irdft, synth_pf);
705
        s->irdft.rdft_calc(&s->irdft, synth_pf);
706 706
    }
707 707

  
708 708
    /* merge filter output with the history of previous runs */

Also available in: Unified diff