diff options
author | Ronald S. Bultje <rsbultje@gmail.com> | 2012-03-07 10:52:09 -0800 |
---|---|---|
committer | Ronald S. Bultje <rsbultje@gmail.com> | 2012-03-07 12:16:36 -0800 |
commit | 6e2821160b151f402f82b16171a1cdc27b4a9b83 (patch) | |
tree | a0e1265fc16c2e38e33232ba573ae1ee60101e52 | |
parent | a887c87c233a55db24f3990894b650c790000884 (diff) | |
download | ffmpeg-6e2821160b151f402f82b16171a1cdc27b4a9b83.tar.gz |
Revert "AAC SBR: group some writes."
This reverts commit ba36f14e5d34bcca6ecf77ba1c7512d1b51a9740. It
broke decoding on x86-32 on some systems.
-rw-r--r-- | libavcodec/aacsbr.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/libavcodec/aacsbr.c b/libavcodec/aacsbr.c index 3e02346855..f5ac30f17e 100644 --- a/libavcodec/aacsbr.c +++ b/libavcodec/aacsbr.c @@ -1229,7 +1229,8 @@ static void sbr_hf_inverse_filter(SBRDSPContext *dsp, (phi[1][1][0] * phi[1][1][0] + phi[1][1][1] * phi[1][1][1]) / 1.000001f; if (!dk) { - AV_ZERO64(alpha1[k]); + alpha1[k][0] = 0; + alpha1[k][1] = 0; } else { float temp_real, temp_im; temp_real = phi[0][0][0] * phi[1][1][0] - @@ -1244,7 +1245,8 @@ static void sbr_hf_inverse_filter(SBRDSPContext *dsp, } if (!phi[1][0][0]) { - AV_ZERO64(alpha0[k]); + alpha0[k][0] = 0; + alpha0[k][1] = 0; } else { float temp_real, temp_im; temp_real = phi[0][0][0] + alpha1[k][0] * phi[1][1][0] + @@ -1258,8 +1260,10 @@ static void sbr_hf_inverse_filter(SBRDSPContext *dsp, if (alpha1[k][0] * alpha1[k][0] + alpha1[k][1] * alpha1[k][1] >= 16.0f || alpha0[k][0] * alpha0[k][0] + alpha0[k][1] * alpha0[k][1] >= 16.0f) { - AV_ZERO64(alpha0[k]); - AV_ZERO64(alpha1[k]); + alpha1[k][0] = 0; + alpha1[k][1] = 0; + alpha0[k][0] = 0; + alpha0[k][1] = 0; } } } @@ -1295,12 +1299,14 @@ static int sbr_lf_gen(AACContext *ac, SpectralBandReplication *sbr, memset(X_low, 0, 32*sizeof(*X_low)); for (k = 0; k < sbr->kx[1]; k++) { for (i = t_HFGen; i < i_f + t_HFGen; i++) { - AV_COPY64(X_low[k][i], W[1][i - t_HFGen][k]); + X_low[k][i][0] = W[1][i - t_HFGen][k][0]; + X_low[k][i][1] = W[1][i - t_HFGen][k][1]; } } for (k = 0; k < sbr->kx[0]; k++) { for (i = 0; i < t_HFGen; i++) { - AV_COPY64(X_low[k][i], W[0][i + i_f - t_HFGen][k]); + X_low[k][i][0] = W[0][i + i_f - t_HFGen][k][0]; + X_low[k][i][1] = W[0][i + i_f - t_HFGen][k][1]; } } return 0; |