实时音视频

  • 实时音视频 > 使用指南 > Android >CDN 直推

    CDN 直推

    最近更新时间: 2024-02-23 19:46:16

    本文主要介绍单主播直推 CDN 的使用场景。

    在单人直播时,SDK 将主播的音视频直接推流到 CDN 分发,观众端不需要加入 RTC 房间,只需要通过播放器进行拉流播放。

    • QNCDNStreamingConfig 中的 videoTrack 和 audioTrack 参数,确保在整个推流开始和结束的过程中是有效的

    使用方式如下:

    创建 QNCDNStreamingClient

    QNCDNStreamingClient 为 RTMP 推流的统一管理类,通过 QNRTC.createCDNStreamingClient 接口来创建 QNCDNStreamingClient 对象

    QNCDNStreamingClient streamingClient = QNRTC.createCDNStreamingClient();
    

    设置状态回调和统计信息回调

    在进行 CDN 直推之前,需要设置 CDN 直推流的状态监听:

    streamingClient.setCDNStreamingListener(new QNCDNStreamingListener() {
        @Override
        public void onCDNStreamingConnectionStateChanged(QNConnectionState state, int errorCode, String message) {
            // 直播流状态改变时触发此回调
        }
    
        @Override
        public void onCDNStreamingStats(QNCDNStreamingStats stats) {
            // 定期回调直播流统计信息
        }
    });
    

    开始推流

    开始推流之前,需要配置推流参数 QNCDNStreamingConfig。 通过调用 QNCDNStreamingClient.start 开始推流。使用代码参考如下:

    // 配置推流参数
    QNCDNStreamingConfig config = new QNCDNStreamingConfig()
            .setVideoTrack(cameraVideoTrack)
            .setAudioTrack(microphoneAudioTrack)
            .setPublishUrl("rtmp://xxx/hub/publishUrl");
    // 开始推流
    streamingClient.start(config);
    

    停止推流

    调用 QNCDNStreamingClient.stop 停止推流。使用代码参考如下:

    // 停止推流
    streamingClient.stop();
    

    示例代码

    RTMP 直推 CDN 的示例代码可参考 QNRTC-API-Examples

    以上内容是否对您有帮助?
  • Qvm free helper
    Close