NERtc Windows SDK  V5.3.1
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 
147  virtual int joinChannel(const char* token) = 0;
148 
211  virtual int joinChannel(const char* token, uid_t uid) = 0;
212 
267  virtual int joinChannel(const char* token, uid_t uid, NERtcJoinChannelOptions channel_options) = 0;
268 
309  virtual int leaveChannel() = 0;
310 
329  virtual int setStatsObserver(IRtcMediaStatsObserver* observer) = 0;
330 
390  virtual int enableLocalAudio(bool enabled) = 0;
391 
418  virtual int enableLocalSubStreamAudio(bool enabled) = 0;
419 
479  virtual int muteLocalAudioStream(bool mute) = 0;
480 
507  virtual int muteLocalSubStreamAudio(bool mute) = 0;
508 
567  virtual int enableLocalVideo(bool enabled) = 0;
568 
633  virtual int enableLocalVideo(NERtcVideoStreamType type, bool enabled) = 0;
634 
635 
694  virtual int muteLocalVideoStream(bool mute) = 0;
695 
754  virtual int muteLocalVideoStream(NERtcVideoStreamType type, bool mute) = 0;
755 
789  virtual int startScreenCaptureByScreenRect(const NERtcRectangle& screen_rect, const NERtcRectangle& region_rect, const NERtcScreenCaptureParameters& capture_params) = 0;
790 
822  virtual int startScreenCaptureByDisplayId(unsigned int display_id, const NERtcRectangle& region_rect, const NERtcScreenCaptureParameters& capture_params) = 0;
823 
858  virtual int startScreenCaptureByWindowId(source_id_t window_id, const NERtcRectangle& region_rect, const NERtcScreenCaptureParameters& capture_params) = 0;
859 
880  virtual int updateScreenCaptureRegion(const NERtcRectangle& region_rect) = 0;
881 
904  virtual int setScreenCaptureMouseCursor(bool capture_cursor) = 0;
905 
941  virtual int stopScreenCapture() = 0;
942 
962  virtual int pauseScreenCapture() = 0;
963 
981  virtual int resumeScreenCapture() = 0;
982 
983 
1009  virtual int setExcludeWindowList(source_id_t* window_list, int count) = 0;
1010 
1054 
1108  virtual int setupLocalVideoCanvas(NERtcVideoCanvas* canvas) = 0;
1109 
1110 
1135 
1179  virtual int setLocalRenderMode(NERtcVideoScalingMode scaling_mode) = 0;
1180 
1205 
1231  virtual int setLocalVideoMirrorMode(NERtcVideoMirrorMode mirror_mode) = 0;
1232 
1284 
1345  virtual int setupRemoteVideoCanvas(uid_t uid, NERtcVideoCanvas* canvas) = 0;
1346 
1412 
1435  virtual int setRemoteRenderMode(uid_t uid, NERtcVideoScalingMode scaling_mode) = 0;
1436 
1460  virtual int setRemoteSubSteamRenderMode(uid_t uid, NERtcVideoScalingMode scaling_mode) = 0;
1461 
1525  virtual int setClientRole(NERtcClientRole role) = 0;
1526 
1584  virtual int setLocalMediaPriority(NERtcMediaPriorityType priority, bool is_preemptive) = 0;
1585 
1599 
1655  virtual int setCameraCaptureConfig(const NERtcCameraCaptureConfig& config) = 0;
1656 
1708 
1770  virtual int setVideoConfig(const NERtcVideoConfig& config) = 0;
1771 
1824  virtual int setVideoConfig(NERtcVideoStreamType type, const NERtcVideoConfig& config) = 0;
1825 
1826 
1876  virtual int enableDualStreamMode(bool enable) = 0;
1877 
1936  virtual int subscribeRemoteAudioStream(uid_t uid, bool subscribe) = 0;
1937 
1997  virtual int subscribeRemoteSubStreamAudio(uid_t uid, bool subscribe) = 0;
1998 
2049  virtual int subscribeAllRemoteAudioStream(bool subscribe) = 0;
2050 
2081  virtual int setAudioSubscribeOnlyBy(uid_t* uid_array, uint32_t size) = 0;
2082 
2146  virtual int subscribeRemoteVideoStream(uid_t uid, NERtcRemoteVideoStreamType type, bool subscribe) = 0;
2147 
2211  virtual int subscribeRemoteVideoSubStream(uid_t uid, bool subscribe) = 0;
2212 
2297  virtual int addLiveStreamTask(const NERtcLiveStreamTaskInfo& info) = 0;
2298 
2351  virtual int updateLiveStreamTask(const NERtcLiveStreamTaskInfo& info) = 0;
2352 
2407  virtual int removeLiveStreamTask(const char* task_id) = 0;
2408 
2447  virtual int sendSEIMsg(const char* data, int length, NERtcVideoStreamType type) = 0;
2448 
2487  virtual int sendSEIMsg(const char* data, int length) = 0;
2488 
2519  virtual int takeLocalSnapshot(NERtcVideoStreamType stream_type, NERtcTakeSnapshotCallback *callback) = 0;
2520 
2551  virtual int takeRemoteSnapshot(uid_t uid, NERtcVideoStreamType stream_type, NERtcTakeSnapshotCallback *callback) = 0;
2552 
2611  virtual int adjustUserPlaybackSignalVolume(uid_t uid, int volume) = 0;
2612 
2642  virtual int adjustChannelPlaybackSignalVolume(uint32_t volume) = 0;
2643 
2673 
2697 
2727  virtual int stopChannelMediaRelay() = 0;
2728 
2754 
2780 
2813  virtual int setRemoteHighPriorityAudioStream(bool enabled, uid_t uid) = 0;
2814 
2839  virtual int setExternalVideoSource(bool enabled) = 0;
2840 
2868  virtual int setExternalVideoSource(NERtcVideoStreamType type, bool enabled) = 0;
2869 
2890  virtual int pushExternalVideoFrame(NERtcVideoFrame* frame) = 0;
2891 
2913 
2914 
2955  virtual int enableMediaPub(bool enabled, NERtcMediaPubType media_type) = 0;
2956 
2997  virtual int updatePermissionKey(const char* key) = 0;
2998 
2999  virtual int reportCustomEvent(const char* event_name, const char* custom_identify, const char* parameters) = 0;
3000 
3001  virtual int enableAudioVolumeIndication(bool enable, uint64_t interval, bool enable_vad) = 0;
3002 };
3003 } //namespace nertc
3004 
3005 #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 pushExternalVideoFrame(NERtcVideoFrame *frame)=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 joinChannel(const char *token, uid_t uid, NERtcJoinChannelOptions channel_options)=0
virtual int muteLocalSubStreamAudio(bool mute)=0
virtual int setRemoteHighPriorityAudioStream(bool enabled, uid_t uid)=0
virtual int pauseScreenCapture()=0
virtual int setVideoConfig(NERtcVideoStreamType type, const NERtcVideoConfig &config)=0
virtual int setAudioSubscribeOnlyBy(uid_t *uid_array, uint32_t size)=0
virtual int adjustChannelPlaybackSignalVolume(uint32_t volume)=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 updatePermissionKey(const char *key)=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 pushExternalVideoFrame(NERtcVideoStreamType type, NERtcVideoFrame *frame)=0
virtual int setLocalMediaPriority(NERtcMediaPriorityType priority, bool is_preemptive)=0
virtual int joinChannel(const char *token, uid_t uid)=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
virtual int setExternalVideoSource(bool enabled)=0
virtual int setExternalVideoSource(NERtcVideoStreamType type, bool enabled)=0
Definition: nertc_engine_media_stats_observer.h:30
Definition: nertc_engine_defines.h:6300
namespace nertc
NERtcClientRole
Definition: nertc_engine_defines.h:244
NERtcStreamFallbackOption
Definition: nertc_engine_defines.h:6745
NERtcVideoScalingMode
Definition: nertc_engine_defines.h:2074
NERtcVideoStreamType
Definition: nertc_engine_defines.h:5456
NERtcMediaPriorityType
Definition: nertc_engine_defines.h:306
NERtcConnectionStateType
Definition: nertc_engine_defines.h:2205
uint64_t uid_t
Definition: nertc_engine_defines.h:183
void * source_id_t
Definition: nertc_engine_defines.h:204
NERtcVideoMirrorMode
Definition: nertc_engine_defines.h:2116
NERtcMediaPubType
Definition: nertc_engine_defines.h:7353
NERtcRemoteVideoStreamType
Definition: nertc_engine_defines.h:1698
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:1572
Definition: nertc_engine_defines.h:5887
Definition: nertc_engine_defines.h:7314
Definition: nertc_engine_defines.h:964
Definition: nertc_engine_defines.h:3942
Definition: nertc_engine_defines.h:4066
Definition: nertc_engine_defines.h:4195
Definition: nertc_engine_defines.h:3561
Definition: nertc_engine_defines.h:4907