From 83bc984a6c67fea9ea49813524c75872e68acd05 Mon Sep 17 00:00:00 2001 From: Jaewan Kim Date: Thu, 15 Mar 2018 20:31:06 +0900 Subject: [PATCH] MediaSession2: Implement fastForward() / rewind() Bug: 74724709 Test: Run CTS with MediaComponents/runcts.sh Change-Id: Ibd313dc6eed82a5d7cc9fc156f7851aba13f9e29 --- media/java/android/media/MediaPlayerBase.java | 27 +++++++++++++++++++ media/java/android/media/MediaSession2.java | 4 +-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/media/java/android/media/MediaPlayerBase.java b/media/java/android/media/MediaPlayerBase.java index f18e347e56bdc..48b7a51fc1eb0 100644 --- a/media/java/android/media/MediaPlayerBase.java +++ b/media/java/android/media/MediaPlayerBase.java @@ -129,6 +129,33 @@ public abstract class MediaPlayerBase implements AutoCloseable { */ public abstract void seekTo(long pos); + /** + * Fast forwards playback. If playback is already fast forwarding this may increase the rate. + *

+ * Default implementation sets the playback speed to the 2.0f + * @see #setPlaybackSpeed(float) + * @hide + */ + // TODO(jaewan): Unhide (b/74724709) + public void fastForward() { + setPlaybackSpeed(2.0f); + } + + /** + * Rewinds playback. If playback is already rewinding this may increase the rate. + *

+ * Default implementation sets the playback speed to the -1.0f if + * {@link #isReversePlaybackSupported()} returns {@code true}. + * @see #setPlaybackSpeed(float) + * @hide + */ + // TODO(jaewan): Unhide (b/74724709) + public void rewind() { + if (isReversePlaybackSupported()) { + setPlaybackSpeed(-1.0f); + } + } + public static final long UNKNOWN_TIME = -1; /** diff --git a/media/java/android/media/MediaSession2.java b/media/java/android/media/MediaSession2.java index 60714df09a528..66478318eb3b8 100644 --- a/media/java/android/media/MediaSession2.java +++ b/media/java/android/media/MediaSession2.java @@ -1418,14 +1418,14 @@ public class MediaSession2 implements AutoCloseable { } /** - * Start fast forwarding. If playback is already fast forwarding this may increase the rate. + * Fast forwards playback. If playback is already fast forwarding this may increase the rate. */ public void fastForward() { mProvider.fastForward_impl(); } /** - * Start rewinding. If playback is already rewinding this may increase the rate. + * Rewinds playback. If playback is already rewinding this may increase the rate. */ public void rewind() { mProvider.rewind_impl();