Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8570f1bd authored by Jae Seo's avatar Jae Seo Committed by Android Git Automerger
Browse files

am f03fb7f3: Merge "TIF: Pass the playback params as a whole" into mnc-dev

* commit 'f03fb7f3':
  TIF: Pass the playback params as a whole
parents 350a0528 f03fb7f3
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -18,6 +18,7 @@ package android.media.tv;


import android.content.ComponentName;
import android.content.ComponentName;
import android.graphics.Rect;
import android.graphics.Rect;
import android.media.PlaybackParams;
import android.media.tv.DvbDeviceInfo;
import android.media.tv.DvbDeviceInfo;
import android.media.tv.ITvInputClient;
import android.media.tv.ITvInputClient;
import android.media.tv.ITvInputHardware;
import android.media.tv.ITvInputHardware;
@@ -79,7 +80,7 @@ interface ITvInputManager {
    void timeShiftPause(in IBinder sessionToken, int userId);
    void timeShiftPause(in IBinder sessionToken, int userId);
    void timeShiftResume(in IBinder sessionToken, int userId);
    void timeShiftResume(in IBinder sessionToken, int userId);
    void timeShiftSeekTo(in IBinder sessionToken, long timeMs, int userId);
    void timeShiftSeekTo(in IBinder sessionToken, long timeMs, int userId);
    void timeShiftSetPlaybackRate(in IBinder sessionToken, float rate, int audioMode, int userId);
    void timeShiftSetPlaybackParams(in IBinder sessionToken, in PlaybackParams params, int userId);
    void timeShiftEnablePositionTracking(in IBinder sessionToken, boolean enable, int userId);
    void timeShiftEnablePositionTracking(in IBinder sessionToken, boolean enable, int userId);


    // For TV input hardware binding
    // For TV input hardware binding
+2 −1
Original line number Original line Diff line number Diff line
@@ -17,6 +17,7 @@
package android.media.tv;
package android.media.tv;


import android.graphics.Rect;
import android.graphics.Rect;
import android.media.PlaybackParams;
import android.media.tv.TvTrackInfo;
import android.media.tv.TvTrackInfo;
import android.net.Uri;
import android.net.Uri;
import android.os.Bundle;
import android.os.Bundle;
@@ -50,6 +51,6 @@ oneway interface ITvInputSession {
    void timeShiftPause();
    void timeShiftPause();
    void timeShiftResume();
    void timeShiftResume();
    void timeShiftSeekTo(long timeMs);
    void timeShiftSeekTo(long timeMs);
    void timeShiftSetPlaybackRate(float rate, int audioMode);
    void timeShiftSetPlaybackParams(in PlaybackParams params);
    void timeShiftEnablePositionTracking(boolean enable);
    void timeShiftEnablePositionTracking(boolean enable);
}
}
+5 −5
Original line number Original line Diff line number Diff line
@@ -62,7 +62,7 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
    private static final int DO_TIME_SHIFT_PAUSE = 14;
    private static final int DO_TIME_SHIFT_PAUSE = 14;
    private static final int DO_TIME_SHIFT_RESUME = 15;
    private static final int DO_TIME_SHIFT_RESUME = 15;
    private static final int DO_TIME_SHIFT_SEEK_TO = 16;
    private static final int DO_TIME_SHIFT_SEEK_TO = 16;
    private static final int DO_TIME_SHIFT_SET_PLAYBACK_RATE = 17;
    private static final int DO_TIME_SHIFT_SET_PLAYBACK_PARAMS = 17;
    private static final int DO_TIME_SHIFT_ENABLE_POSITION_TRACKING = 18;
    private static final int DO_TIME_SHIFT_ENABLE_POSITION_TRACKING = 18;


    private final HandlerCaller mCaller;
    private final HandlerCaller mCaller;
