Loading services/audioflinger/AudioMixer.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -265,8 +265,8 @@ int AudioMixer::getTrackName(audio_channel_mask_t channelMask, // assume default parameters for the track, except where noted below track_t* t = &mState.tracks[n]; t->needs = 0; t->volume[0] = UNITY_GAIN; t->volume[1] = UNITY_GAIN; t->volume[0] = UNITY_GAIN_INT; t->volume[1] = UNITY_GAIN_INT; // no initialization needed // t->prevVolume[0] // t->prevVolume[1] Loading Loading @@ -930,7 +930,7 @@ void AudioMixer::track__genericResample(track_t* t, int32_t* out, size_t outFram // always resample with unity gain when sending to auxiliary buffer to be able // to apply send level after resampling // TODO: modify each resampler to support aux channel? t->resampler->setVolume(UNITY_GAIN, UNITY_GAIN); t->resampler->setVolume(UNITY_GAIN_INT, UNITY_GAIN_INT); memset(temp, 0, outFrameCount * MAX_NUM_CHANNELS * sizeof(int32_t)); t->resampler->resample(temp, outFrameCount, t->bufferProvider); if (CC_UNLIKELY(t->volumeInc[0]|t->volumeInc[1]|t->auxInc)) { Loading @@ -940,7 +940,7 @@ void AudioMixer::track__genericResample(track_t* t, int32_t* out, size_t outFram } } else { if (CC_UNLIKELY(t->volumeInc[0]|t->volumeInc[1])) { t->resampler->setVolume(UNITY_GAIN, UNITY_GAIN); t->resampler->setVolume(UNITY_GAIN_INT, UNITY_GAIN_INT); memset(temp, 0, outFrameCount * MAX_NUM_CHANNELS * sizeof(int32_t)); t->resampler->resample(temp, outFrameCount, t->bufferProvider); volumeRampStereo(t, out, outFrameCount, temp, aux); Loading Loading @@ -1500,7 +1500,7 @@ void AudioMixer::process__OneTrack16BitsStereoNoResampling(state_t* state, } while (--outFrames); break; case AUDIO_FORMAT_PCM_16_BIT: if (CC_UNLIKELY(uint32_t(vl) > UNITY_GAIN || uint32_t(vr) > UNITY_GAIN)) { if (CC_UNLIKELY(uint32_t(vl) > UNITY_GAIN_INT || uint32_t(vr) > UNITY_GAIN_INT)) { // volume is boosted, so we might need to clamp even though // we process only one track. do { Loading services/audioflinger/AudioMixer.h +2 −2 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ #include <media/nbaio/NBLog.h> // FIXME This is actually unity gain, which might not be max in future, expressed in U.12 #define MAX_GAIN_INT AudioMixer::UNITY_GAIN #define MAX_GAIN_INT AudioMixer::UNITY_GAIN_INT namespace android { Loading @@ -58,7 +58,7 @@ public: // maximum number of channels supported for the content static const uint32_t MAX_NUM_CHANNELS_TO_DOWNMIX = 8; static const uint16_t UNITY_GAIN = 0x1000; static const uint16_t UNITY_GAIN_INT = 0x1000; enum { // names Loading services/audioflinger/Tracks.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -1873,7 +1873,7 @@ AudioFlinger::RecordThread::RecordTrack::RecordTrack( mResampler = AudioResampler::create(16, thread->mChannelCount, sampleRate); // source SR mResampler->setSampleRate(thread->mSampleRate); mResampler->setVolume(AudioMixer::UNITY_GAIN, AudioMixer::UNITY_GAIN); mResampler->setVolume(AudioMixer::UNITY_GAIN_INT, AudioMixer::UNITY_GAIN_INT); mResamplerBufferProvider = new ResamplerBufferProvider(this); } Loading Loading
services/audioflinger/AudioMixer.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -265,8 +265,8 @@ int AudioMixer::getTrackName(audio_channel_mask_t channelMask, // assume default parameters for the track, except where noted below track_t* t = &mState.tracks[n]; t->needs = 0; t->volume[0] = UNITY_GAIN; t->volume[1] = UNITY_GAIN; t->volume[0] = UNITY_GAIN_INT; t->volume[1] = UNITY_GAIN_INT; // no initialization needed // t->prevVolume[0] // t->prevVolume[1] Loading Loading @@ -930,7 +930,7 @@ void AudioMixer::track__genericResample(track_t* t, int32_t* out, size_t outFram // always resample with unity gain when sending to auxiliary buffer to be able // to apply send level after resampling // TODO: modify each resampler to support aux channel? t->resampler->setVolume(UNITY_GAIN, UNITY_GAIN); t->resampler->setVolume(UNITY_GAIN_INT, UNITY_GAIN_INT); memset(temp, 0, outFrameCount * MAX_NUM_CHANNELS * sizeof(int32_t)); t->resampler->resample(temp, outFrameCount, t->bufferProvider); if (CC_UNLIKELY(t->volumeInc[0]|t->volumeInc[1]|t->auxInc)) { Loading @@ -940,7 +940,7 @@ void AudioMixer::track__genericResample(track_t* t, int32_t* out, size_t outFram } } else { if (CC_UNLIKELY(t->volumeInc[0]|t->volumeInc[1])) { t->resampler->setVolume(UNITY_GAIN, UNITY_GAIN); t->resampler->setVolume(UNITY_GAIN_INT, UNITY_GAIN_INT); memset(temp, 0, outFrameCount * MAX_NUM_CHANNELS * sizeof(int32_t)); t->resampler->resample(temp, outFrameCount, t->bufferProvider); volumeRampStereo(t, out, outFrameCount, temp, aux); Loading Loading @@ -1500,7 +1500,7 @@ void AudioMixer::process__OneTrack16BitsStereoNoResampling(state_t* state, } while (--outFrames); break; case AUDIO_FORMAT_PCM_16_BIT: if (CC_UNLIKELY(uint32_t(vl) > UNITY_GAIN || uint32_t(vr) > UNITY_GAIN)) { if (CC_UNLIKELY(uint32_t(vl) > UNITY_GAIN_INT || uint32_t(vr) > UNITY_GAIN_INT)) { // volume is boosted, so we might need to clamp even though // we process only one track. do { Loading
services/audioflinger/AudioMixer.h +2 −2 Original line number Diff line number Diff line Loading @@ -31,7 +31,7 @@ #include <media/nbaio/NBLog.h> // FIXME This is actually unity gain, which might not be max in future, expressed in U.12 #define MAX_GAIN_INT AudioMixer::UNITY_GAIN #define MAX_GAIN_INT AudioMixer::UNITY_GAIN_INT namespace android { Loading @@ -58,7 +58,7 @@ public: // maximum number of channels supported for the content static const uint32_t MAX_NUM_CHANNELS_TO_DOWNMIX = 8; static const uint16_t UNITY_GAIN = 0x1000; static const uint16_t UNITY_GAIN_INT = 0x1000; enum { // names Loading
services/audioflinger/Tracks.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -1873,7 +1873,7 @@ AudioFlinger::RecordThread::RecordTrack::RecordTrack( mResampler = AudioResampler::create(16, thread->mChannelCount, sampleRate); // source SR mResampler->setSampleRate(thread->mSampleRate); mResampler->setVolume(AudioMixer::UNITY_GAIN, AudioMixer::UNITY_GAIN); mResampler->setVolume(AudioMixer::UNITY_GAIN_INT, AudioMixer::UNITY_GAIN_INT); mResamplerBufferProvider = new ResamplerBufferProvider(this); } Loading