音视频设备相关事件回调

interface JRTCMediaDeviceCallback {
    onAudioError?: (error: string) => void;
    onAudioRouteTypeChanged?: (
        audioRouteType: JRTCMediaDeviceAudioRouteType,
    ) => void;
    onCameraUpdate?: () => void;
    onVideoCaptureDidStart?: (streamId: string, ratio: number) => void;
    onRenderReceived?: (streamId: string, ratio: number) => void;
    onRenderStart?: (streamId: string, ratio: number) => void;
    onRenderResized?: (streamId: string, ratio: number) => void;
    onScreenSharePermissionResult?: (result: boolean) => void;
    onVideoError?: (
        errorType: JRTCMediaDeviceVideoErrorType,
        errorDetail: string,
    ) => void;
    onSnapshotComplete?: (file: string, width: number, height: number) => void;
    onMemoryAvailable?: (memorySize: number) => void;
    onRingPlayFinish?: () => void;
    onFileAudioInputDidFinish?: () => void;
    onTessarEvent?: (eventCode: number, extraInfo: string) => void;
}

Properties

onAudioError?: (error: string) => void

音频异常

Type declaration

    • (error: string): void
    • Parameters

      • error: string

        异常信息

      Returns void

onAudioRouteTypeChanged?: (
    audioRouteType: JRTCMediaDeviceAudioRouteType,
) => void

音频输出通道变化回调

Type declaration

onCameraUpdate?: () => void

摄像头变化回调

摄像头状态发生变化会收到此回调,例如打开、关闭、切换摄像头

onVideoCaptureDidStart?: (streamId: string, ratio: number) => void

视频采集开始回调

Type declaration

    • (streamId: string, ratio: number): void
    • Parameters

      • streamId: string

        视频流ID

      • ratio: number

        视频宽高比

      Returns void

onRenderReceived?: (streamId: string, ratio: number) => void

收到第一帧数据回调

Type declaration

    • (streamId: string, ratio: number): void
    • Parameters

      • streamId: string
      • ratio: number

        视频宽高比

      Returns void

onRenderStart?: (streamId: string, ratio: number) => void

渲染开始回调

Type declaration

    • (streamId: string, ratio: number): void
    • Parameters

      • streamId: string
      • ratio: number

        宽高比

      Returns void

onRenderResized?: (streamId: string, ratio: number) => void

数据宽高比例变化回调

Type declaration

    • (streamId: string, ratio: number): void
    • Parameters

      • streamId: string
      • ratio: number

        宽高比

      Returns void

onScreenSharePermissionResult?: (result: boolean) => void

屏幕采集权限申请结果回调

Type declaration

    • (result: boolean): void
    • Parameters

      • result: boolean

        true 表示同意

        • false 表示拒绝

      Returns void

onVideoError?: (
    errorType: JRTCMediaDeviceVideoErrorType,
    errorDetail: string,
) => void

视频异常,渲染错误,包括摄像头采集错误、屏幕采集错误等回调

Type declaration

  • JRTCMediaDeviceVideoErrorType.OTHER 其他未知异常
  • JRTCMediaDeviceVideoErrorType.CAMERA 摄像头异常
  • JRTCMediaDeviceVideoErrorType.SCREEN 屏幕采集异常
  • JRTCMediaDeviceVideoErrorType.RENDER 视频渲染异常
onSnapshotComplete?: (file: string, width: number, height: number) => void

截图完成回调

Type declaration

    • (file: string, width: number, height: number): void
    • Parameters

      • file: string

        截图路径

      • width: number

        图片像素宽

      • height: number

        图片像素高

      Returns void

onMemoryAvailable?: (memorySize: number) => void

上报剩余可用内存回调

周期性上报一次内存剩余情况

Type declaration

    • (memorySize: number): void
    • Parameters

      • memorySize: number

        当前剩余可用内存空间(MB)

      Returns void

onRingPlayFinish?: () => void

音频播放完成

onFileAudioInputDidFinish?: () => void

本地文件音频源输入完成回调

onTessarEvent?: (eventCode: number, extraInfo: string) => void

天赛事件上报,包含警告和错误事件

Type declaration

    • (eventCode: number, extraInfo: string): void
    • Parameters

      • eventCode: number

        天赛事件码

      • extraInfo: string

        事件其他信息

      Returns void