实时音视频

  • 实时音视频 > API 文档 > Uniapp >API 概览

    API 概览

    最近更新时间: 2022-04-02 14:26:05

    QNRTC-Uniapp 是七牛推出的一款适用于 uniapp 的音视频通话 SDK,提供了包括音视频通话、静音、发布、订阅等多种功能,基于此 SDK,您可以很方便地在 HBuilderX 上开发出一款基于实时音视频的原生应用。
    QNRTC

    QNRTC 提供 SDK 的入口方法,可以通过它进行 SDK 的初始化。其核心方法如下:

    初始化与反初始化

    方法 描述
    configRTC 初始化 SDK
    deinit 反初始化 SDK

    创建 Track

    方法 描述
    createMicrophoneAudioTrack 创建麦克风音频轨道
    createCameraVideoTrack 创建摄像头视频轨道
    createScreenVideoTrack 创建屏幕采集的视频轨道

    音频播放路由

    方法 描述
    setAudioRouteToSpeakerphone 设置默认音频播放路由为扬声器
    QNRTCClient

    QNRTCClient 提供和房间相关的一系列的方法,通过它我们可以实现加入房间,在房间内发布或者订阅相应的音视频轨道等操作。核心方法如下:

    核心方法

    方法 描述
    join 加入房间
    leave 离开房间
    publish 发布本地的音视频轨道
    unpublish 取消发布本地的音视频轨道
    subscribe 订阅远端用户发布的音视频轨道
    unsubscribe 取消订阅远端用户发布的音视频轨道

    转推 CDN

    方法 描述
    startLiveStreamingWithDirect 开启单路转推
    stopLiveStreamingWithDirect 停止单路转推
    startLiveStreamingWithTranscoding 开启合流转推
    stopLiveStreamingWithTranscoding 停止合流转推
    setTranscodingLiveStreamingTracks 新增、更新合流转推的 Tracks
    removeTranscodingLiveStreamingTracks 删除合流转推的 Tracks
    QNLocalTrack

    QNLocalTrack 是本地创建的一个音视或者视频轨道,可以通过 QNRTC 来创建各种类型的音视频轨道,例如麦克风采集的音频轨道,摄像头采集的视频轨道,或者屏幕采集的视频轨道等等,我们真正用到的是它所衍生的子类。

    以 QNLocalTrack 为基类,向下衍生的子类如下:

    Hierarchy
    本地音频轨道
    • 本地音频轨道 描述
      QNMicrophoneAudioTrack 以麦克风采集到的音频数据为数据源创建的音频轨道,提供了音量控制,播放,数据回调等接口,通过 QNRTC.createMicrophoneAudioTrack 创建。
      本地视频轨道 描述
      QNCameraVideoTrack 以摄像头采集到的视频数据为数据源创建的视频轨道,提供了包括摄像头采集,渲染播放,前后摄像头切换,开启闪光灯,设置曝光度等一系列操作摄像头的方法。通过 QNRTC.createCameraVideoTrack 创建。
      QNScreenVideoTrack 以屏幕采集到的视频数据为数据源创建的视频轨道,提供屏幕录制的权限申请等一些列方法,通过 QNRTC.createScreenVideoTrack 创建。
    QNRemoteTrack

    QNRemoteTrack 是远端用户创建的音视频轨道,本地用户可以通过房间中的事件回调获取。其衍生的子类如下:

    Hierarchy
    • 远端音视频轨道 描述
      QNRemoteAudioTrack 远端用户发布的音频轨道,当可以通过该类来调节播放的音量大小,并且还提供了回调音频数据等方法。
      QNRemoteVideoTrack 远端用户发布的视频轨道,当可以通过该类来把远端视频画面渲染到视图中,并且还提供了回调视频数据等方法。
    QNRTCClinetEvent

    房间内支持的事件,例如:

    client.on('onAudioSubscribed', (params) => {
        console.log('onAudioSubscribed', params)
    })
    事件监听

    SDK 支持丰富的事件监听接口,不同场景下的事件监听接口定义如下:

    • 方法 描述
      QNRTCEngineEvent 核心回调接口,定义了设备相关的回调事件,如音频路由改变等。
      QNRTCClinetEvent 核心回调接口,定义了房间相关的回调事件,包括房间连接状态、用户加入离开状态等。
      QNRTCTrackEvent Track 回调接口,定义了静默状态改变、大小流切换等事件。
    以上内容是否对您有帮助?
  • Qvm free helper
    Close