diff options
author | Ethan Chen <intervigil@gmail.com> | 2016-03-24 17:16:03 -0700 |
---|---|---|
committer | Ethan Chen <intervigil@gmail.com> | 2016-03-24 17:16:03 -0700 |
commit | c2c2cbf23e2fc6f001a942069cb5e67b7772c08b (patch) | |
tree | 58409387399149c06fc4a86e53c8daa301889fda | |
parent | 4711f659161edd9018c31237ec391ec7c0109388 (diff) | |
download | android_packages_apps_FMRadio-c2c2cbf23e2fc6f001a942069cb5e67b7772c08b.tar.gz android_packages_apps_FMRadio-c2c2cbf23e2fc6f001a942069cb5e67b7772c08b.tar.bz2 android_packages_apps_FMRadio-c2c2cbf23e2fc6f001a942069cb5e67b7772c08b.zip |
FMRadio: Pause and stop AudioTrack before stopping
* According to documentation, stop will continue to play the last
buffer, while pause immediately halts playback.
* Pause to reduce latency to stop, then flush the AudioTrack buffer
before actually stopping in the render thread.
Change-Id: I0b497cd6b95b0921f63796746c7279a4f931dbd3
-rw-r--r-- | src/com/android/fmradio/FmService.java | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/com/android/fmradio/FmService.java b/src/com/android/fmradio/FmService.java index 32ffcf4..7e89237 100644 --- a/src/com/android/fmradio/FmService.java +++ b/src/com/android/fmradio/FmService.java @@ -503,6 +503,8 @@ public class FmService extends Service implements FmRecorder.OnRecorderStateChan mCurrentFrame = 0; if (mAudioTrack.getPlayState() == AudioTrack.PLAYSTATE_PLAYING) { + mAudioTrack.pause(); + mAudioTrack.flush(); mAudioTrack.stop(); } |