[FFmpeg-devel] Review request - ra288.{c,h} ra144.{c,h}
Benoit Fouet
benoit.fouet
Fri Sep 5 16:52:38 CEST 2008
Hi,
Vitor Sessak wrote:
> Vitor Sessak wrote:
>
>> Hi,
>>
>> Those four files never passed a review. I've just finished cleaning them
>> up, so if anyone wants to review them (Michael already said he will),
>> now is time.
>>
>
> I think now they can go through another review cycle.
>
>
[from ra144.c]
> static void eval_coefs(int *coefs, const int *refl)
> {
> int buffer[10];
> int *b1 = buffer;
> int *b2 = coefs;
> int i, j;
>
> for (i=0; i < 10; i++) {
> b1[i] = refl[i] << 4;
>
> for (j=0; j < i; j++)
> b1[j] = ((refl[i] * b2[i-j-1]) >> 12) + b2[j];
>
seems that will overwrite b1[i] affectation when j == 0
> static void int_to_int16(int16_t *out, const int *inp)
> {
> int i;
>
> for (i=0; i < 30; i++)
> *(out++) = *(inp++);
>
unneeded parentheses
> static int eval_refl(int *refl, const int16_t *coefs, RA144Context *ractx)
> {
> int b, i, j;
> int buffer1[10];
> int buffer2[10];
> int *bp1 = buffer1;
> int *bp2 = buffer2;
>
> for (i=0; i < 10; i++)
> buffer2[i] = coefs[i];
>
> refl[9] = bp2[9];
>
> if ((unsigned) bp2[9] + 0x1000 > 0x1fff) {
> av_log(ractx, AV_LOG_ERROR, "Overflow. Broken sample?\n");
> return 1;
> }
>
> for (i=8; i >= 0; i--) {
> b = 0x1000-((bp2[i+1] * bp2[i+1]) >> 12);
>
> if (!b)
> b = -2;
>
> for (j=0; j <= i; j++)
> bp1[j] = ((bp2[j] - ((refl[i+1] * bp2[i-j]) >> 12)) *
(0x1000000 / b)) >> 12;
>
> refl[i] = bp1[i];
>
> if ((unsigned) bp1[i] + 0x1000 > 0x1fff)
> return 1;
>
maybe the test could be done before the refl[i] = bp1[i]
--
Benoit Fouet
Purple Labs S.A.
www.purplelabs.com
More information about the ffmpeg-devel
mailing list