Agora C++ API Reference for All Platforms
Loading...
Searching...
No Matches
NGIAgoraRtmpLocalUser.h
1//
2// Agora RTMP connection
3//
4// Created by Haonong Yu in 2020-02.
5// Copyright (c) 2020 Agora.io. All rights reserved.
6//
7
8#pragma once // NOLINT(build/header_guard)
9
10#include "NGIAgoraAudioTrack.h"
11#include "NGIAgoraVideoTrack.h"
12
13namespace agora {
14namespace rtc {
15
18
33
48
109
118 public:
119
121 None = 0,
122 Increasing = 1, // The buffer is in good declining state to increase bitrate
123 Decreasing = 2, // The buffer is in bad increasing state to decrease bitrate
124 };
125
126 virtual ~IRtmpLocalUser() {}
127
137 virtual int setAudioStreamConfiguration(const RtmpStreamingAudioConfiguration& config, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
138
148 virtual int setVideoStreamConfiguration(const RtmpStreamingVideoConfiguration& config, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
149
159 virtual int adjustRecordingSignalVolume(int volume, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
160
169 virtual int getRecordingSignalVolume(int32_t* volume) = 0;
170
185 virtual int adjustVideoBitrate(VideoBitrateAdjustType type, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
186
198 virtual int setVideoEnabled(bool enabled, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
199
208 virtual int publishAudio(agora_refptr<rtc::ILocalAudioTrack> audioTrack, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
209
218 virtual int unpublishAudio(agora_refptr<rtc::ILocalAudioTrack> audioTrack, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
219
228 virtual int publishVideo(agora_refptr<rtc::ILocalVideoTrack> videoTrack, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
229
237 virtual int unpublishVideo(agora_refptr<rtc::ILocalVideoTrack> videoTrack, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
238
250 virtual int registerRtmpUserObserver(IRtmpLocalUserObserver* observer, void(*safeDeleter)(IRtmpLocalUserObserver*) = NULL, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
251
270 virtual int registerAudioFrameObserver(media::IAudioPcmFrameSink* observer, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
271
278
288 virtual int registerVideoFrameObserver(media::base::IVideoFrameObserver* observer, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
289
296};
297
298} // namespace rtc
299} // namespace agora
Definition AgoraRefPtr.h:44
Definition AgoraMediaBase.h:1250
Definition AgoraMediaBase.h:1106
Definition NGIAgoraRtmpLocalUser.h:117
virtual int unpublishVideo(agora_refptr< rtc::ILocalVideoTrack > videoTrack, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int setVideoEnabled(bool enabled, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int unregisterRtmpUserObserver(IRtmpLocalUserObserver *observer)=0
virtual int publishVideo(agora_refptr< rtc::ILocalVideoTrack > videoTrack, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int registerAudioFrameObserver(media::IAudioPcmFrameSink *observer, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int registerRtmpUserObserver(IRtmpLocalUserObserver *observer, void(*safeDeleter)(IRtmpLocalUserObserver *)=NULL, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int adjustRecordingSignalVolume(int volume, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int adjustVideoBitrate(VideoBitrateAdjustType type, aosl_ref_t ares=AOSL_REF_INVALID)=0
VideoBitrateAdjustType
Definition NGIAgoraRtmpLocalUser.h:120
@ Decreasing
Definition NGIAgoraRtmpLocalUser.h:123
@ Increasing
Definition NGIAgoraRtmpLocalUser.h:122
@ None
Definition NGIAgoraRtmpLocalUser.h:121
virtual ~IRtmpLocalUser()
Definition NGIAgoraRtmpLocalUser.h:126
virtual int setAudioStreamConfiguration(const RtmpStreamingAudioConfiguration &config, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int registerVideoFrameObserver(media::base::IVideoFrameObserver *observer, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int publishAudio(agora_refptr< rtc::ILocalAudioTrack > audioTrack, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int setVideoStreamConfiguration(const RtmpStreamingVideoConfiguration &config, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual void unregisterVideoFrameObserver(media::base::IVideoFrameObserver *observer)=0
virtual int unpublishAudio(agora_refptr< rtc::ILocalAudioTrack > audioTrack, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int getRecordingSignalVolume(int32_t *volume)=0
virtual void unregisterAudioFrameObserver(media::IAudioPcmFrameSink *observer)=0
Definition NGIAgoraRtmpLocalUser.h:52
virtual void onVideoTrackUnpublished(agora_refptr< rtc::ILocalVideoTrack > videoTrack)=0
virtual void onAudioTrackUnpublished(agora_refptr< rtc::ILocalAudioTrack > audioTrack)=0
virtual void onVideoTrackPublicationFailure(agora_refptr< rtc::ILocalVideoTrack > videoTrack, PublishVideoError error)=0
virtual ~IRtmpLocalUserObserver()
Definition NGIAgoraRtmpLocalUser.h:54
virtual void onAudioTrackPublishSuccess(agora_refptr< rtc::ILocalAudioTrack > audioTrack)=0
virtual void onAudioTrackPublishStart(agora_refptr< rtc::ILocalAudioTrack > audioTrack)=0
virtual void onVideoTrackPublishStart(agora_refptr< rtc::ILocalVideoTrack > videoTrack)=0
virtual void onVideoTrackPublishSuccess(agora_refptr< rtc::ILocalVideoTrack > videoTrack)=0
virtual void onAudioTrackPublicationFailure(agora_refptr< rtc::ILocalAudioTrack > audioTrack, PublishAudioError error)=0
Definition AgoraExtensions.h:5
PublishVideoError
Definition NGIAgoraRtmpLocalUser.h:37
@ PUBLISH_VIDEO_ERR_FAILED
Definition NGIAgoraRtmpLocalUser.h:46
@ PUBLISH_VIDEO_ERR_OK
Definition NGIAgoraRtmpLocalUser.h:41
PublishAudioError
Definition NGIAgoraRtmpLocalUser.h:22
@ PUBLISH_AUDIO_ERR_OK
Definition NGIAgoraRtmpLocalUser.h:26
@ PUBLISH_AUDIO_ERR_FAILED
Definition NGIAgoraRtmpLocalUser.h:31
Definition AgoraAtomicOps.h:21
Definition NGIAgoraRtmpConnection.h:22
Definition NGIAgoraRtmpConnection.h:51