From 7a121563d5c94ca0b88539afd8a7e86cc9118b60 Mon Sep 17 00:00:00 2001 From: Glenn Kasten Date: Wed, 28 Jan 2015 16:45:15 -0800 Subject: Clarify that flush does not necessarily free up buffer space Change-Id: I6f77efb6a8da5e11c0cc68f0bb3ce47a0c1cb3da --- media/java/android/media/AudioTrack.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'media') diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java index 1af0372..caccb6e 100644 --- a/media/java/android/media/AudioTrack.java +++ b/media/java/android/media/AudioTrack.java @@ -1237,8 +1237,14 @@ public class AudioTrack /** * Flushes the audio data currently queued for playback. Any data that has - * not been played back will be discarded. No-op if not stopped or paused, + * been written but not yet presented will be discarded. No-op if not stopped or paused, * or if the track's creation mode is not {@link #MODE_STREAM}. + *
Note that although data written but not yet presented is discarded, there is no + * guarantee that all of the buffer space formerly used by that data + * is available for a subsequent write. + * For example, a call to {@link #write(byte[], int, int)} with sizeInBytes + * less than or equal to the total buffer size + * may return a short actual transfer count. */ public void flush() { if (mState == STATE_INITIALIZED) { -- cgit v1.1