5#import <Foundation/Foundation.h>
9#import <CoreVideo/CoreVideo.h>
11#pragma clang diagnostic push
12#pragma clang diagnostic ignored "-Wdocumentation"
15NS_ASSUME_NONNULL_BEGIN
25@protocol NERtcEngineDelegate <NSObject>
43- (void)onNERtcEngineDidError:(
NERtcError)errCode;
63- (void)onNERtcEngineDidWarning:(
NERtcWarning)warnCode msg:(NSString *)msg;
65- (void)onNERtcEngineApiDidExecuted:(NSString *)apiName errCode:(
NERtcError)errCode msg:(NSString *)msg;
97- (void)onNERtcEngineDidLeaveChannelWithResult:(
NERtcError)result;
114- (void)onNERtcEngineDidDisconnectWithReason:(
NERtcError)reason;
128 - (void)onNERtcEngineRejoinChannel:(
NERtcError)result;
156 - (void)onNERtcEngineUserDidJoinWithUserID:(uint64_t)userID userName:(NSString *)userName;
199- (void)onNERtcEngineUserDidJoinWithUserID:(uint64_t)userID userName:(NSString *)userName joinExtraInfo:(nullable
NERtcUserJoinExtraInfo *)joinExtraInfo;
304- (void)onNERtcEngineReconnectingStart;
317- (void)onNERtcEngineUserAudioDidStart:(uint64_t)userID;
330- (void)onNERtcEngineUserAudioDidStop:(uint64_t)userID;
347- (void)onNERtcEngineUserVideoDidStartWithUserID:(uint64_t)userID videoProfile:(
NERtcVideoProfileType)profile;
362- (void)onNERtcEngineUserVideoDidStop:(uint64_t)userID;
378- (void)onNERtcEngineUserSubStreamDidStartWithUserID:(uint64_t)userID subStreamProfile:(
NERtcVideoProfileType)profile;
411- (void)onNERtcEngineUserSubStreamDidStop:(uint64_t)userID;
426- (void)onNERtcEngineUserVideoStreamDidStop:(uint64_t)userID streamType:(
NERtcStreamChannelType)streamType;
450- (void)onNERtcEngineMediaRightChangeWithAudio:(BOOL)isAudioBannedByServer
451 video:(BOOL)isVideoBannedByServer;
465- (void)onNERtcEngineUserSubStreamAudioDidStart:(uint64_t)userID;
479- (void)onNERtcEngineUserSubStreamAudioDidStop:(uint64_t)userID;
499- (void)onNERtcEngineUser:(uint64_t)userID subStreamAudioMuted:(BOOL)muted;
513@protocol NERtcEngineLiveStreamObserver <NSObject>
544@protocol NERtcEngineVideoFrameObserver <NSObject>
564- (void)onNERtcEngineVideoFrameCaptured:(CVPixelBufferRef)bufferRef rotation:(
NERtcVideoRotationType)rotation;
601 width:(uint32_t)width
602 height:(uint32_t)height
603 planeCount:(uint32_t)planeCount
604 offset:(int64_t *)offset
605 stride:(uint32_t *)stride
637- (void)onNERtcEnginePlayStreamingVideoFrame:(
void *)data
639 width:(uint32_t)width
640 height:(uint32_t)height
641 planeCount:(uint32_t)planeCount
642 offset:(int64_t *)offset
643 stride:(uint32_t *)stride
645 streamId:(NSString *)streamId;
657@protocol NERtcEngineAudioSessionObserver <NSObject>
687@protocol NERtcEngineVideoRenderSink <NSObject>
718@protocol NERtcEngineVideoSEIObserver <NSObject>
738- (void)onNERtcEngineRecvSEIMsg:(uint64_t)userID message:(NSData *)message;
742@protocol NERtcEnginePreDecodeObserver <NSObject>
770@protocol NERtcEngineVideoEncoderQosObserver <NSObject>
825- (void)onNERtcEngineBitrateUpdated:(
int)bitrateBps
860@protocol NERtcEnginePushStreamingObserver <NSObject>
916- (void)onNERtcEngineStartPushStreamingWithResult:(
NERtcError)result channelId:(uint64_t)channelId;
933- (void)onNERtcEngineStopPushStreaming:(
NERtcError)result;
951- (void)onNERtcEnginePushStreamingChangeToReconnectingWithReason:(
NERtcError)reason;
967- (void)onNERtcEnginePushStreamingReconnectedSuccess;
972@protocol NERtcEnginePlayStreamingObserver <NSObject>
1016- (void)onNERtcEnginePlayStreamingReceiveSeiMessage:(NSString*)streamId message:(NSString*)message;
1040- (void)onNERtcEnginePlayStreamingFirstVideoFrameRender:(NSString*)streamId timeMs:(int64_t)time_ms width:(uint32_t)width height:(uint32_t)height;
1060- (void)onNERtcEnginePlayStreamingFirstAudioFramePlayed:(NSString*)streamId timeMs:(int64_t)time_ms;
1071@protocol NERtcEngineDelegateEx <NERtcEngineDelegate,
1072NERtcEngineVideoFrameObserver,
1073NERtcEngineAudioSessionObserver,
1074NERtcEngineLiveStreamObserver,
1075NERtcEngineVideoSEIObserver,
1076NERtcEnginePushStreamingObserver,
1077NERtcEnginePlayStreamingObserver>
1095- (void)onNERtcEngineUserVideoProfileDidUpdate:(uint64_t)userID maxProfile:(
NERtcVideoProfileType)maxProfile;
1114- (void)onNERtcEngineUser:(uint64_t)userID videoMuted:(BOOL)muted;
1146- (void)onNERtcEngineUser:(uint64_t)userID videoMuted:(BOOL)muted streamType:(
NERtcStreamChannelType)streamType;
1161- (void)onNERtcEngineUser:(uint64_t)userID audioMuted:(BOOL)muted;
1177- (void)onNERtcEngineFirstVideoDataDidReceiveWithUserID:(uint64_t)userID;
1207- (void)onNERtcEngineFirstVideoDataDidReceiveWithUserID:(uint64_t)userID streamType:(
NERtcStreamChannelType)streamType;
1247- (void)onNERtcEngineRemoteVideoSizeDidChangedWithUserID:(uint64_t)userID width:(uint32_t)width height:(uint32_t)height streamType:(
NERtcStreamChannelType)streamType;
1282- (void)onNERtcEngineLocalVideoRenderSizeChanged:(
NERtcStreamChannelType)streamType width:(uint32_t)width height:(uint32_t)height;
1294- (void)onNERtcEngineFirstAudioDataDidReceiveWithUserID:(uint64_t)userID;
1307- (void)onEngineFirstAudioFrameDecoded:(uint64_t)userID;
1349- (void)onEngineFirstVideoFrameDecoded:(uint64_t)userID width:(uint32_t)width height:(uint32_t)height;
1386- (void)onEngineFirstVideoFrameDecoded:(uint64_t)userID width:(uint32_t)width height:(uint32_t)height streamType:(
NERtcStreamChannelType)streamType;
1428- (void)onEngineFirstVideoFrameRender:(uint64_t)userID width:(uint32_t)width height:(uint32_t)height elapsed:(uint64_t)elapsed streamType:(
NERtcStreamChannelType)streamType;
1515- (void)onAudioMixingTimestampUpdate:(uint64_t)timeStampMS;
1529- (void)onAudioEffectFinished:(uint32_t)effectId;
1558- (void)onAudioEffectTimestampUpdateWithId:(uint32_t)effectId timeStampMS:(uint64_t)timeStampMS;
1578- (void)onLocalAudioVolumeIndication:(
int)volume;
1598- (void)onLocalAudioVolumeIndication:(
int)volume withVad:(BOOL)enableVad;
1623-(void)onRemoteAudioVolumeIndication:(nullable NSArray<
NERtcAudioVolumeInfo*> *)speakers totalVolume:(
int)totalVolume;
1639- (void)onNERtcEngineHardwareResourceReleased:(
NERtcError)result;
1657- (void)onNERtcCameraFocusChanged:(CGPoint)focusPoint;
1673- (void)onNERtcCameraExposureChanged:(CGPoint)exposurePoint;
1691- (void)onNERtcEngineAudioHasHowling;
1706- (void)onNERtcEngineAudioHasHowling:(BOOL)flag;
1774- (void)onNERtcEngineLocalPublishFallbackToAudioOnly:(BOOL)isFallback streamType:(
NERtcStreamChannelType)streamType;
1799- (void)onNERtcEngineRemoteSubscribeFallbackToAudioOnly:(uint64_t)uid isFallback:(BOOL)isFallback streamType:(
NERtcStreamChannelType)streamType;
1884- (void)onNERtcEnginePermissionKeyWillExpire;
1918- (void)onNERtcEngineUpdatePermissionKey:(NSString *)key error:(
NERtcError)error timeout:(NSUInteger)timeout;
1932- (void)onNERtcEngineUserDataDidStart:(uint64_t)userID;
1944- (void)onNERtcEngineUserDataDidStop:(uint64_t)userID;
1958- (void)onNERtcEngineUserDataReceiveMessage:(uint64_t)userID data:(NSData *)data;
1970- (void)onNERtcEngineUserDataStateChanged:(uint64_t)userID;
1984- (void)onNERtcEngineUserDataBufferedAmountChanged:(uint64_t)userID previousAmount:(uint64_t)previousAmount;
1994- (void)onNERtcEngineLabFeatureDidCallbackWithKey:(NSString*)key param:(
id)param;
2004- (void)onNERtcEngineAiDataWithType:(NSString*)type data:(NSString*)data;
2017- (void)onNERtcEngineAsrCaptionStateChanged:(
NERtcAsrCaptionState)state code:(
int)code message:(NSString *)message;
2044@protocol NERtcEngineAudioFrameObserver <NSObject>
2111- (void)onNERtcEnginePlaybackAudioFrameBeforeMixingWithUserID:(uint64_t)userID frame:(
NERtcAudioFrame *)frame;
2133- (void)onNERtcEnginePlaybackAudioFrameBeforeMixingForPlayStreaming:(NSString*)playStreamId frame:(
NERtcAudioFrame *)frame;
2159- (void)onNERtcEnginePlaybackAudioFrameBeforeMixingWithUserID:(uint64_t)userID frame:(
NERtcAudioFrame *)frame channelId:(uint64_t)channelId;
2202- (void)onNERtcEngineSubStreamAudioFrameDidRecord:(
NERtcAudioFrame *)frame;
2226- (void)onNERtcEnginePlaybackSubStreamAudioFrameBeforeMixingWithUserID:(uint64_t)userID frame:(
NERtcAudioFrame *)frame channelId:(uint64_t)channelId;
2231@protocol NERtcEnginePacketObserver <NSObject>
2251- (BOOL)onReceiveAudioPacket:(
NERtcPacket *)packet;
2257- (BOOL)onReceiveVideoPacket:(
NERtcPacket *)packet;
2261NS_ASSUME_NONNULL_END
2263#pragma clang diagnostic pop
NERtcAudioMixingErrorCode
伴音错误码。
定义 NERtcEngineEnum.h:3221
NERtcAudioDeviceState
音频设备状态。
定义 NERtcEngineEnum.h:3747
NERtcVirtualBackgroundSourceStateReason
虚拟背景未成功启用的原因或确认成功的信息。
定义 NERtcEngineEnum.h:1174
NERtcVideoBufferType
定义 NERtcEngineEnum.h:1072
NERtcLivePlayStreamState
定义 NERtcEngineEnum.h:4303
NERtcAsrCaptionState
定义 NERtcEngineEnum.h:4274
NERtcChannelMediaRelayEvent
媒体流转发回调事件
定义 NERtcEngineEnum.h:3963
NERtcChannelMediaRelayState
媒体流转发状态
定义 NERtcEngineEnum.h:3916
NERtcVideoCodecType
定义 NERtcEngineEnum.h:2824
NERtcVideoFormatType
视频格式类型
定义 NERtcEngineEnum.h:1087
NERtcAudioDeviceType
音频设备类型。
定义 NERtcEngineEnum.h:3679
NERtcLocalVideoWatermarkState
视频水印状态。
定义 NERtcEngineEnum.h:1356
NERtcAudioOutputRouting
音频路由。
定义 NERtcEngineEnum.h:1973
NERtcAudioMixingState
伴音任务状态。
定义 NERtcEngineEnum.h:3192
NERtcSessionLeaveReason
用户离开房间的原因。
定义 NERtcEngineEnum.h:121
NERtcConnectionStateType
当前房间的连接状态。
定义 NERtcEngineEnum.h:45
NERtcVideoProfileType
视频 profile 类型。
定义 NERtcEngineEnum.h:447
NERtcNetworkConnectionType
网络连接的类型。
定义 NERtcEngineEnum.h:3378
NERtcAudioRecordingCode
录音回调状态码。
定义 NERtcEngineEnum.h:2710
NERtcNetworkQuality
网络质量类型。
定义 NERtcEngineEnum.h:3842
NERtcVideoDeviceState
视频设备状态无限制,SDK 可以完全控制 Audio Session。
定义 NERtcEngineEnum.h:3794
NERtcClientRole
用户角色。
定义 NERtcEngineEnum.h:206
NERtcStreamChannelType
SEI 发送的流通道类型。
定义 NERtcEngineEnum.h:1125
NERtcLiveStreamStateCode
直播推流状态。
定义 NERtcEngineEnum.h:3588
NERtcReasonConnectionChangedType
当前 engine 连接状态变更的原因。
定义 NERtcEngineEnum.h:255
NERtcVideoDeviceType
视频设备类型。
定义 NERtcEngineEnum.h:3717
NERtcAudioStreamType
音频流类型,目前同时支持音频两路流:主流和辅流
定义 NERtcEngineEnum.h:2338
NERtcVideoRotationType
视频数据的旋转方向
定义 NERtcEngineEnum.h:1033
NERtcError
Engine Error Code。
定义 NERtcEngineErrorCode.h:17
NERtcWarning
定义 NERtcEngineErrorCode.h:935
定义 NERtcEngineBase.h:3394
音频帧。
定义 NERtcEngineBase.h:1532
声音音量信息。
定义 NERtcEngineBase.h:1577
上下行 Last mile 网络质量探测结果。
定义 NERtcEngineBase.h:2536
定义 NERtcEngineBase.h:3164
编码完的媒体数据帧
定义 NERtcEngineBase.h:2914
视频帧信息。
定义 NERtcEngineBase.h:1622