Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface RecordPlayerInstance

Hierarchy

  • RecordPlayerInstance

Index

Methods

bindControlContainer

  • bindControlContainer(container: HTMLDivElement): void
  • 绑定播放控制条容器。如果用户想要自己渲染播放控制条,则不需要调用此函数

    example
    player.bindControlContainer(document.getElementById('toolbar'))
    

    Parameters

    • container: HTMLDivElement

      播放控制器的容器。容器应该为长方形容器,比如(800 * 32)。

    Returns void

destroy

  • destroy(): void
  • 停止播放并销毁

    Returns void

on

  • on(eventName: "visibleChange", callback: (type: "show" | "hide", option: { container: HTMLDivElement; fileSuffix: string }) => void): void
  • on(eventName: "play", callback: () => void): void
  • on(eventName: "pause", callback: () => void): void
  • on(eventName: "finished", callback: () => void): void
  • on(eventName: "tick", callback: (timestamp: number) => void): void
  • on(eventName: "durationChange", callback: (duration: number) => void): void
  • 录像的track的可见性变化。

    如果除了白板,还传入了1至多个视频文件,则录像的整体时间跨度和单个录像文件的时间跨度不同。用户可以使用该回调函数设置视频的可见性。 当视频可见时,显示视频容器。不可见时,则隐藏视频容器。

    option.fileSuffix为录像文件的后缀。视频一般为mp4, 白板的录像文件后缀为gz

    example
    player.on('visibleChange', (type, option) => {
     if (option.type === 'mp4' && type === 'show') {
         option.container.style.display = 'block'
     } else if (option.type === 'mp4' && type === 'hide') {
         option.container.style.display = 'none'
     }
    })
    

    Parameters

    • eventName: "visibleChange"
    • callback: (type: "show" | "hide", option: { container: HTMLDivElement; fileSuffix: string }) => void
        • (type: "show" | "hide", option: { container: HTMLDivElement; fileSuffix: string }): void
        • Parameters

          • type: "show" | "hide"
          • option: { container: HTMLDivElement; fileSuffix: string }
            • container: HTMLDivElement
            • fileSuffix: string

          Returns void

    Returns void

  • 调用play函数,或者用户点击播放UI组件的播放按钮时(内部会调用play函数)触发。

    Parameters

    • eventName: "play"
    • callback: () => void
        • (): void
        • Returns void

    Returns void

  • 调用pause函数,或者用户点击播放UI组件的暂停按钮时(内部会调用pause函数)触发。

    Parameters

    • eventName: "pause"
    • callback: () => void
        • (): void
        • Returns void

    Returns void

  • 播放完成时触发

    Parameters

    • eventName: "finished"
    • callback: () => void
        • (): void
        • Returns void

    Returns void

  • 播放进度变化时触发此函数。用户可以根据该事件将sdk内部录像播放,与sdk外部录像对齐

    回调函数中的时间为毫秒级真实时间戳。

    比如如果录像文件URL解析的时间戳为: 1630399731390。播放进度为2分钟,则回调函数中的时间戳为: 1630399851390

    Parameters

    • eventName: "tick"
    • callback: (timestamp: number) => void
        • (timestamp: number): void
        • Parameters

          • timestamp: number

          Returns void

    Returns void

  • setTimeRange后触发。用户如果自定义了播放器控制UI,则可以使用该回调函数调整播放器的时间跨度。参数为毫秒级的时间跨度

    Parameters

    • eventName: "durationChange"
    • callback: (duration: number) => void
        • (duration: number): void
        • Parameters

          • duration: number

          Returns void

    Returns void

pause

  • pause(): void
  • 暂停播放

    Returns void

play

  • play(): void
  • 播放录像

    Returns void

seekTo

  • seekTo(time: number): void
  • 跳转至指定的时间戳。单位为毫秒时间戳

    example

    跳转到播放进度第1s

    seekTo(1000)
    

    Parameters

    • time: number

      以播放起始时间为参考的相对偏移时间。

    Returns void

setPlaySpeed

  • setPlaySpeed(speed: number): void
  • 设置回放播放速度。speed为大于0.1,小于100的数值

    example
    player.setPlaySpeed(2)
    

    Parameters

    • speed: number

    Returns void

setTimeRange

  • setTimeRange(startTime: undefined | number, endTime: undefined | number): void
  • 用户可以设置录像回放的时间范围。设置开始时间后,每次seekTo时,会以用户设置的时间戳为基准。 设置完成后,player会抛出tick和durationChange事件,开发者可以监听这些事件来调整播放控制UI组件。如果使用录像回放模块提供的播放控制UI组件,则开发者无须调整。

    常见的使用场景为:在一次教学中,有白板和音视频录像文件。两者的起始时间不同。为了方便业务逻辑控制,可以使用下面的函数将白板的录像回放起始时间对齐音视频起始时间。

    注意单位都是毫秒时间戳

    example
    const startTimeOfRtc = await getStartTimeOfRtcRoom()
    player.setTimeRange(startTimeOfRtc)
    

    Parameters

    • startTime: undefined | number
    • endTime: undefined | number

    Returns void

setViewer

  • setViewer(viewer: string): void
  • 设置以谁的视角来观看录像。默认视角为录像文件中第一个动作的发出者。RecordPlayer.getInstance的then回调中,会返回这次会话的所有参与者列表。开发者可以根据此信息渲染可以选择的视角列表

    example
    player.setViewer('9012313')
    

    Parameters

    Returns void