diff options
| -rw-r--r-- | libs/audioflinger/AudioFlinger.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libs/audioflinger/AudioFlinger.cpp b/libs/audioflinger/AudioFlinger.cpp index 3a419b579b..ef71641523 100644 --- a/libs/audioflinger/AudioFlinger.cpp +++ b/libs/audioflinger/AudioFlinger.cpp @@ -1449,6 +1449,8 @@ void AudioFlinger::MixerThread::putTracks( int j = activeTracks.indexOf(t); if (j >= 0) { mActiveTracks.add(t); + // force buffer refilling and no ramp volume when the track is mixed for the first time + t->mFillingUpStatus = Track::FS_FILLING; } } } @@ -3512,10 +3514,11 @@ status_t AudioFlinger::setStreamOutput(uint32_t stream, int output) if (tracks.size()) { dstThread->putTracks(tracks, activeTracks); } - dstThread->sendConfigEvent(AudioSystem::STREAM_CONFIG_CHANGED, stream); } } + dstThread->sendConfigEvent(AudioSystem::STREAM_CONFIG_CHANGED, stream); + return NO_ERROR; } |