diff options
author | Eric Laurent <elaurent@google.com> | 2014-09-29 13:06:46 -0700 |
---|---|---|
committer | Eric Laurent <elaurent@google.com> | 2014-09-29 17:39:39 -0700 |
commit | e659ef420dae0caae84ab78f9df8952acb9ad3a0 (patch) | |
tree | 9b21158041ed871365f939fc37034858328ef115 /services/audioflinger/Tracks.cpp | |
parent | dc2e6ddc933e40632e79a866d9ece870db1a975e (diff) | |
download | frameworks_av-e659ef420dae0caae84ab78f9df8952acb9ad3a0.zip frameworks_av-e659ef420dae0caae84ab78f9df8952acb9ad3a0.tar.gz frameworks_av-e659ef420dae0caae84ab78f9df8952acb9ad3a0.tar.bz2 |
audioflinger: forward flush to direct output streams
Track flush should be forwarded to the audio HAL when playing
on a direct output stream.
Bug: 17704953.
Change-Id: Iafc94327fe9aebf1d4eaa97b76c6767b7ac5babe
Diffstat (limited to 'services/audioflinger/Tracks.cpp')
-rw-r--r-- | services/audioflinger/Tracks.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/audioflinger/Tracks.cpp b/services/audioflinger/Tracks.cpp index c0a75b9..75190f3 100644 --- a/services/audioflinger/Tracks.cpp +++ b/services/audioflinger/Tracks.cpp @@ -824,6 +824,10 @@ void AudioFlinger::PlaybackThread::Track::flush() // remove from active track list, reset(), and trigger presentation complete if (playbackThread->mActiveTracks.indexOf(this) < 0) { reset(); + if (thread->type() == ThreadBase::DIRECT) { + DirectOutputThread *t = (DirectOutputThread *)playbackThread; + t->flushHw_l(); + } } } // Prevent flush being lost if the track is flushed and then resumed |