Mercurial > libavcodec.hg
diff atrac1.c @ 11652:8b6f3d3b55cb libavcodec
Move clipping of audio samples (for those codecs outputting float) from decoder
to the audio conversion routines.
author | rbultje |
---|---|
date | Wed, 21 Apr 2010 17:57:48 +0000 |
parents | 7dd2a45249a9 |
children |
line wrap: on
line diff
--- a/atrac1.c Wed Apr 21 17:51:37 2010 +0000 +++ b/atrac1.c Wed Apr 21 17:57:48 2010 +0000 @@ -305,20 +305,15 @@ at1_subband_synthesis(q, su, q->out_samples[ch]); } - /* round, convert to 16bit and interleave */ + /* interleave; FIXME, should create/use a DSP function */ if (q->channels == 1) { /* mono */ - q->dsp.vector_clipf(samples, q->out_samples[0], -32700.0 / (1 << 15), - 32700.0 / (1 << 15), AT1_SU_SAMPLES); + memcpy(samples, q->out_samples[0], AT1_SU_SAMPLES * 4); } else { /* stereo */ for (i = 0; i < AT1_SU_SAMPLES; i++) { - samples[i * 2] = av_clipf(q->out_samples[0][i], - -32700.0 / (1 << 15), - 32700.0 / (1 << 15)); - samples[i * 2 + 1] = av_clipf(q->out_samples[1][i], - -32700.0 / (1 << 15), - 32700.0 / (1 << 15)); + samples[i * 2] = q->out_samples[0][i]; + samples[i * 2 + 1] = q->out_samples[1][i]; } }