NERtc Windows SDK  V4.6.20
nertc_channel.h
浏览该文件的文档.
1 
8 #ifndef NERTC_CHANNEL_H
9 #define NERTC_CHANNEL_H
10 
11 #include "nertc_base.h"
12 #include "nertc_base_types.h"
13 #include "nertc_engine_defines.h"
16 
21 namespace nertc
22 {
23 
33 {
34 public:
35  virtual ~IRtcChannel() {}
36 
47  virtual void release() = 0;
48 
65  virtual const char* getChannelName() = 0;
66 
89 
118  virtual int joinChannel(const char* token) = 0;
119 
147  virtual int leaveChannel() = 0;
148 
167  virtual int setStatsObserver(IRtcMediaStatsObserver* observer) = 0;
168 
204  virtual int enableLocalAudio(bool enabled) = 0;
205 
232  virtual int enableLocalSubStreamAudio(bool enabled) = 0;
233 
268  virtual int muteLocalAudioStream(bool mute) = 0;
269 
294  virtual int muteLocalSubStreamAudio(bool mute) = 0;
295 
328  virtual int enableLocalVideo(bool enabled) = 0;
329 
395  virtual int enableLocalVideo(NERtcVideoStreamType type, bool enabled) = 0;
396 
397 
433  virtual int muteLocalVideoStream(bool mute) = 0;
434 
493  virtual int muteLocalVideoStream(NERtcVideoStreamType type, bool mute) = 0;
494 
528  virtual int startScreenCaptureByScreenRect(const NERtcRectangle& screen_rect, const NERtcRectangle& region_rect, const NERtcScreenCaptureParameters& capture_params) = 0;
529 
561  virtual int startScreenCaptureByDisplayId(unsigned int display_id, const NERtcRectangle& region_rect, const NERtcScreenCaptureParameters& capture_params) = 0;
562 
597  virtual int startScreenCaptureByWindowId(source_id_t window_id, const NERtcRectangle& region_rect, const NERtcScreenCaptureParameters& capture_params) = 0;
598 
619  virtual int updateScreenCaptureRegion(const NERtcRectangle& region_rect) = 0;
620 
643  virtual int setScreenCaptureMouseCursor(bool capture_cursor) = 0;
644 
666  virtual int stopScreenCapture() = 0;
667 
687  virtual int pauseScreenCapture() = 0;
688 
706  virtual int resumeScreenCapture() = 0;
707 
708 
734  virtual int setExcludeWindowList(source_id_t* window_list, int count) = 0;
735 
779 
806  virtual int setupLocalVideoCanvas(NERtcVideoCanvas* canvas) = 0;
807 
808 
833 
856  virtual int setLocalRenderMode(NERtcVideoScalingMode scaling_mode) = 0;
857 
881  virtual int setLocalSubStreamRenderMode(NERtcVideoScalingMode scaling_mode) = 0;
882 
908  virtual int setLocalVideoMirrorMode(NERtcVideoMirrorMode mirror_mode) = 0;
909 
961 
994  virtual int setupRemoteVideoCanvas(uid_t uid, NERtcVideoCanvas* canvas) = 0;
995 
1027 
1050  virtual int setRemoteRenderMode(uid_t uid, NERtcVideoScalingMode scaling_mode) = 0;
1051 
1075  virtual int setRemoteSubSteamRenderMode(uid_t uid, NERtcVideoScalingMode scaling_mode) = 0;
1076 
1116  virtual int setClientRole(NERtcClientRole role) = 0;
1117 
1152  virtual int setLocalMediaPriority(NERtcMediaPriorityType priority, bool is_preemptive) = 0;
1153 
1167 
1195  virtual int setCameraCaptureConfig(const NERtcCameraCaptureConfig& config) = 0;
1196 
1248 
1276  virtual int setVideoConfig(const NERtcVideoConfig& config) = 0;
1277 
1328  virtual int setVideoConfig(NERtcVideoStreamType type, const NERtcVideoConfig& config) = 0;
1329 
1330 
1361  virtual int enableDualStreamMode(bool enable) = 0;
1362 
1393  virtual int subscribeRemoteAudioStream(uid_t uid, bool subscribe) = 0;
1394 
1428  virtual int subscribeRemoteSubStreamAudio(uid_t uid, bool subscribe) = 0;
1429 
1453  virtual int subscribeAllRemoteAudioStream(bool subscribe) = 0;
1454 
1485  virtual int setAudioSubscribeOnlyBy(uid_t* uid_array, uint32_t size) = 0;
1486 
1518  virtual int subscribeRemoteVideoStream(uid_t uid, NERtcRemoteVideoStreamType type, bool subscribe) = 0;
1519 
1551  virtual int subscribeRemoteVideoSubStream(uid_t uid, bool subscribe) = 0;
1552 
1581  virtual int addLiveStreamTask(const NERtcLiveStreamTaskInfo& info) = 0;
1582 
1607  virtual int updateLiveStreamTask(const NERtcLiveStreamTaskInfo& info) = 0;
1608 
1635  virtual int removeLiveStreamTask(const char* task_id) = 0;
1636 
1675  virtual int sendSEIMsg(const char* data, int length, NERtcVideoStreamType type) = 0;
1676 
1715  virtual int sendSEIMsg(const char* data, int length) = 0;
1716 
1747 
1781 
1812  virtual int takeLocalSnapshot(NERtcVideoStreamType stream_type, NERtcTakeSnapshotCallback *callback) = 0;
1813 
1844  virtual int takeRemoteSnapshot(uid_t uid, NERtcVideoStreamType stream_type, NERtcTakeSnapshotCallback *callback) = 0;
1845 
1880  virtual int adjustUserPlaybackSignalVolume(uid_t uid, int volume) = 0;
1881 
1911 
1935 
1954  virtual int stopChannelMediaRelay() = 0;
1955 
1981 
2007 
2040  virtual int setRemoteHighPriorityAudioStream(bool enabled, uid_t uid) = 0;
2041 
2083  virtual int enableMediaPub(bool enabled, NERtcMediaPubType media_type) = 0;
2084 };
2085 } //namespace nertc
2086 
2087 #endif
Definition: nertc_channel_event_handler.h:34
Definition: nertc_channel.h:33
virtual int enableDualStreamMode(bool enable)=0
virtual int muteLocalVideoStream(bool mute)=0
virtual int subscribeAllRemoteAudioStream(bool subscribe)=0
virtual int setChannelEventHandler(IRtcChannelEventHandler *handler)=0
virtual int stopChannelMediaRelay()=0
virtual int setRemoteRenderMode(uid_t uid, NERtcVideoScalingMode scaling_mode)=0
virtual int setupRemoteVideoCanvas(uid_t uid, NERtcVideoCanvas *canvas)=0
virtual int setClientRole(NERtcClientRole role)=0
virtual int sendSEIMsg(const char *data, int length)=0
virtual int resumeScreenCapture()=0
virtual int updateLiveStreamTask(const NERtcLiveStreamTaskInfo &info)=0
virtual int subscribeRemoteVideoStream(uid_t uid, NERtcRemoteVideoStreamType type, bool subscribe)=0
virtual int sendSEIMsg(const char *data, int length, NERtcVideoStreamType type)=0
virtual int setupLocalVideoCanvas(NERtcVideoCanvas *canvas)=0
virtual int addLiveStreamTask(const NERtcLiveStreamTaskInfo &info)=0
virtual int startScreenCaptureByDisplayId(unsigned int display_id, const NERtcRectangle &region_rect, const NERtcScreenCaptureParameters &capture_params)=0
virtual int setRemoteSubSteamRenderMode(uid_t uid, NERtcVideoScalingMode scaling_mode)=0
virtual int setScreenCaptureMouseCursor(bool capture_cursor)=0
virtual int startScreenCaptureByWindowId(source_id_t window_id, const NERtcRectangle &region_rect, const NERtcScreenCaptureParameters &capture_params)=0
virtual int setStatsObserver(IRtcMediaStatsObserver *observer)=0
virtual int subscribeRemoteAudioStream(uid_t uid, bool subscribe)=0
virtual int enableLocalVideo(NERtcVideoStreamType type, bool enabled)=0
virtual int muteLocalAudioStream(bool mute)=0
virtual int setLocalPublishFallbackOption(NERtcStreamFallbackOption option)=0
virtual int takeLocalSnapshot(NERtcVideoStreamType stream_type, NERtcTakeSnapshotCallback *callback)=0
virtual int setRemoteSubscribeFallbackOption(NERtcStreamFallbackOption option)=0
virtual int muteLocalVideoStream(NERtcVideoStreamType type, bool mute)=0
virtual int updateScreenCaptureParameters(const nertc::NERtcScreenCaptureParameters &captureParams)=0
virtual int setupRemoteSubStreamVideoCanvas(uid_t uid, NERtcVideoCanvas *canvas)=0
virtual int setCameraCaptureConfig(NERtcVideoStreamType type, const NERtcCameraCaptureConfig &config)=0
virtual NERtcConnectionStateType getConnectionState()=0
virtual int muteLocalSubStreamAudio(bool mute)=0
virtual int setRemoteHighPriorityAudioStream(bool enabled, uid_t uid)=0
virtual int pauseScreenCapture()=0
virtual int setLocalCanvasWatermarkConfigs(NERtcVideoStreamType type, NERtcCanvasWatermarkConfig &config)=0
virtual int setRemoteCanvasWatermarkConfigs(uid_t uid, NERtcVideoStreamType type, NERtcCanvasWatermarkConfig &config)=0
virtual int setVideoConfig(NERtcVideoStreamType type, const NERtcVideoConfig &config)=0
virtual int setAudioSubscribeOnlyBy(uid_t *uid_array, uint32_t size)=0
virtual int stopScreenCapture()=0
virtual int setLocalVideoMirrorMode(NERtcVideoMirrorMode mirror_mode)=0
virtual int setExcludeWindowList(source_id_t *window_list, int count)=0
virtual const char * getChannelName()=0
virtual int setLocalRenderMode(NERtcVideoScalingMode scaling_mode)=0
virtual int enableLocalVideo(bool enabled)=0
virtual int adjustUserPlaybackSignalVolume(uid_t uid, int volume)=0
virtual int enableLocalSubStreamAudio(bool enabled)=0
virtual int startChannelMediaRelay(NERtcChannelMediaRelayConfiguration *config)=0
virtual int enableLocalAudio(bool enabled)=0
virtual int leaveChannel()=0
virtual int setLocalSubStreamRenderMode(NERtcVideoScalingMode scaling_mode)=0
virtual int startScreenCaptureByScreenRect(const NERtcRectangle &screen_rect, const NERtcRectangle &region_rect, const NERtcScreenCaptureParameters &capture_params)=0
virtual int subscribeRemoteVideoSubStream(uid_t uid, bool subscribe)=0
virtual int joinChannel(const char *token)=0
virtual int subscribeRemoteSubStreamAudio(uid_t uid, bool subscribe)=0
virtual void release()=0
virtual int enableMediaPub(bool enabled, NERtcMediaPubType media_type)=0
virtual int updateChannelMediaRelay(NERtcChannelMediaRelayConfiguration *config)=0
virtual int updateScreenCaptureRegion(const NERtcRectangle &region_rect)=0
virtual int setLocalMediaPriority(NERtcMediaPriorityType priority, bool is_preemptive)=0
virtual int setCameraCaptureConfig(const NERtcCameraCaptureConfig &config)=0
virtual int setVideoConfig(const NERtcVideoConfig &config)=0
virtual int setLocalVideoMirrorMode(NERtcVideoStreamType type, NERtcVideoMirrorMode mirror_mode)=0
virtual int setupLocalSubStreamVideoCanvas(NERtcVideoCanvas *canvas)=0
virtual int removeLiveStreamTask(const char *task_id)=0
virtual int takeRemoteSnapshot(uid_t uid, NERtcVideoStreamType stream_type, NERtcTakeSnapshotCallback *callback)=0
Definition: nertc_engine_media_stats_observer.h:30
Definition: nertc_engine_defines.h:5958
namespace nertc
NERtcClientRole
Definition: nertc_engine_defines.h:207
NERtcStreamFallbackOption
Definition: nertc_engine_defines.h:6403
NERtcVideoScalingMode
Definition: nertc_engine_defines.h:2037
NERtcVideoStreamType
Definition: nertc_engine_defines.h:5102
NERtcMediaPriorityType
Definition: nertc_engine_defines.h:269
NERtcConnectionStateType
Definition: nertc_engine_defines.h:2168
uint64_t uid_t
Definition: nertc_engine_defines.h:146
void * source_id_t
Definition: nertc_engine_defines.h:167
NERtcVideoMirrorMode
Definition: nertc_engine_defines.h:2079
NERtcMediaPubType
Definition: nertc_engine_defines.h:6977
NERtcRemoteVideoStreamType
Definition: nertc_engine_defines.h:1661
Defines macro output. The file only defines macro output instead of anything else.
NERTC SDK IRtcChannel回调接口头文件。 NERTC SDK所有接口参数说明: 所有与字符串相关的参数(char *)全部为UTF-8编码。
NERtc SDK definitions.
The interface header file of expansion callback of the NERTC SDK. All parameter descriptions of the N...
Definition: nertc_engine_defines.h:1535
Definition: nertc_engine_defines.h:5682
Definition: nertc_engine_defines.h:5539
Definition: nertc_engine_defines.h:927
Definition: nertc_engine_defines.h:3905
Definition: nertc_engine_defines.h:4029
Definition: nertc_engine_defines.h:4158
Definition: nertc_engine_defines.h:3524