NERoom SDK V1.44.0
载入中...
搜索中...
未找到
rtc_ctrl_interface.h
浏览该文件的文档.
1// Copyright (c) 2022 NetEase, Inc. All rights reserved.
2// Use of this source code is governed by a MIT license that can be
3// found in the LICENSE file.
4
11#ifndef RTC_CTRL_INTERFACE_H
12#define RTC_CTRL_INTERFACE_H
13
15
16namespace neroom {
17
22public:
27
33
34public:
38 ~INERoomRtcController() override = default;
39
45 virtual void joinRtcChannel(const NERtcCallback& callback = NERtcCallback()) = 0;
46
53 virtual void joinRtcChannel(const std::string& channelName, const NERtcCallback& callback = NERtcCallback()) = 0;
54
60 virtual void leaveRtcChannel(const NERtcCallback& callback) = 0;
61
68 virtual void leaveRtcChannel(const std::string& channelName, const NERtcCallback& callback) = 0;
69
75 virtual void muteMyAudio(const NERtcCallback& callback = NERtcCallback()) = 0;
76
83 virtual void muteMyAudio(bool enableMediaPub = false, const NERtcCallback& callback = NERtcCallback()) = 0;
84
90 virtual void unmuteMyAudio(const NERtcCallback& callback = NERtcCallback()) = 0;
91
98 virtual void unmuteMyAudio(bool enableMediaPub = false, const NERtcCallback& callback = NERtcCallback()) = 0;
99
106 virtual int setupRemoteVideoCanvas(const std::string& userUuid, const NERoomVideoView& videoView) = 0;
107
113 virtual int setupLocalVideoSubStreamCanvas(const NERoomVideoView& videoView) = 0;
114
121 virtual int setupRemoteVideoSubStreamCanvas(const std::string& userUuid, const NERoomVideoView& videoView) = 0;
122
129 virtual int subscribeRemoteVideoStream(const std::string& userUuid, NEVideoStreamType streamType) = 0;
130
136 virtual int unsubscribeRemoteVideoStream(const std::string& userUuid) = 0;
137
143 virtual int subscribeRemoteVideoSubStream(const std::string& userUuid) = 0;
144
150 virtual int unsubscribeRemoteVideoSubStream(const std::string& userUuid) = 0;
151
159 virtual int subscribeRemoteVideoStreamByRtcUid(uint64_t rtcUid, NEVideoStreamType streamType, bool subscribe) = 0;
160
166 virtual int subscribeRemoteVideoSubStreamByRtcUid(uint64_t rtcUid, bool subscribe) = 0;
167
174 virtual int setupRemoteVideoCanvasByRtcUid(uint64_t rtcUid, const NERoomVideoView& videoView) = 0;
175
182 virtual int setupRemoteVideoSubStreamCanvasByRtcUid(uint64_t rtcUid, const NERoomVideoView& videoView) = 0;
183
189 virtual void muteMyVideo(const NERtcCallback& callback = NERtcCallback()) = 0;
190
196 virtual void unmuteMyVideo(const NERtcCallback& callback = NERtcCallback()) = 0;
197
205 ROOMKIT_DEPRECATED("use startAppShare with NERoomSourceID instead")
206 virtual void startAppShare(void* hwnd, bool preferMotion = false, const NERtcCallback& callback = NERtcCallback()) = 0;
207
216 virtual void startAppShare(NERoomSourceID sourceID, const NERoomScreenSharingOption& option, const NERtcCallback& callback = NERtcCallback()) = 0;
217
227 virtual void startAppShare(NERoomSourceID sourceID,
228 const NERoomScreenSharingOption& option,
229 bool stopCurrentShare = false,
230 const NERtcCallback& callback = NERtcCallback()) = 0;
231
239 virtual int switchAppShare(void* hwnd, bool preferMotion = false) = 0;
240
250 virtual void startScreenShare(const uint32_t& monitorId,
251 const std::list<void*>& excludedWindowList = std::list<void*>(),
252 bool preferMotion = false,
253 const NERtcCallback& callback = NERtcCallback()) = 0;
254
264 virtual void startScreenShare(NERoomSourceID sourceID,
265 const NERoomScreenSharingOption& option,
266 const std::list<void*>& excludedWindowList = std::list<void*>(),
267 const NERtcCallback& callback = NERtcCallback()) = 0;
268
279 virtual void startScreenShare(NERoomSourceID sourceID,
280 const NERoomScreenSharingOption& option,
281 const std::list<void*>& excludedWindowList = std::list<void*>(),
282 bool stopCurrentShare = false,
283 const NERtcCallback& callback = NERtcCallback()) = 0;
284
293 virtual int switchScreenShare(const uint32_t& monitorId, const std::list<void*>& excludedWindowList, bool preferMotion = false) = 0;
294
306 virtual void startRectShare(const NERectangle& sourceRectangle,
307 const NERectangle& regionRectangle,
308 const std::list<void*>& excludedWindowList = std::list<void*>(),
309 bool preferMotion = false,
310 const NERtcCallback& callback = NERtcCallback()) = 0;
311
323 virtual void startRectShare(const NERectangle& sourceRectangle,
324 const NERectangle& regionRectangle,
325 const std::list<void*>& excludedWindowList = std::list<void*>(),
326 bool preferMotion = false,
327 bool stopCurrentShare = false,
328 const NERtcCallback& callback = NERtcCallback()) = 0;
329
340 virtual void startRectShare(const NERectangle& sourceRectangle,
341 const NERectangle& regionRectangle,
342 const NERoomScreenSharingOption& option,
343 const std::list<void*>& excludedWindowList = std::list<void*>(),
344 const NERtcCallback& callback = NERtcCallback()) = 0;
345
357 virtual void startRectShare(const NERectangle& sourceRectangle,
358 const NERectangle& regionRectangle,
359 const NERoomScreenSharingOption& option,
360 const std::list<void*>& excludedWindowList = std::list<void*>(),
361 bool stopCurrentShare = false,
362 const NERtcCallback& callback = NERtcCallback()) = 0;
363
380 const NERectangle& regionRectangle,
381 const NERoomScreenSharingOption& option,
382 const NERtcCallback& callback = NERtcCallback()) = 0;
383
390 virtual int setExcludeWindowList(const std::list<void*>& excludedWindowList) = 0;
391
397 virtual void stopShare(const NERtcCallback& callback = NERtcCallback()) = 0;
398
404 virtual void pauseShare(const NERtcCallback& callback = NERtcCallback()) = 0;
405
411 virtual void resumeShare(const NERtcCallback& callback = NERtcCallback()) = 0;
412
418
424
431 virtual void muteMemberAudio(const std::string& userUuid, const NERtcCallback& callback = NERtcCallback()) = 0;
432
439 virtual void unmuteMemberAudio(const std::string& userUuid, const NERtcCallback& callback = NERtcCallback()) = 0;
440
447 virtual void muteMemberVideo(const std::string& userUuid, const NERtcCallback& callback = NERtcCallback()) = 0;
448
455 virtual void unmuteMemberVideo(const std::string& userUuid, const NERtcCallback& callback = NERtcCallback()) = 0;
456
464 virtual int enableMediaPub(NEMediaPubType mediaType, bool enable) = 0;
465
474 virtual int enableMediaPub(const std::string& channelName, NEMediaPubType mediaType, bool enable) = 0;
475
482 virtual void stopMemberShare(const std::string& userUuid, const NERtcCallback& callback = NERtcCallback()) = 0;
483
490 virtual void stopMemberSystemAudioShare(const std::string& userUuid, const NERtcCallback& callback = NERtcCallback()) = 0;
491
496 virtual std::string getScreenSharingUserUuid() const = 0;
497
507 virtual int setExternalAudioSource(bool enabled, int sampleRate, int channels) = 0;
508
514 virtual int pushExternalAudioFrame(const NERoomAudioFrame& frame) = 0;
515
526 virtual int adjustUserPlaybackSignalVolume(const std::string& userUuid, int volume) = 0;
527
536 virtual int enableEarBack(int volume) = 0;
537
542 virtual int disableEarBack() = 0;
543
552 virtual int startAudioMixing(const NERoomCreateAudioMixingOption& option) = 0;
553
559 virtual int pauseAudioMixing() = 0;
560
566 virtual int resumeAudioMixing() = 0;
567
574 virtual int stopAudioMixing() = 0;
575
583 virtual int setAudioMixingSendVolume(int volume) = 0;
584
592 virtual int setAudioMixingPlaybackVolume(int volume) = 0;
593
606 virtual int playEffect(uint32_t effectId, const NERoomCreateAudioEffectOption& option) = 0;
607
615 virtual int stopEffect(uint32_t effectId) = 0;
616
624 virtual int pauseEffect(uint32_t effectId) = 0;
625
633 virtual int resumeEffect(uint32_t effectId) = 0;
634
643 virtual int setEffectSendVolume(uint32_t effectId, int volume) = 0;
644
653 virtual int setEffectPlaybackVolume(uint32_t effectId, int volume) = 0;
654
661 virtual int stopAllEffects() = 0;
662
669 virtual int pauseAllEffects() = 0;
670
677 virtual int resumeAllEffects() = 0;
678
687 virtual void startChannelMediaRelay(const NERtcCallback& callback = NERtcCallback()) = 0;
688
698 virtual void startChannelMediaRelay(const std::string& roomUuid, const NERtcCallback& callback) = 0;
699
705 virtual int stopChannelMediaRelay() = 0;
706
715 virtual int setAudioSubscribeOnlyBy(const std::vector<std::string>& userUuids) = 0;
716
734 virtual int sendSEIMsg(const std::string& data, NERoomRtcVideoStreamType type) = 0;
735
741 virtual int enableLocalAudioSubStream() = 0;
742
748 virtual int disableLocalAudioSubStream() = 0;
749
755 virtual int pauseLocalAudioRecording() = 0;
756
762 virtual int resumeLocalAudioRecording() = 0;
763
769 virtual int pauseLocalVideoCapture() = 0;
770
776 virtual int resumeLocalVideoCapture() = 0;
777
785 virtual int setClientRole(NERoomRTCClientRole clientRole) = 0;
786
787 /*
788 * @brief 开启 RTC 媒体流加密
789 * @param libPath 动态库地址,必传;(Windows: .dll; Mac: .dylib; Linux: .so)
790 * @return int 0 是成功,其他为失败
791 * @since v1.39.0
792 */
793 virtual int enableCustomEncryption(const std::string& libPath) = 0;
794
795 /*
796 * 开启 RTC 媒体流加密
797 * @param key 加密密钥,由业务服务端生成密钥,必传
798 * @param encryptionType 加密方式,加密方式(目前仅支持 kNEEncryptionTypeGMCryptoSM4ECB)
799 * @return int 0 是成功,其他为失败
800 */
801 virtual int enableEncryption(const std::string& key, NEEncryptionType encryptionType) = 0;
802
807 virtual int disableEncryption() = 0;
808
814 virtual void disconnectMyAudio(const NERtcCallback& callback) = 0;
815
821 virtual void reconnectMyAudio(const NERtcCallback& callback) = 0;
822
830 virtual int adjustChannelPlaybackSignalVolume(int volume) = 0;
831
840 virtual int adjustChannelPlaybackSignalVolume(const std::string& channelName, int volume) = 0;
841
848 virtual int enableLocalAudio(const std::string& channelName, bool enable) = 0;
849
861 virtual int takeLocalSnapshot(NERoomRtcVideoStreamType stream_type, const NERoomTakeSnapshotCallback& callback) = 0;
862
874 virtual int takeRemoteSnapshot(const std::string& userUuid, NERoomRtcVideoStreamType stream_type, const NERoomTakeSnapshotCallback& callback) = 0;
875
881 virtual int enableCaption(bool enable) = 0;
888
895
901 virtual void startShareSystemAudio(const NERtcCallback& callback) = 0;
902
909 virtual void startShareSystemAudio(bool stopCurrentShare = false, const NERtcCallback& callback = NERtcCallback()) = 0;
914 virtual void stopShareSystemAudio(const NERtcCallback& callback) = 0;
920 virtual int enableLocalVideo(bool enable) = 0;
921
927 virtual int setCloudProxy(NERoomRtcTransportType transportType) = 0;
928
935};
936
937} // namespace neroom
938
939#endif // RTC_CTRL_INTERFACE_H
virtual void startAppShare(void *hwnd, bool preferMotion=false, const NERtcCallback &callback=NERtcCallback())=0
开始应用共享
virtual int setExternalAudioSource(bool enabled, int sampleRate, int channels)=0
开启或关闭外部音频源数据输入
virtual std::string getScreenSharingUserUuid() const =0
查询屏幕共享者用户Id
virtual int stopChannelMediaRelay()=0
停止跨房间媒体流转发
virtual int switchScreenShare(const uint32_t &monitorId, const std::list< void * > &excludedWindowList, bool preferMotion=false)=0
切换本地共享屏幕
virtual int setEffectSendVolume(uint32_t effectId, int volume)=0
设置音效文件发送音量。
virtual void reconnectMyAudio(const NERtcCallback &callback)=0
恢复音频,恢复音频后将恢复自己与其他人的音频互通,但是具体音频是否可听见还是取决于成员的mute状态
virtual int subscribeRemoteVideoStreamByRtcUid(uint64_t rtcUid, NEVideoStreamType streamType, bool subscribe)=0
订阅用户视频流
virtual void startScreenShare(const uint32_t &monitorId, const std::list< void * > &excludedWindowList=std::list< void * >(), bool preferMotion=false, const NERtcCallback &callback=NERtcCallback())=0
开启本地屏幕共享
virtual int takeRemoteSnapshot(const std::string &userUuid, NERoomRtcVideoStreamType stream_type, const NERoomTakeSnapshotCallback &callback)=0
virtual int enableLocalAudioSubStream()=0
开启音频辅流。
virtual int disableEncryption()=0
virtual void startChannelMediaRelay(const NERtcCallback &callback=NERtcCallback())=0
开始跨房间媒体流转发
virtual int setVideoStreamLayerCount(NERoomRtcVideoStreamLayerCount layerCount)=0
brief 设置视频流模式
virtual int enableEncryption(const std::string &key, NEEncryptionType encryptionType)=0
virtual int pauseAudioMixing()=0
暂停播放音乐文件及混音。
virtual int enableCustomEncryption(const std::string &libPath)=0
virtual int unsubscribeRemoteVideoStream(const std::string &userUuid)=0
取消订阅用户视频流
NECallback<> NERtcCallback
rtc操作结果回调
virtual int playEffect(uint32_t effectId, const NERoomCreateAudioEffectOption &option)=0
播放指定音效文件。
virtual int pauseLocalVideoCapture()=0
暂停本地视频采集
virtual int sendSEIMsg(const std::string &data, NERoomRtcVideoStreamType type)=0
发送媒体补充增强信息(SEI)。 在本端推流传输视频流数据同时,发送流媒体补充增强信息来同步一些其他附加信息。当推流方发送 SEI 后,拉流方可通过监听 onRtcRecvSEIMsg 的回调获取 S...
virtual void unmuteMemberAudio(const std::string &userUuid, const NERtcCallback &callback=NERtcCallback())=0
尝试打开成员音频,会进行权限校验
virtual int setAudioMixingPlaybackVolume(int volume)=0
调节伴奏播放音量。
virtual void stopShareSystemAudio(const NERtcCallback &callback)=0
停止本地系统音频共享
virtual void joinRtcChannel(const std::string &channelName, const NERtcCallback &callback=NERtcCallback())=0
加入音视频子房间。注意:在加入其他子房间前,需要先通过[joinRtcChannel]加入主房间。
virtual void leaveRtcChannel(const NERtcCallback &callback)=0
离开rtc主频道
virtual void unmuteMyVideo(const NERtcCallback &callback=NERtcCallback())=0
打开本端视频
virtual int setClientRole(NERoomRTCClientRole clientRole)=0
设置用户在 RTC 房间的角色
virtual void muteMyAudio(bool enableMediaPub=false, const NERtcCallback &callback=NERtcCallback())=0
开启本地静音,并根据 enableMediaPub 参数决定是否关闭本地上行音频流
virtual int setEffectPlaybackVolume(uint32_t effectId, int volume)=0
设置音效文件播放音量。
virtual int disableLocalAudioSubStream()=0
关闭音频辅流。
virtual void startRectShare(const NERectangle &sourceRectangle, const NERectangle &regionRectangle, const std::list< void * > &excludedWindowList=std::list< void * >(), bool preferMotion=false, const NERtcCallback &callback=NERtcCallback())=0
开始区域共享
virtual int takeLocalSnapshot(NERoomRtcVideoStreamType stream_type, const NERoomTakeSnapshotCallback &callback)=0
virtual int resumeEffect(uint32_t effectId)=0
恢复播放指定音效文件。
~INERoomRtcController() override=default
析构函数
virtual int pushExternalAudioFrame(const NERoomAudioFrame &frame)=0
推送外部音频数据输入
virtual int switchAppShare(void *hwnd, bool preferMotion=false)=0
切换应用共享
virtual void muteMemberVideo(const std::string &userUuid, const NERtcCallback &callback=NERtcCallback())=0
尝试关闭成员视频,会进行权限校验
virtual int setupLocalVideoSubStreamCanvas(const NERoomVideoView &videoView)=0
设置本地视频辅流画布
virtual int startSystemAudioLoopbackCapture()=0
屏幕共享时开始共享本地电脑声音
virtual int stopSystemAudioLoopbackCapture()=0
屏幕共享时关闭共享本地电脑声音
virtual void leaveRtcChannel(const std::string &channelName, const NERtcCallback &callback)=0
离开rtc子频道
virtual void pauseShare(const NERtcCallback &callback=NERtcCallback())=0
暂停共享
virtual int setCloudProxy(NERoomRtcTransportType transportType)=0
brief 开启/关闭云代理服务
virtual void startShareSystemAudio(const NERtcCallback &callback)=0
开启本地系统音频共享
virtual void unmuteMyAudio(const NERtcCallback &callback=NERtcCallback())=0
关闭本地静音,并开启本地上行音频流
virtual void stopMemberShare(const std::string &userUuid, const NERtcCallback &callback=NERtcCallback())=0
停止成员共享
virtual int setupRemoteVideoSubStreamCanvas(const std::string &userUuid, const NERoomVideoView &videoView)=0
设置远端视频辅流画布
virtual void resumeShare(const NERtcCallback &callback=NERtcCallback())=0
恢复共享
virtual void disconnectMyAudio(const NERtcCallback &callback)=0
断开音频,音频断开后将会中断自己与房间里其他人的音频互通。
virtual int enableCaption(bool enable)=0
virtual int setAudioSubscribeOnlyBy(const std::vector< std::string > &userUuids)=0
设置自己的音频只能被房间内指定的人订阅,默认房间所有其他人都可以订阅自己的音频。
virtual int subscribeRemoteVideoStream(const std::string &userUuid, NEVideoStreamType streamType)=0
订阅用户视频流
virtual int unsubscribeRemoteVideoSubStream(const std::string &userUuid)=0
取消订阅用户视频辅流
virtual int setCaptionTranslationConfig(const NERoomCaptionTranslationConfig &config)=0
设置字幕翻译配置 注意事项:区别于 [setCaptionTranslationLanguage],该接口可配置多源语言和多目标语言,且支持的语言更丰富。
virtual int adjustUserPlaybackSignalVolume(const std::string &userUuid, int volume)=0
调节本地播放的指定远端用户的信号音量
virtual void switchScreenCaptureSource(const NERoomScreenCaptureInfo &sourceInfo, const NERectangle &regionRectangle, const NERoomScreenSharingOption &option, const NERtcCallback &callback=NERtcCallback())=0
设置屏幕分享参数,该方法在屏幕分享过程中调用,用来快速切换采集源。 如果您期望在屏幕分享的过程中,切换想要分享的窗口,可以再次调用这个函数而不需要重新开启屏幕分享。 支持如下四种情况:
virtual int resumeAllEffects()=0
恢复播放所有音效文件。
virtual void muteMyVideo(const NERtcCallback &callback=NERtcCallback())=0
关闭本端视频
virtual int setupRemoteVideoCanvas(const std::string &userUuid, const NERoomVideoView &videoView)=0
设置远端视频画布
virtual int startAudioMixing(const NERoomCreateAudioMixingOption &option)=0
开始播放音乐文件。
virtual int stopAllEffects()=0
停止播放所有音效文件。
virtual void stopMemberSystemAudioShare(const std::string &userUuid, const NERtcCallback &callback=NERtcCallback())=0
停止成员音频共享
virtual void muteMemberAudio(const std::string &userUuid, const NERtcCallback &callback=NERtcCallback())=0
尝试关闭成员音频,会进行权限校验
virtual int enableMediaPub(NEMediaPubType mediaType, bool enable)=0
开启或关闭本地媒体流(主流)的发送。 该方法用于开始或停止向网络发送本地音频或视频数据。 该方法不影响接收或播放远端媒体流,也不会影响本地音频或视频的采集状态。
virtual void stopShare(const NERtcCallback &callback=NERtcCallback())=0
停止本地共享
virtual void unmuteMyAudio(bool enableMediaPub=false, const NERtcCallback &callback=NERtcCallback())=0
关闭本地静音,并根据 enableMediaPub 参数决定是否开启本地上行音频流
virtual int stopAudioMixing()=0
停止播放音乐文件及混音。
virtual int disableEarBack()=0
关闭耳返功能。
virtual int enableEarBack(int volume)=0
开启耳返功能。
NECallback< NERoomTakeSnapshotInfo > NERoomTakeSnapshotCallback
截图结果回调
virtual int setExcludeWindowList(const std::list< void * > &excludedWindowList)=0
设置共享时排除的窗口列表
virtual void unmuteMemberVideo(const std::string &userUuid, const NERtcCallback &callback=NERtcCallback())=0
尝试打开成员视频,会进行权限校验
virtual int pauseEffect(uint32_t effectId)=0
暂停音效文件播放。
virtual int setupRemoteVideoCanvasByRtcUid(uint64_t rtcUid, const NERoomVideoView &videoView)=0
根据 rtcUid 设置远端视频主流渲染器
virtual int enableLocalVideo(bool enable)=0
brief 开启/关闭本地视频设备
virtual int setupRemoteVideoSubStreamCanvasByRtcUid(uint64_t rtcUid, const NERoomVideoView &videoView)=0
根据 rtcUid 设置远端视频辅流渲染器
virtual int subscribeRemoteVideoSubStreamByRtcUid(uint64_t rtcUid, bool subscribe)=0
根据 rtcUid 订阅/取消订阅远端视频辅流
virtual int pauseLocalAudioRecording()=0
暂停本地麦克风采集,调用后远端用户听不到本端声音
virtual int setAudioMixingSendVolume(int volume)=0
调节伴奏发送音量。
virtual int resumeLocalAudioRecording()=0
恢复本地麦克风采集,调用后远端用户可以听到本端声音
virtual void joinRtcChannel(const NERtcCallback &callback=NERtcCallback())=0
加入rtc主频道
virtual int enableLocalAudio(const std::string &channelName, bool enable)=0
virtual int stopEffect(uint32_t effectId)=0
停止播放指定音效文件。
virtual int subscribeRemoteVideoSubStream(const std::string &userUuid)=0
订阅用户视频辅流
virtual int resumeLocalVideoCapture()=0
恢复本地视频采集
virtual int resumeAudioMixing()=0
恢复播放音乐文件及混音。
virtual int setCaptionTranslationLanguage(NERoomCaptionTranslationLanguage language)=0
设置字幕 设置字幕翻译语言。默认为 [NERoomCaptionTranslationLanguage.NONE],即不翻译。
virtual void muteMyAudio(const NERtcCallback &callback=NERtcCallback())=0
开启本地静音,并关闭本地上行音频流
virtual int adjustChannelPlaybackSignalVolume(int volume)=0
调节对应房间本地播放的所有远端用户的信号音量。通过此接口可以实现调节所有远端用户在本地播放的混音音量。
virtual int pauseAllEffects()=0
暂停所有音效文件播放。
#define ROOMKIT_DEPRECATED(message)
struct tagNERectangle { tagNERectangle() :x(0), y(0), width(0), height(0) {} int x; int y; int width; int height; } NERectangle
共享区域,待共享区域相对于整个屏幕或窗口的位置
enum tagNEVideoStreamType { kStreamTypeHigh, kStreamLow, kStreamMid } NEVideoStreamType
视频流类型
struct tagNERoomScreenSharingOption { bool enableHighPerformance{true}; NERoomScreenSharingHighlight highlight; bool preferMotion{true}; NERoomDegradationPreference degradationPreference{kNERoomDegradationDefault}; int limitFrameRate{30}; std::string videoProfile; int frameRate{0}; int bitrate{0};} NERoomScreenSharingOption
屏幕共享选项
void * NERoomSourceID
enum tagNERoomRtcVideoStreamLayerCount { kNERoomRtcVideoStreamLayerCountOne=1, kNERoomRtcVideoStreamLayerCountTwo=2, kNERoomRtcVideoStreamLayerCountThree=3, } NERoomRtcVideoStreamLayerCount
设置视频流模式
NEEncryptionType
RTC 流加密类型
enum tagNERoomCaptionTranslationLanguage { kNone=0, kChinese, kEnglish, kJapanese } NERoomCaptionTranslationLanguage
字幕目标翻译语言枚举
enum tagNEMediaPubType { kNEMediaPubTypeAudio } NEMediaPubType
媒体 Pub 类型,目前仅支持音频
struct tagNERoomVideoView { bool setup=false; void *window=nullptr; NEVideoScalingMode scalingMode=kVideoScaleFit; NEVideoMirrorMode mirrorMode=kVideoMirrorModeDisabled; } NERoomVideoView
视频画布
struct tagNERoomCreateAudioEffectOption { std::string path; int loopCount=1; bool sendEnabled=true; uint32_t sendVolume=100; bool playbackEnabled=true; uint32_t playbackVolume=100;} NERoomCreateAudioEffectOption
std::function< void(int, const std::string &, const TResultParam &...)> NECallback
通用回调
struct tagNERoomCreateAudioMixingOption { std::string path; int loopCount=1; bool sendEnabled=true; uint32_t sendVolume=100; bool playbackEnabled=true; uint32_t playbackVolume=100; uint64_t startTimestamp=0; NERoomRtcAudioStreamType sendWithAudioType=kNERoomRtcAudioStreamTypeMain;} NERoomCreateAudioMixingOption
创建混音的配置项
enum tagNERoomRTCClientRole { kRoomRTCClientRoleBroadcaster, kRoomRTCClientRoleAudience } NERoomRTCClientRole
struct tagNERoomAudioFrame { NEAudioFormat format; void *data=nullptr; int64_t syncTimestamp=0; } NERoomAudioFrame
外部输入的音频帧
enum tagNERoomRtcTransportType { kNERoomRtcTransportTypeNoneProxy=0, kNERoomRtcTransportTypeUDPProxy=1, } NERoomRtcTransportType
云代理模式
struct tagNERoomScreenCaptureInfo { NERoomScreenCaptureSourceType type; NERoomSourceID sourceID; std::string title; std::string sourceName; std::string processPath; NERoomThumbImage thumbImage; NERoomThumbImage icon; bool primaryMonitor;} NERoomScreenCaptureInfo
被共享数据源信息
enum tagNERoomRtcVideoStreamType { kNEVideoStreamMain=0, kNEVideoStreamSub=1, kNEVideoStreamCount, } NERoomRtcVideoStreamType
视频流类型
房间外rtc控制器接口头文件