com.aliyun.player

## Interface AliLiveShiftPlayer

- All Superinterfaces:
    IPlayer

      public interface AliLiveShiftPlayer
      extends IPlayer

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `AliLiveShiftPlayer.OnSeekLiveCompletionListener` Timeshifting success callback.
    `static interface` | `AliLiveShiftPlayer.OnTimeShiftUpdaterListener` Timeshifting update callback.

    - ### Nested classes/interfaces inherited from interface com.aliyun.player.IPlayer

      `IPlayer.ConvertURLCallback, IPlayer.IPResolveType, IPlayer.MirrorMode, IPlayer.OnChooseTrackIndexListener, IPlayer.OnCompletionListener, IPlayer.OnErrorListener, IPlayer.OnInfoListener, IPlayer.OnLoadingStatusListener, IPlayer.OnPreparedListener, IPlayer.OnPreRenderFrameCallback, IPlayer.OnRenderFrameCallback, IPlayer.OnRenderingStartListener, IPlayer.OnReportEventListener, IPlayer.OnSeekCompleteListener, IPlayer.OnSeiDataListener, IPlayer.OnSnapShotListener, IPlayer.OnStateChangedListener, IPlayer.OnSubtitleDisplayListener, IPlayer.OnThumbnailListener, IPlayer.OnTrackChangedListener, IPlayer.OnTrackReadyListener, IPlayer.OnVideoRenderedListener, IPlayer.OnVideoSizeChangedListener, IPlayer.Option, IPlayer.OutputAudioChannel, IPlayer.PropertyKey, IPlayer.RenderFrameCallbackConfig, IPlayer.RotateMode, IPlayer.ScaleMode, IPlayer.SeekMode`

  - ### Field Summary

    - ### Fields inherited from interface com.aliyun.player.IPlayer

      `completion, error, idle, initalized, paused, prepared, started, stopped, unknow`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `getCurrentLiveTime()` Query the current broadcasting time.
    `long` | `getCurrentTime()` Query the time that the player currently seeks to.
    `void` | `seekToLiveTime(long liveTime)` Seek to a specified time.
    `void` | `setDataSource(LiveShift liveShift)` Specify a timeshift playback source.
    `void` | `setOnSeekLiveCompletionListener(AliLiveShiftPlayer.OnSeekLiveCompletionListener l)` Set a timeshifting success callback.
    `void` | `setOnTimeShiftUpdaterListener(AliLiveShiftPlayer.OnTimeShiftUpdaterListener l)` Set a timeshifting update callback.

    - ### Methods inherited from interface com.aliyun.player.IPlayer

      `addExtSubtitle, clearScreen, currentTrack, currentTrack, enableHardwareDecoder, getCacheFilePath, getCacheFilePath, getConfig, getDuration, getMediaInfo, getMirrorMode, getNativeContextAddr, getOption, getPlayerName, getPropertyString, getRotateMode, getScaleMode, getSpeed, getUserData, getVideoHeight, getVideoRotation, getVideoWidth, getVolume, isAutoPlay, isLoop, isMute, pause, prepare, redraw, release, reload, reset, seekTo, seekTo, selectExtSubtitle, selectTrack, selectTrack, sendCustomEvent, setAutoPlay, setCacheConfig, setConfig, setDefaultBandWidth, setDisplay, setDisplayView, setDrmCallback, setFastStart, setFilterConfig, setFilterInvalid, setIPResolveType, setLoop, setMaxAccurateSeekDelta, setMirrorMode, setMute, setOnChooseTrackIndexListener, setOnCompletionListener, setOnErrorListener, setOnInfoListener, setOnLoadingStatusListener, setOnPreparedListener, setOnPreRenderFrameCallback, setOnRenderFrameCallback, setOnRenderingStartListener, setOnReportEventListener, setOnSeekCompleteListener, setOnSeiDataListener, setOnSnapShotListener, setOnStateChangedListener, setOnSubtitleDisplayListener, setOnTrackChangedListener, setOnTrackReadyListener, setOnVideoRenderedListener, setOnVideoSizeChangedListener, setOutputAudioChannel, setPreferPlayerName, setRenderFrameCallbackConfig, setRotateMode, setScaleMode, setSpeed, setStreamDelayTime, setSurface, setTraceId, setUserData, setVideoBackgroundColor, setVideoTag, setVolume, snapshot, start, stop, surfaceChanged, updateFilterConfig`

- - ### Method Detail

    - #### setDataSource

          void setDataSource(LiveShift liveShift)

      Specify a timeshift playback source.
      Parameters:
        `liveShift` - The specified timeshift playback source: a local address or a URL. See `LiveShift`.

    - #### getCurrentLiveTime

          long getCurrentLiveTime()

      Query the current broadcasting time.
      Returns:
        The current broadcasting time.

    - #### getCurrentTime

          long getCurrentTime()

      Query the time that the player currently seeks to.
      Returns:
        The time that the player currently seeks to.

    - #### seekToLiveTime

          void seekToLiveTime(long liveTime)

      Seek to a specified time.
      Parameters:
        `liveTime` - The specified time that the player will seek to. Unit: milliseconds.

    - #### setOnTimeShiftUpdaterListener

          void setOnTimeShiftUpdaterListener(AliLiveShiftPlayer.OnTimeShiftUpdaterListener l)

      Set a timeshifting update callback.
      Parameters:
        `l` - The timeshifting update callback.

    - #### setOnSeekLiveCompletionListener

          void setOnSeekLiveCompletionListener(AliLiveShiftPlayer.OnSeekLiveCompletionListener l)

      Set a timeshifting success callback.
      Parameters:
        `l` - The timeshifting success callback.