[FFmpeg-soc] [soc] soc g723.1 57a9ec97a9febb4244437c1ff2bdf0150ce4e8c7

Mohamed Naufal naufal11 at gmail.com
Wed Jun 16 16:12:57 CEST 2010


On 16 June 2010 03:13, Benjamin Larsson <banan at ludd.ltu.se> wrote:
>

[...]

>> +
>> +    // cur_lsp * 0.25 + prev_lsp * 0.75
>> +    ff_acelp_weighted_vector_sum(&lpc[1], cur_lsp, prev_lsp,
>> +                                 4096, 12288, 1 << 13, 14, LPC_ORDER);
>> +    ff_acelp_weighted_vector_sum(&lpc[LPC_ORDER + 1], cur_lsp, prev_lsp,
>> +                                 8192, 8192, 1 << 13, 14, LPC_ORDER);
>> +    ff_acelp_weighted_vector_sum(&lpc[LPC_ORDER * 2 + 2], cur_lsp, prev_lsp,
>> +                                 12288, 4096, 1 << 13, 14, LPC_ORDER);
>> +    memcpy(&lpc[LPC_ORDER * 3 + 3], cur_lsp, LPC_ORDER * sizeof(int16_t));
>> +
>> +    for (i = 0; i < SUBFRAMES; i++) {
>> +        // Calculate cosine
>> +        for (j = 1; j <= LPC_ORDER; j++) {
>> +            int index      = ptr[j] >> 7;
>> +            int offset     = ptr[j] & 0x7f;
>> +            int64_t temp1  = cos_tab[index] << 16;
>> +            int temp2      = (cos_tab[index + 1] - cos_tab[index]) *
>> +                             ((offset << 8) + 0x80) << 1;
>> +            ptr[j] = av_clipl_int32(((temp1 + temp2) << 1) + (1 << 15)) >> 16;
>> +        }
>> +
>> +        ff_acelp_lsp2lpc(ptr, ptr, LPC_ORDER >> 1);
>> +        ptr += LPC_ORDER + 1;
>> +    }
>> +}
>> +
>
> Is it bit exact compared to the ref decoder ?
>


Now bit exact.

Regards
Naufal


More information about the FFmpeg-soc mailing list