@@ -172,7 +172,7 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
                mTvInputSessionImpl.timeShiftSeekTo((Long) msg.obj);
                mTvInputSessionImpl.timeShiftSeekTo((Long) msg.obj);
                break;
                break;
            }
            }
            case DO_TIME_SHIFT_SET_PLAYBACK_RATE: {
            case DO_TIME_SHIFT_SET_PLAYBACK_PARAMS: {
                PlaybackParams params = new PlaybackParams()
                PlaybackParams params = new PlaybackParams()
                        .setSpeed((Float) msg.obj)
                        .setSpeed((Float) msg.obj)
                        .setAudioFallbackMode(msg.arg1);
                        .setAudioFallbackMode(msg.arg1);
@@ -293,9 +293,9 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
    }
    }


    @Override
    @Override
    public void timeShiftSetPlaybackRate(float rate, int audioMode) {
    public void timeShiftSetPlaybackParams(PlaybackParams params) {
        mCaller.executeOrSendMessage(mCaller.obtainMessageIO(DO_TIME_SHIFT_SET_PLAYBACK_RATE,
        mCaller.executeOrSendMessage(mCaller.obtainMessageO(DO_TIME_SHIFT_SET_PLAYBACK_PARAMS,
                audioMode, Float.valueOf(rate)));
                params));
    }
    }


    @Override
    @Override
+5 −10
Original line number Original line Diff line number Diff line
@@ -20,6 +20,7 @@ import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.Nullable;
import android.annotation.SystemApi;
import android.annotation.SystemApi;
import android.graphics.Rect;
import android.graphics.Rect;
import android.media.PlaybackParams;
import android.net.Uri;
import android.net.Uri;
import android.os.Bundle;
import android.os.Bundle;
import android.os.Handler;
import android.os.Handler;
@@ -1747,23 +1748,17 @@ public final class TvInputManager {
        }
        }


        /**
        /**
         * Sets playback rate and audio mode.
         * Sets playback rate using {@link android.media.PlaybackParams}.
         *
         *
         * @param rate The ratio between desired playback rate and normal one.
         * @param params The playback params.
         * @param audioMode Audio playback mode. Must be one of the supported audio modes:
         * <ul>
         * <li> {@link android.media.MediaPlayer#PLAYBACK_RATE_AUDIO_MODE_DEFAULT}
         * <li> {@link android.media.MediaPlayer#PLAYBACK_RATE_AUDIO_MODE_STRETCH}
         * <li> {@link android.media.MediaPlayer#PLAYBACK_RATE_AUDIO_MODE_RESAMPLE}
         * </ul>
         */
         */
        void timeShiftSetPlaybackRate(float rate, int audioMode) {
        void timeShiftSetPlaybackParams(PlaybackParams params) {
            if (mToken == null) {
            if (mToken == null) {
                Log.w(TAG, "The session has been already released");
                Log.w(TAG, "The session has been already released");
                return;
                return;
            }
            }
            try {
            try {
                mService.timeShiftSetPlaybackRate(mToken, rate, audioMode, mUserId);
                mService.timeShiftSetPlaybackParams(mToken, params, mUserId);
            } catch (RemoteException e) {
            } catch (RemoteException e) {
                throw new RuntimeException(e);
                throw new RuntimeException(e);
            }
            }
+2 −3
Original line number Original line Diff line number Diff line
@@ -28,7 +28,6 @@ import android.media.PlaybackParams;
import android.media.tv.TvInputManager.Session;
import android.media.tv.TvInputManager.Session;
import android.media.tv.TvInputManager.Session.FinishedInputEventCallback;
import android.media.tv.TvInputManager.Session.FinishedInputEventCallback;
import android.media.tv.TvInputManager.SessionCallback;
import android.media.tv.TvInputManager.SessionCallback;
import android.media.tv.TvView.TimeShiftPositionCallback;
import android.net.Uri;
import android.net.Uri;
import android.os.Bundle;
import android.os.Bundle;
import android.os.Handler;
import android.os.Handler;
@@ -470,13 +469,13 @@ public class TvView extends ViewGroup {
    }
    }


    /**
    /**
     * Sets playback rate using {@link android.media#PlaybackParams}.
     * Sets playback rate using {@link android.media.PlaybackParams}.
     *
     *
     * @param params The playback params.
     * @param params The playback params.
     */
     */
    public void timeShiftSetPlaybackParams(@NonNull PlaybackParams params) {
    public void timeShiftSetPlaybackParams(@NonNull PlaybackParams params) {
        if (mSession != null) {
        if (mSession != null) {
            mSession.timeShiftSetPlaybackRate(params.getSpeed(), params.getAudioFallbackMode());
            mSession.timeShiftSetPlaybackParams(params);
        }
        }
    }
    }


Loading