5#ifndef INERtcEngineEx_h
6#define INERtcEngineEx_h
15#pragma clang diagnostic push
16#pragma clang diagnostic ignored "-Wdocumentation"
19NS_ASSUME_NONNULL_BEGIN
29@protocol INERtcEngineEx <INERtcEngine>
77- (int)enableDualStreamMode:(BOOL)enable;
232- (int)muteLocalAudio:(BOOL)muted;
289- (int)subscribeRemoteAudio:(BOOL)subscribe forUserID:(uint64_t)userID;
338- (int)subscribeAllRemoteAudio:(BOOL)subscribe;
368- (int)setAudioSubscribeOnlyBy:(NSArray<NSNumber*> *)uidArray;
394- (int)enableLocalSubStreamAudio:(BOOL)enabled;
451- (int)subscribeRemoteSubStreamAudio:(BOOL)subscribe forUserID:(uint64_t)userID;
477- (int)muteLocalSubStreamAudio:(BOOL)muted;
591- (int)setExternalSubStreamAudioSource:(BOOL)enabled sampleRate:(int32_t)sampleRate channels:(int32_t)channels;
1024 - (int)muteLocalVideo:(BOOL)muted;
1126- (int)setLoudspeakerMode:(
bool)enable;
1142- (int)getLoudspeakerMode:(
bool *)enabled;
1157- (int)startAudioDump;
1197- (int)stopAudioDump;
1233- (int)setRemoteHighPriorityAudioStream:(BOOL)enable forUserID:(uint64_t)userID streamType:(
NERtcAudioStreamType)streamType;
1290- (int)updatePermissionKey:(NSString *)key;
1342#pragma mark - External Video Input
1407- (int)setExternalVideoSource:(BOOL)enable isScreen:(BOOL)isScreen;
1522#pragma mark - Sub Stream
1651- (int)stopScreenCapture;
1763- (int)setupRemoteSubStreamVideoCanvas:(nullable
NERtcVideoCanvas *)canvas forUserID:(uint64_t)userID;
1818- (int)subscribeRemoteSubStreamVideo:(BOOL)subscribe forUserID:(uint64_t)userID;
1872#pragma mark - Audio Session
1896#pragma mark - Audio Device Manager
1938- (int)setPlayoutDeviceMute:(
bool)muted;
1953- (int)getPlayoutDeviceMute:(
bool *)muted;
2001- (int)setRecordDeviceMute:(
bool)muted;
2016- (int)getRecordDeviceMute:(
bool *)muted;
2019#pragma mark - Camera & Torch Settings
2035- (BOOL)isCameraZoomSupported;
2055- (BOOL)isCameraTorchSupported;
2073- (BOOL)isCameraFocusSupported;
2091- (BOOL)isCameraExposurePositionSupported;
2141- (int)setCameraExposurePosition:(CGPoint)positionInView;
2161- (int)setCameraTorchOn:(BOOL)on;
2175- (BOOL)isCameraTorchOn;
2223- (int)setCameraZoomFactor:(
float)factor;
2241 - (float)maxCameraZoomScale;
2296- (int)setCameraFocusPositionX:(
float)focusX Y:(
float)focusY;
2406#pragma mark - Audio Mixing
2492- (int)stopAudioMixing;
2520- (int)pauseAudioMixing;
2547- (int)resumeAudioMixing;
2561- (int)setAudioMixingSendVolume:(uint32_t)volume;
2577- (int)getAudioMixingSendVolume:(uint32_t *)volume;
2593- (int)setAudioMixingPlaybackVolume:(uint32_t)volume;
2609- (int)getAudioMixingPlaybackVolume:(uint32_t *)volume;
2625- (int)getAudioMixingDuration:(uint64_t *)duration;
2641- (int)getAudioMixingCurrentPosition:(uint64_t *)position;
2657- (int)setAudioMixingPosition:(uint64_t)position;
2700- (int)setAudioMixingPitch:(int32_t)pitch;
2722- (int)getAudioMixingPitch:(int32_t *)pitch;
2724#pragma mark - Audio Effect
2832- (int)stopEffectWitdId:(uint32_t)effectId;
2860- (int)stopAllEffects;
2876- (int)pauseEffectWitdId:(uint32_t)effectId;
2892- (int)resumeEffectWitdId:(uint32_t)effectId;
2906- (int)pauseAllEffects;
2920- (int)resumeAllEffects;
2938- (int)setEffectSendVolumeWithId:(uint32_t)effectId volume:(uint32_t)volume;
2956- (int)getEffectSendVolumeWithId:(uint32_t)effectId volume:(uint32_t *)volume;
2974- (int)setEffectPlaybackVolumeWithId:(uint32_t)effectId volume:(uint32_t)volume;
2990- (int)getEffectPlaybackVolumeWithId:(uint32_t)effectId volume:(uint32_t *)volume;
3012- (int)getEffectDurationWithId:(uint32_t)effectId duration:(uint64_t *)duration;
3034- (int)getEffectCurrentPositionWithId:(uint32_t)effectId position:(uint64_t *)position;
3076- (int)setEffectPositionWithId:(uint32_t)effectId position:(uint64_t)position;
3124- (int)setEffectPitchWithId:(uint32_t)effectId pitch:(int32_t)pitch;
3162- (int)getEffectPitchWithId:(uint32_t)effectId pitch:(int32_t *)pitch;
3164#pragma mark - In-ear monitoring
3216- (int)enableEarback:(BOOL)enabled volume:(uint32_t)volume;
3230- (int)setEarbackVolume:(uint32_t)volume;
3232#pragma mark - Audio Recording
3373- (int)stopAudioRecording;
3375#pragma mark - External Audio
3442- (int)setExternalAudioSource:(BOOL)enabled sampleRate:(int32_t)sampleRate channels:(int32_t)channels;
3535 - (int)setExternalAudioRender:(BOOL)enabled sampleRate:(int32_t)sampleRate channels:(int32_t)channels;
3562- (int)pullExternalAudioFrame:(
void *_Nonnull)data length:(
int)len;
3564#pragma mark - 3D Audio
3596-(int)setRangeAudioTeamID:(int32_t)teamId;
3616- (int)setAudioRecvRange:(
int)audibleDistance conversationalDistance:(
int)conversationalDistance rollOff:(
NERtcDistanceRolloffModel)rollOff;
3668- (int)enableSpatializerRoomEffects:(BOOL)enabled;
3707- (int)initSpatializer;
3725- (int)enableSpatializer:(BOOL)enabled applyToTeam:(BOOL)applyToTeam;
3727#pragma mark - ASL black and white list
3743- (int)setSubscribeAudioBlocklist:(
NERtcAudioStreamType)type uidArray:(NSArray<NSNumber*> *)uidArray;
3759- (int)setSubscribeAudioAllowlist:(NSArray<NSNumber*> *)uidArray;
3761#pragma mark - Data Channel
3791- (int)enableLocalData:(BOOL)enabled;
3821- (int)subscribeRemoteData:(BOOL)subscribe forUserID:(uint64_t)userID;
3841- (int)sendData:(NSData *)data;
3843#pragma mark - Media Statistic Observer
3857- (int)addEngineMediaStatsObserver:(
id<NERtcEngineMediaStatsObserver>)observer;
3871- (int)removeEngineMediaStatsObserver:(
id<NERtcEngineMediaStatsObserver>)observer;
3883- (int)cleanupEngineMediaStatsObserver;
3886#pragma mark - Live Stream
4057#pragma mark - Audio Frame Observer
4258- (int)setAudioFrameObserver:(nullable
id<NERtcEngineAudioFrameObserver>)observer;
4269- (int)setVideoFrameObserver:(nullable
id<NERtcEngineVideoFrameObserver>)videoframeObserver;
4272#pragma mark - Volume Indication
4324- (int)enableAudioVolumeIndication:(BOOL)enable interval:(uint64_t)interval;
4391- (int)enableAudioVolumeIndication:(BOOL)enable interval:(uint64_t)interval vad:(BOOL)enableVad;
4394#pragma mark - Signal Volume
4437- (int)adjustRecordingSignalVolume:(uint32_t)volume;
4482- (int)adjustPlaybackSignalVolume:(uint32_t)volume;
4539- (int)adjustUserPlaybackSignalVolume:(uint32_t)volume forUserID:(uint64_t)userID;
4576- (int)adjustChannelPlaybackSignalVolume:(uint32_t)volume;
4578#pragma mark - Voice Effect
4600- (int)setLocalVoicePitch:(
double)pitch;
4728#pragma mark - WaterMark
4754#pragma mark - Snapshot
4826- (int)uploadSdkInfo;
4837- (int)reportCustomEvent:(NSString *)eventName
4838 customIdentify:(NSString *)customIdentify
4839 param:(NSDictionary *)param;
4915- (int)sendSEIMsg:(NSData *)data;
4917#pragma mark- MediaRelay
5004- (int)stopChannelMediaRelay;
5031- (int)enableSuperResolution:(BOOL)enabled;
5065#pragma mark - NetworkQualiityTest
5114- (int)stopLastmileProbeTest;
5130- (nullable
NERtcChannel *)createChannel:(NSString *)channelName;
5132#pragma mark - Video Effect
5166- (int)enableVideoCorrection:(BOOL)enable;
5245#pragma mark - Cloud Proxy
5310- (void)setStreamAlignmentProperty:(BOOL)enable;
5326- (int64_t)getNtpTimeOffset;
5328#pragma mark - encoder & decoder
5367- (int)setPreDecodeObserver:(nullable
id<NERtcEnginePreDecodeObserver>)observer;
5407- (int)setVideoEncoderQosObserver:(nullable
id<NERtcEngineVideoEncoderQosObserver>)encoderQosObserver;
5618#pragma mark - push streaming
5744- (int)stopPushStreaming;
5748NS_ASSUME_NONNULL_END
5750#pragma clang diagnostic pop
void(^ NERtcTakeSnapshotCallback)(int errorCode, UIImage *_Nullable image)
截图结果 block 回调。
Definition INERtcEngine.h:64
void(^ NERtcLiveStreamCompletion)(NSString *taskId, kNERtcLiveStreamError errorCode)
互动直播推流 block。
Definition INERtcEngine.h:50
NERtcAudioEqualizationBandFrequency
频谱子带索引 预设值。
Definition NERtcEngineEnum.h:2193
NERtcAudioDumpType
音频 dump 类型
Definition NERtcEngineEnum.h:1752
NERtcVoiceChangerType
变声 预设值。
Definition NERtcEngineEnum.h:2294
NERtcSpatializerRenderMode
空间音效渲染模式
Definition NERtcEngineEnum.h:1896
NERtcDistanceRolloffModel
空间音效衰减模式
Definition NERtcEngineEnum.h:1922
NERtcVideoRotationMode
视频旋转模式。
Definition NERtcEngineEnum.h:770
NERtcAudioRecordingQuality
录音音质。
Definition NERtcEngineEnum.h:2027
NERtcCameraPosition
指定的摄像头位置。
Definition NERtcEngineEnum.h:1380
NERtcRemoteVideoStreamType
远端视频流类型。
Definition NERtcEngineEnum.h:656
NERtcStreamFallbackOptions
Definition NERtcEngineEnum.h:1983
NERtcRangeAudioMode
Definition NERtcEngineEnum.h:1941
NERtcFeatureType
功能类型
Definition NERtcEngineEnum.h:392
NERtcStreamChannelType
SEI 发送的流通道类型。
Definition NERtcEngineEnum.h:1063
NERtcAudioSessionOperationRestriction
音频会话控制权限。 SDK 对 Audio Session 的控制权限。
Definition NERtcEngineEnum.h:1705
NERtcTransportType
云代理模式。
Definition NERtcEngineEnum.h:3471
NERtcVoiceBeautifierType
美声 预设值。
Definition NERtcEngineEnum.h:2386
NERtcVideoRenderScaleMode
视频渲染缩放模式。
Definition NERtcEngineEnum.h:732
NERtcMediaPriorityType
Definition NERtcEngineEnum.h:1962
NERtcAudioStreamType
音频流类型,目前同时支持音频两路流:主流和辅流
Definition NERtcEngineEnum.h:1738
编码好的音频数据
Definition NERtcEngineBase.h:2950
音频帧。
Definition NERtcEngineBase.h:1519
Definition NERtcEngineBase.h:903
摄像头采集配置。
Definition NERtcEngineBase.h:488
Definition NERtcChannel.h:14
Options for creating audio effects
Definition NERtcEngineBase.h:806
Options for creating mixing audios
Definition NERtcEngineBase.h:688
配置媒体流加密模式和密钥。
Definition NERtcEngineBase.h:2182
Last mile 网络探测配置。
Definition NERtcEngineBase.h:2369
直播推流任务的配置。
Definition NERtcEngineBase.h:1308
3D 音效算法中坐标信息。
Definition NERtcEngineBase.h:3000
Definition NERtcEngineBase.h:3175
混响参数
Definition NERtcEngineBase.h:2671
3D 音效房间属性设置。
Definition NERtcEngineBase.h:3076
视频画布设置。
Definition NERtcEngineBase.h:296
视频图像畸变矫正相关设置。
Definition NERtcEngineBase.h:2570
Definition NERtcEngineBase.h:2908
视频帧信息。
Definition NERtcEngineBase.h:1609
本地辅流发送配置。
Definition NERtcEngineBase.h:648
视频水印设置,目前支持三种类型的水印,但只能其中选择一种水印生效。
Definition NERtcEngineBase.h:2128
自定义背景图像。
Definition NERtcEngineBase.h:2607