9 #ifndef INERtcChannel_h
10 #define INERtcChannel_h
12 #import <Foundation/Foundation.h>
17 #pragma clang diagnostic push
18 #pragma clang diagnostic ignored "-Wdocumentation"
20 NS_ASSUME_NONNULL_BEGIN
73 - (int)setDelegateQueue:(nullable dispatch_queue_t)delegateQueue;
178 - (int)joinChannelWithToken:(NSString *)token
257 - (int)joinChannelWithToken:(NSString *)token
337 - (int)joinChannelWithToken:(NSString *)token
340 completion:(
void(^)(NSError * _Nullable error, uint64_t channelId, uint64_t elapesd, uint64_t uid,
NERtcJoinChannelExtraInfo * _Nullable info))completion;
432 - (int)enableLocalAudio:(BOOL)enabled;
485 - (int)enableLocalVideo:(BOOL)enabled;
632 - (int)enableDualStreamMode:(BOOL)enable;
956 - (int)subscribeRemoteAudio:(BOOL)subscribe forUserID:(uint64_t)userID;
1006 - (int)subscribeAllRemoteAudio:(BOOL)subscribe;
1036 - (int)setAudioSubscribeOnlyBy:(NSArray<NSNumber*> *)uidArray;
1087 - (int)muteLocalAudio:(BOOL)muted;
1123 - (int)enableAudioVolumeIndication:(BOOL)enable interval:(uint64_t)interval vad:(BOOL)enableVad;
1281 - (int)setupRemoteVideoCanvas:(
NERtcVideoCanvas * _Nullable)canvas forUserID:(uint64_t)userID;
1450 - (int)muteLocalVideo:(BOOL)muted;
1708 - (int)adjustUserPlaybackSignalVolume:(uint32_t)volume forUserID:(uint64_t)userID;
1745 - (int)adjustChannelPlaybackSignalVolume:(uint32_t)volume;
1747 #pragma mark - Audio Sub Stream
1773 - (int)enableLocalSubStreamAudio:(BOOL)enabled;
1830 - (int)subscribeRemoteSubStreamAudio:(BOOL)subscribe forUserID:(uint64_t)userID;
1856 - (int)muteLocalSubStreamAudio:(BOOL)muted;
1859 #pragma mark - Sub Stream
1909 - (int)setupLocalSubStreamVideoCanvas:(
NERtcVideoCanvas * _Nullable)canvas;
2105 - (int)setupRemoteSubStreamVideoCanvas:(
NERtcVideoCanvas * _Nullable)canvas forUserID:(uint64_t)userID;
2161 - (int)subscribeRemoteSubStreamVideo:(BOOL)subscribe forUserID:(uint64_t)userID;
2250 - (int)setRemoteHighPriorityAudioStream:(BOOL)enable forUserID:(uint64_t)userID streamType:(
NERtcAudioStreamType)streamType;
2252 #pragma mark - 3D Audio
2272 -(int)setRangeAudioTeamID:(int32_t)teamId;
2285 - (int)setAudioRecvRange:(
int)audibleDistance conversationalDistance:(
int)conversationalDistance rollOff:(
NERtcDistanceRolloffModel)rollOff;
2337 - (int)enableSpatializerRoomEffects:(BOOL)enabled;
2390 - (int)enableSpatializer:(BOOL)enabled applyToTeam:(BOOL)applyToTeam;
2392 #pragma mark - ASL black and white list
2408 - (int)setSubscribeAudioBlocklist:(
NERtcAudioStreamType)type uidArray:(NSArray<NSNumber*> *)uidArray;
2424 - (int)setSubscribeAudioAllowlist:(NSArray<NSNumber*> *)uidArray;
2426 #pragma mark - Snapshot
2565 - (int)sendSEIMsg:(NSData *)data;
2567 #pragma mark - Live Stream
3024 - (int)updatePermissionKey:(NSString *)key;
3026 #pragma mark - Other
3037 - (int)reportCustomEvent:(NSString *)eventName
3038 customIdentify:(NSString *)customIdentify
3039 param:(NSDictionary *)param;
3043 NS_ASSUME_NONNULL_END
3045 #pragma clang diagnostic pop
void(^ NERtcTakeSnapshotCallback)(int errorCode, UIImage *_Nullable image)
截图结果 block 回调。
Definition: INERtcEngine.h:64
void(^ NERtcJoinChannelCompletion)(NSError *_Nullable error, uint64_t channelId, uint64_t elapesd, uint64_t uid)
加入房间 block。
Definition: INERtcEngine.h:36
void(^ NERtcLiveStreamCompletion)(NSString *taskId, kNERtcLiveStreamError errorCode)
互动直播推流 block。
Definition: INERtcEngine.h:50
NERtcMediaPubType
媒体 pub 类型。
Definition: NERtcEngineEnum.h:235
NERtcSpatializerRenderMode
空间音效渲染模式
Definition: NERtcEngineEnum.h:1864
NERtcDistanceRolloffModel
空间音效衰减模式
Definition: NERtcEngineEnum.h:1890
NERtcConnectionStateType
当前房间的连接状态。
Definition: NERtcEngineEnum.h:45
NERtcCameraPosition
指定的摄像头位置。
Definition: NERtcEngineEnum.h:1380
NERtcRemoteVideoStreamType
远端视频流类型。
Definition: NERtcEngineEnum.h:656
NERtcStreamFallbackOptions
Definition: NERtcEngineEnum.h:1951
NERtcRangeAudioMode
Definition: NERtcEngineEnum.h:1909
NERtcClientRole
用户角色。
Definition: NERtcEngineEnum.h:206
NERtcStreamChannelType
SEI发送的流通道类型。
Definition: NERtcEngineEnum.h:1063
NERtcVideoRenderScaleMode
视频渲染缩放模式。
Definition: NERtcEngineEnum.h:732
NERtcMediaPriorityType
Definition: NERtcEngineEnum.h:1930
NERtcAudioStreamType
音频流类型,目前同时支持音频两路流:主流和辅流
Definition: NERtcEngineEnum.h:1706
摄像头采集配置。
Definition: NERtcEngineBase.h:488
joinChannel 时的一些可选信息
Definition: NERtcEngineBase.h:2738
直播推流任务的配置。
Definition: NERtcEngineBase.h:1308
3D音效算法中坐标信息。
Definition: NERtcEngineBase.h:2976
3D音效房间属性设置。
Definition: NERtcEngineBase.h:3051
视频画布设置。
Definition: NERtcEngineBase.h:296
本地视频发送配置
Definition: NERtcEngineBase.h:542
视频帧信息。
Definition: NERtcEngineBase.h:1607
本地辅流发送配置。
Definition: NERtcEngineBase.h:648
INERtcChannel 类在指定房间中实现实时音视频功能。通过创建多个 NERtcChannel 对象,用户可以同时加入多个房间。
Definition: INERtcChannel.h:32
int switchCamera()
切换前置/后置摄像头。 该方法需要在相机启动后调用,例如调用 startPreview 或 joinChannel 后。
int initSpatializer()
初始化引擎3D音效算法
int leaveChannel()
离开音视频房间。 通过本接口可以实现挂断或退出通话,并释放本房间内的相关资源。
int stopScreenCapture()
关闭屏幕共享。 通过此接口可以实现关闭屏幕共享辅流。
NERtcConnectionStateType connectionState()
获取当前房间连接状态。
int stopChannelMediaRelay()
停止跨房间媒体流转发。 通常在主播离开房间时,跨房间媒体流转发会自动停止;您也可以根据需要随时调用该方法,此时主播会退出所有目标房间。
int cleanupChannelMediaStatsObserver()
清除全部媒体统计信息观测器。
NSString * getChannelName()
获取当前房间名。
NERtcChannelDelegate 类监听和报告指定房间的事件和数据。
Definition: NERtcChannelDelegate.h:30