AudioMixer new cmd: remove sample rate converter
Add a new command REMOVE to remove any sample rate converter
on a track, without having to delete the track name.
Add comments.
Remove some dead code.
Fix whitespace and comparison to NULL.
Change-Id: Id55a23ab5ee673189e99675b4e6fa5df7b617987
diff --git a/services/audioflinger/AudioMixer.cpp b/services/audioflinger/AudioMixer.cpp
index 05fa3b9..100f289 100644
--- a/services/audioflinger/AudioMixer.cpp
+++ b/services/audioflinger/AudioMixer.cpp
@@ -327,15 +327,9 @@
track.enabled = false;
invalidateState(1<<name);
}
- if (track.resampler != NULL) {
- // delete the resampler
- delete track.resampler;
- track.resampler = NULL;
- track.sampleRate = mSampleRate;
- invalidateState(1<<name);
- }
- track.volumeInc[0] = 0;
- track.volumeInc[1] = 0;
+ // delete the resampler
+ delete track.resampler;
+ track.resampler = NULL;
mTrackNames &= ~(1<<name);
}
@@ -439,6 +433,12 @@
track.resetResampler();
invalidateState(1 << name);
break;
+ case REMOVE:
+ delete track.resampler;
+ track.resampler = NULL;
+ track.sampleRate = mSampleRate;
+ invalidateState(1 << name);
+ break;
default:
LOG_FATAL("bad param");
}
@@ -499,7 +499,7 @@
bool AudioMixer::track_t::setResampler(uint32_t value, uint32_t devSampleRate)
{
- if (value!=devSampleRate || resampler) {
+ if (value != devSampleRate || resampler != NULL) {
if (sampleRate != value) {
sampleRate = value;
if (resampler == NULL) {