agora::rtc::IRtmpConnection类 参考

  • C++

更新时间不可用

继承自 agora::RefCountInterface.

详细描述

IRtmpConnection 类,用于管理 SDK 与 CDN 之间的连接。

连接完成之后,你可以通过 IRtmpLocalUser 对象在 CDN 中推流。

连接 CDN 是异步操作,你可以通过 IRtmpConnectionObserver 对象监听连接状态变化和事件。

构造及析构函数说明

~IRtmpConnection()

inline
agora::rtc::IRtmpConnection::~IRtmpConnection()

成员函数说明

connect()

purevirtual
virtual int agora::rtc::IRtmpConnection::connect(const char * url, aosl_ref_t ares = AOSL_REF_INVALID)

连接 CDN。

成功调用该方法后,连接状态由 STATE_DISCONNECTED(1) 变更为 STATE_CONNECTING(2)。

根据连接是否成功,连接状态会有如下变化:

  • 连接成功:连接状态变更为 STATE_CONNECTED(3),SDK 会触发 onConnected 回调。
  • 连接失败:连接状态变更为 STATE_FAILED(5),SDK 会触发 onConnectionFailure 回调。
参数
参数名描述
url

CDN 推流地址。格式为 RTMP。字符长度不能超过 1024 字节。不支持中文字符等特殊字符。

ares

用于 SDK 的生命周期保护,填写默认值即可。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。

  • < 0: 方法调用失败。

    • -2 (ERR_INVALID_ARGUMENT): 参数无效。
    • -8(ERR_INVALID_STATE): 当前连接状态不是 STATE_DISCONNECTED(1)。

disconnect()

purevirtual
virtual int agora::rtc::IRtmpConnection::disconnect(aosl_ref_t ares = AOSL_REF_INVALID)

与 CDN 断开连接。

成功调用该方法后,连接状态变更为 STATE_DISCONNECTED(1),同时 SDK 会触发 onDisconnected 回调。

参数
参数名描述
ares

用于 SDK 的生命周期保护,填写默认值即可。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。

getConnectionInfo()

purevirtual
virtual RtmpConnectionInfo agora::rtc::IRtmpConnection::getConnectionInfo()

获取连接信息。

返回值

getRtmpLocalUser()

purevirtual
virtual IRtmpLocalUser* agora::rtc::IRtmpConnection::getRtmpLocalUser()

获取本地用户对象的指针。每个连接仅对应一个本地用户。

返回值

  • IRtmpLocalUser 对象:方法调用成功。
  • 空指针:方法调用失败。

registerObserver()

purevirtual
virtual int agora::rtc::IRtmpConnection::registerObserver(IRtmpConnectionObserver * observer, void(*)(IRtmpConnectionObserver *) safeDeleter = NULL, aosl_ref_t ares = AOSL_REF_INVALID)

注册 CDN 连接 observer。

你必须先创建 IRtmpConnectionObserver 对象。

参数
参数名描述
observer
ares

用于 SDK 的生命周期保护,填写默认值即可。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。

unregisterObserver()

purevirtual
virtual int agora::rtc::IRtmpConnection::unregisterObserver(IRtmpConnectionObserver * observer)

销毁 CDN 连接 observer。

参数
参数名描述
observer
表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0: 方法调用成功。
  • < 0: 方法调用失败。