接口 Player

  • 所有已知子接口:
    TsPlayer
    所有已知实现类:
    BasePlayer

    public interface Player
    播放器功能接口定义,定义内外部需统一实现的功能接口
    作者:
    💎 Li Junchao
    • 字段详细资料

      • STATE_IDLE

        static final int STATE_IDLE
        未做任何播放
        另请参阅:
        常量字段值
      • STATE_PREPARED

        static final int STATE_PREPARED
        player prepared
        另请参阅:
        常量字段值
      • STATE_BUFFERING

        static final int STATE_BUFFERING
        缓冲状态
        另请参阅:
        常量字段值
      • STATE_READY

        static final int STATE_READY
        ready所示可以play的状态
        另请参阅:
        常量字段值
      • STATE_PLAYING

        static final int STATE_PLAYING
        正在播放
        另请参阅:
        常量字段值
      • STATE_SEEKING

        static final int STATE_SEEKING
        正在seek
        另请参阅:
        常量字段值
      • STATE_PAUSE

        static final int STATE_PAUSE
        暂停状态
        另请参阅:
        常量字段值
      • STATE_ENDED

        static final int STATE_ENDED
        播放结束的状态
        另请参阅:
        常量字段值
      • REPEAT_MODE_OFF

        static final int REPEAT_MODE_OFF
        无重复
        另请参阅:
        常量字段值
      • REPEAT_MODE_ONE

        static final int REPEAT_MODE_ONE
        循环播放
        另请参阅:
        常量字段值
      • CLOSEST_SYNC

        static final int CLOSEST_SYNC
        seek点最近关键帧
        另请参阅:
        常量字段值
      • PREVIOUS_SYNC

        static final int PREVIOUS_SYNC
        seek点前一个关键帧
        另请参阅:
        常量字段值
      • NEXT_SYNC

        static final int NEXT_SYNC
        seek点后一个关键帧
        另请参阅:
        常量字段值
    • 方法详细资料

      • prepare

        void prepare()
        播放器 ⏳ 准备播放,这是一个 async 操作
      • setPlayWhenReady

        void setPlayWhenReady​(boolean playWhenReady)
        设置当播放状态为 在 prepared 之后,是否开始播放 ⏯
        1. 初始化播放器时
        如果参数为 true ,则播放器可播放时会自动播放, 无需调用 play()
        2. 播放过程中
        参数为 true: 等同于 play();
        参数为 false: 等同于 pause()
        参数:
        playWhenReady - true or false
      • isPlaying

        boolean isPlaying()
        是否正在播放
        返回:
        boolean - 播放器是否正在播放
      • pause

        void pause()
        暂停播放 ⏸
      • stop

        void stop()
        停止 ⏹ ,建议使用 pause()
      • getCurrentPosition

        long getCurrentPosition()
        返回当前的播放位置
        返回:
        long - 当前在播放timeline上的位置, ms
      • getBufferedPosition

        long getBufferedPosition()
        放回当前缓冲位置
        返回:
        long - 当前缓冲到的位置
      • getDuration

        long getDuration()
        获取媒体stream总时长,microseconds 微秒为单位
        返回:
        long - 播放列表总时长,microseconds - μs
      • setRepeatMode

        void setRepeatMode​(@RepeatMode
                           @com.ts.lib.player.Player.RepeatMode int repeatMode)
        设置循环播放
        参数:
        repeatMode - Player.RepeatMode
      • getRepeatMode

        @RepeatMode
        @com.ts.lib.player.Player.RepeatMode int getRepeatMode()
        返回播放的 Player.RepeatMode
        返回:
        当前循环mode
      • setSeekType

        void setSeekType​(@SeekType
                         int type)
        设置seek类型,default 精准seek ,相当于参数: EXACT
        参数:
        type - Player.SeekType
      • seekTo

        void seekTo​(@IntRange(from=0L)
                    long positionMs)
        seek到当前播放媒体文件指定毫秒时间的位置
        参数:
        positionMs -
      • setVolume

        void setVolume​(@FloatRange(from=0.0,to=1.0)
                       float vol)
        设置播放音量 🔊
        参数:
        vol - 音量
      • setSpeed

        void setSpeed​(@FloatRange(from=0.20000000298023224,to=2.0)
                      float speed)
        倍速播放 ⏩
        参数:
        speed - 变速倍数
      • getSpeed

        float getSpeed()
        返回 setSpeed(float) 设置的变速倍数 ⏩
        返回:
        float
      • release

        void release()
        销毁播放器,释放所有资源,此方法调用后,player将不能再使用