agora::rtc::IRtmpLocalUser类 参考
- C++
更新时间不可用
详细描述
IRtmpLocalUser 类。定义了 CDN 推流用户的行为和状态。
每个 CDN 连接都有自己的用户。你可以通过 getRtmpLocalUser 获取本地用户对象的指针。
成员枚举类型说明
VideoBitrateAdjustType
视频编码码率的调节类型。
| 枚举值 | |
|---|---|
| 0: 不调节。 | |
| 1: 增加。每次使用该枚举时,视频编码码率会增加 50 kbps。 | |
| 2: 减少。每次使用该枚举时,视频编码码率会减少 100 kbps。 | |
构造及析构函数说明
~IRtmpLocalUser()
virtual agora::rtc::IRtmpLocalUser::~IRtmpLocalUser()成员函数说明
setAudioStreamConfiguration()
virtual int agora::rtc::IRtmpLocalUser::setAudioStreamConfiguration(const RtmpStreamingAudioConfiguration & config)设置主播端直接向 CDN 推流时的音频编码属性。
| 参数名 | 描述 |
|---|---|
config | CDN 推流的音频编码属性,详见 RtmpStreamingAudioConfiguration 。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
setVideoStreamConfiguration()
virtual int agora::rtc::IRtmpLocalUser::setVideoStreamConfiguration(const RtmpStreamingVideoConfiguration & config)设置主播端直接向 CDN 推流时的视频编码属性。
| 参数名 | 描述 |
|---|---|
config | CDN 推流的视频编码属性,详见 RtmpStreamingVideoConfiguration 。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
adjustRecordingSignalVolume()
virtual int agora::rtc::IRtmpLocalUser::adjustRecordingSignalVolume(int volume)调节主播端直接向 CDN 推流时的音频采集信号音量。
| 参数名 | 描述 |
|---|---|
volume | 音量,取值范围为 [0,100]。其中:
|
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
getRecordingSignalVolume()
virtual int agora::rtc::IRtmpLocalUser::getRecordingSignalVolume(int32_t * volume)获取主播端直接向 CDN 推流时的音频采集信号音量。
| 参数名 | 描述 |
|---|---|
volume | 音量指针。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
setAudioEnabled()
virtual int agora::rtc::IRtmpLocalUser::setAudioEnabled(bool enabled)在 CDN 推流中开启或关闭本地音频。
你需要在开始直接向 CDN 推流前调用该方法。
| 参数名 | 描述 |
|---|---|
enabled | 是否开启本地音频:
|
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
adjustVideoBitrate()
virtual void agora::rtc::IRtmpLocalUser::adjustVideoBitrate(VideoBitrateAdjustType type)调节主播端直接向 CDN 推流时的视频编码码率。
如果多次调用该方法,调节效果会叠加。以当前视频编码码率为 200 kbps 为例:
- 调用该方法并设置
type为Increasing,则视频编码码率会增加 50 kbps,当前视频编码码率变为 250 kbps。 - 再次调用该方法并设置
type为Decreasing,则视频编码码率会减少 100 kbps,当前视频编码码率变为 150 kbps。
| 参数名 | 描述 |
|---|---|
type | 视频编码码率的调节类型,详见 VideoBitrateAdjustType 。 |
setVideoEnabled()
virtual int agora::rtc::IRtmpLocalUser::setVideoEnabled(bool enabled)在 CDN 推流中开启或关闭本地视频。
你需要在开始直接向 CDN 推流前调用该方法。
| 参数名 | 描述 |
|---|---|
enabled | 是否开启本地视频:
|
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
publishAudio()
virtual int agora::rtc::IRtmpLocalUser::publishAudio(agora_refptr< rtc::ILocalAudioTrack > audioTrack)向 CDN 推送本地音频流。
| 参数名 | 描述 |
|---|---|
audioTrack | 本地音频轨道,详见 ILocalAudioTrack 。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
unpublishAudio()
virtual int agora::rtc::IRtmpLocalUser::unpublishAudio(agora_refptr< rtc::ILocalAudioTrack > audioTrack)停止向 CDN 推送本地音频流。
| 参数名 | 描述 |
|---|---|
audioTrack | 本地音频轨道,详见 ILocalAudioTrack 。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
publishVideo()
virtual int agora::rtc::IRtmpLocalUser::publishVideo(agora_refptr< rtc::ILocalVideoTrack > videoTrack)向 CDN 推送本地视频流。
| 参数名 | 描述 |
|---|---|
videoTrack | 本地视频轨道,详见 ILocalVideoTrack 。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
unpublishVideo()
virtual int agora::rtc::IRtmpLocalUser::unpublishVideo(agora_refptr< rtc::ILocalVideoTrack > videoTrack)停止向 CDN 推送本地视频流。
| 参数名 | 描述 |
|---|---|
videoTrack | 本地视频轨道,详见 ILocalVideoTrack 。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
registerRtmpUserObserver()
virtual int agora::rtc::IRtmpLocalUser::registerRtmpUserObserver(IRtmpLocalUserObserver * observer, void(*)(IRtmpLocalUserObserver *) safeDeleter = NULL)注册 CDN 推流用户观测器。
成功注册后,你会收到 IRtmpLocalUserObserver 类中的相关回调。
| 参数名 | 描述 |
|---|---|
observer | IRtmpLocalUserObserver 对象的指针。 你需要在该方法中实现 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
unregisteRtmpUserObserver()
virtual int agora::rtc::IRtmpLocalUser::unregisteRtmpUserObserver(IRtmpLocalUserObserver * observer)注销 CDN 推流用户观测器。
成功注销后,你将不再收到 IRtmpLocalUserObserver 类中的相关回调。
| 参数名 | 描述 |
|---|---|
observer | IRtmpLocalUserObserver 对象的指针。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
registerAudioFrameObserver()
virtual int agora::rtc::IRtmpLocalUser::registerAudioFrameObserver(media::base::IAudioFrameObserver * observer)注册音频观测器。
| 参数名 | 描述 |
|---|---|
observer | IAudioFrameObserver 对象的指针。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
unregisterAudioFrameObserver()
virtual void agora::rtc::IRtmpLocalUser::unregisterAudioFrameObserver(media::base::IAudioFrameObserver * observer)注销音频观测器。
| 参数名 | 描述 |
|---|---|
observer | IAudioFrameObserver 对象的指针。 |
registerVideoFrameObserver()
virtual int agora::rtc::IRtmpLocalUser::registerVideoFrameObserver(media::base::IVideoFrameObserver * observer)注册视频观测器。
| 参数名 | 描述 |
|---|---|
observer | IVideoFrameObserver 对象的指针。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。
unregisterVideoFrameObserver()
virtual void agora::rtc::IRtmpLocalUser::unregisterVideoFrameObserver(media::base::IVideoFrameObserver * observer)注销视频观测器。
| 参数名 | 描述 |
|---|---|
observer | IVideoFrameObserver 对象的指针。 |