From 78bfa6322bf34e49d5e4426296c701a64f705e49 Mon Sep 17 00:00:00 2001 From: Andy Hung Date: Wed, 12 Nov 2014 13:36:58 -0800 Subject: [PATCH] Allow set loop and position before write for static AudioTracks Allow setPlaybackHeadPosition and setLoopPoints in STATE_NO_STATIC_DATA for consistency with other setters and older Android versions (JB). Bug: 18217633 Change-Id: Id8ada3056540c4dfcb89f8afa887159e48db0263 --- media/java/android/media/AudioTrack.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java index f37cbe5fcbdbe..547d87e3c0f1f 100644 --- a/media/java/android/media/AudioTrack.java +++ b/media/java/android/media/AudioTrack.java @@ -1070,7 +1070,7 @@ public class AudioTrack * {@link #ERROR_INVALID_OPERATION} */ public int setPlaybackHeadPosition(int positionInFrames) { - if (mDataLoadMode == MODE_STREAM || mState != STATE_INITIALIZED || + if (mDataLoadMode == MODE_STREAM || mState == STATE_UNINITIALIZED || getPlayState() == PLAYSTATE_PLAYING) { return ERROR_INVALID_OPERATION; } @@ -1100,7 +1100,7 @@ public class AudioTrack * {@link #ERROR_INVALID_OPERATION} */ public int setLoopPoints(int startInFrames, int endInFrames, int loopCount) { - if (mDataLoadMode == MODE_STREAM || mState != STATE_INITIALIZED || + if (mDataLoadMode == MODE_STREAM || mState == STATE_UNINITIALIZED || getPlayState() == PLAYSTATE_PLAYING) { return ERROR_INVALID_OPERATION; }