实时音视频

  • 实时音视频 > 使用指南 > iOS >初始化

    初始化

    最近更新时间:2021-11-19 10:10:23

    本部分介绍了实时音视频的初始化方式及其配置项。

    在加入房间前,需要使用 SDK 提供的 QNRTCConfiguration 用来进行初始化配置。

    默认配置初始化

    直接使用 QNRTCConfiguration.defaultConfiguration 默认配置进行初始化,示例代码如下:

    QNRTCConfiguration *configuration = [QNRTCConfiguration defaultConfiguration];
    

    若 QNRTCConfiguration 的默认配置无法满足您的场景需要,您可通过 QNRTCConfiguration 下的几个 init 方法进行自定义 QNRTCConfiguration 配置的初始化。

    设置媒体传输方式

    通过调用初始化方法 QNRTCConfiguration.initWithPolicy[1/4] 设置媒体传输方式,默认使用 UDP 传输。

    QNRTCConfiguration *configuration = [[QNRTCConfiguration alloc] initWithPolicy: QNRTCPolicyForceUDP];
    

    其中,媒体传输方式有如下几种,可根据实际情况自行选择:

    typedef NS_ENUM(NSUInteger, QNRTCPolicy) {
        QNRTCPolicyForceUDP = 0,  // 使用 UDP
        QNRTCPolicyForceTCP,      // 使用 TCP
        QNRTCPolicyPreferUDP,     // 优先 UDP,不通的话自动改为 TCP
    };
    

    设置立体声

    通过调用初始化方法 QNRTCConfiguration.initWithPolicy[2/4] 设置是否开启立体声,默认为 NO。

    QNRTCConfiguration *configuration = [[QNRTCConfiguration alloc] initWithPolicy: QNRTCPolicyForceUDP stereo:NO];
    

    设置带宽估计策略

    通过调用初始化方法 QNRTCConfiguration.initWithPolicy[3/4] 设置带宽估计策略,默认为 QNRTCBWEPolicyTCC。

    QNRTCConfiguration *configuration = [[QNRTCConfiguration alloc] initWithPolicy: QNRTCPolicyForceUDP stereo:NO bwePolicy:QNRTCBWEPolicyTCC];
    

    其中,带宽估计策略有如下几种,可根据实际情况自行选择:

    typedef NS_ENUM(NSUInteger, QNRTCBWEPolicy) {
        QNRTCBWEPolicyTCC = 0,  // 使用 TCC
        QNRTCBWEPolicyGCC,      // 使用 GCC
    };
    

    设置是否允许与其他音频一起播放

    通过调用初始化方法 QNRTCConfiguration.initWithPolicy[4/4] 设置是否允许与其他音频一起播放,默认为 NO。

    QNRTCConfiguration *configuration = [[QNRTCConfiguration alloc] initWithPolicy: QNRTCPolicyForceUDP stereo:NO bwePolicy:QNRTCBWEPolicyTCC allowAudioMixWithOthers:NO];
    

    初始化 QNRTC

    在配置好 QNRTCConfiguration 后,通过 + (void)configRTC:(QNRTCConfiguration *)configuration; 传入。

    [QNRTC configRTC:configuration];
    

    设置日志等级

    通过调用 QNRTC.setLogLevel 设置 SDK 的日志等级

    [QNRTC setLogLevel:QNRTCLogLevelInfo];
    

    设置成功后,可以通过 QNRTC.enableFileLogging 接口开启日志文件保存。


    设置是否将扬声器作为默认音频输出设备

    通过调用 QNRTC.setAudioRouteToSpeakerphone 设置是否将扬声器作为默认音频输出设备,默认音频路由为扬声器。

    [QNRTC setAudioRouteToSpeakerphone:YES];
    
    以上内容是否对您有帮助?
  • Qvm free helper
    Close