NERtc iOS SDK V5.6.20
载入中...
搜索中...
未找到
NERtcEngineBase.h
浏览该文件的文档.
1/*
2 * Copyright (c) 2021 NetEase, Inc. All rights reserved.
3 */
4
5#import <Foundation/Foundation.h>
6#import "NERtcEngineEnum.h"
7
8@protocol NERtcEngineVideoRenderSink;
9@protocol NERtcEnginePacketObserver;
10
11NS_ASSUME_NONNULL_BEGIN
12
22// channel
36
37// video
101
112NERTC_EXTERN_API NSString * const kNERtcKeyAutoSubscribeVideo; // BOOL -- 其他用户打开视频时,自动订阅。只支持在通话前设置,通话中设置无效。 默认值 NO。
113
114// audio
128
129// data channel
143
156
164
196
197
198// server record
235
236// live stream
248
249// log level
268
276
283
284
286
295NERTC_EXPORT @interface NERtcVideoCanvas : NSObject
296
305@property (nonatomic, assign) BOOL useExternalRender;
306
315@property (nonatomic, nullable, strong) VIEW_CLASS *container;
316
325@property (nonatomic, assign) NERtcVideoRenderScaleMode renderMode;
326
339@property (nonatomic, assign) NERtcVideoMirrorMode mirrorMode;
340
349@property (nonatomic, strong) id<NERtcEngineVideoRenderSink> externalVideoRender;
350
351// 背景颜色,格式为 0xRRGGBB,默认为黑色即 0x000000
352@property (nonatomic, assign) uint32_t backgroundColor;
353
354@end
355
365
374@property (nonatomic, assign) NERtcVideoProfileType maxProfile;
375
392@property (nonatomic, assign) NERtcVideoFrameRate frameRate;
393
402@property (nonatomic, assign) NSInteger minFrameRate;
403
465@property (nonatomic, assign) NSInteger bitrate;
466
475@property (nonatomic, assign) NSInteger minBitrate;
476
477@end
478
488
509@property (nonatomic, assign) int captureWidth;
530@property (nonatomic, assign) int captureHeight;
531
532@end
542
559@property (nonatomic, assign) int width;
560
577@property (nonatomic, assign) int height;
578
587@property (nonatomic, assign) NERtcVideoCropMode cropMode;
588
609@property (nonatomic, assign) NERtcDegradationPreference degradationPreference;
610
622@property (nonatomic, assign) NERtcVideoMirrorMode mirrorMode;
623
634@property (nonatomic, assign) NERtcVideoOutputOrientationMode orientationMode;
635
636
637@end
638
648
657@property (nonatomic, assign) NERtcSubStreamContentPrefer contentPrefer;
658
679@property (nonatomic, assign) NERtcDegradationPreference degradationPreference;
680
681@end
682
685
688
701@property (nonatomic, copy) NSString *path;
702
715@property (nonatomic, assign) int loopCount;
716
725@property (nonatomic, assign) BOOL sendEnabled;
726
735@property (nonatomic, assign) BOOL playbackEnabled;
736
747@property (nonatomic, assign) uint32_t sendVolume;
748
759@property (nonatomic, assign) uint32_t playbackVolume;
760
769@property (nonatomic, assign) int64_t startTimeStamp;
770
779@property (nonatomic, assign) NERtcAudioStreamType sendWithAudioType;
780
786@property (nonatomic, assign) uint64_t progressInterval;
787
800- (BOOL)isInvalid;
801
802@end
803
806
819@property (nonatomic, copy) NSString *path;
820
833@property (nonatomic, assign) int loopCount;
834
843@property (nonatomic, assign) BOOL sendEnabled;
844
853@property (nonatomic, assign) BOOL playbackEnabled;
854
865@property (nonatomic, assign) uint32_t sendVolume;
866
877@property (nonatomic, assign) uint32_t playbackVolume;
878
884@property (nonatomic, assign) int64_t startTimeStamp;
885
891@property (nonatomic, assign) NERtcAudioStreamType sendWithAudioType;
892
898@property (nonatomic, assign) uint64_t progressInterval;
899
900@end
901
903
904// 录音文件在本地保存的绝对路径,需要精确到文件名及格式。例如:sdcard/xxx/audio.aac。请确保指定的路径存在并且可写。目前仅支持 WAV 或 AAC 文件格式。
905@property (nonatomic, copy) NSString *filePath;
906
907// 录音采样率(Hz),可以设为 16000、32000(默认)、44100 或 48000。
908@property (nonatomic, assign) int sampleRate;
909
910// 录音音质,只在 AAC 格式下有效。详细信息请参考 {@link NERtcAudioRecordingQuality}。
911@property (nonatomic, assign) NERtcAudioRecordingQuality quality;
912
913// 录音文件所包含的内容。详细信息请参考 {@link NERtcAudioRecordingPosition}。
914@property (nonatomic, assign) NERtcAudioRecordingPosition position;
915
916// 录制过程中,循环缓存的最大时间长度,单位(s)。详细信息请参考 {@link NERtcAudioRecordingCycleTime}。
917@property (nonatomic, assign) NERtcAudioRecordingCycleTime cycleTime;
918
919@end
920
921#pragma mark - live stream
930NERTC_EXPORT @interface NERtcLiveConfig: NSObject
931
940@property (nonatomic, assign) BOOL interruptedPlaceImage;
941
954@property (nonatomic, assign) BOOL singleVideoPassthrough;
967@property (nonatomic, assign) NSInteger audioBitrate;
968
983@property (nonatomic, assign) NERtcLiveStreamAudioSampleRate sampleRate;
984
997@property (nonatomic, assign) NSInteger channels;
998
1011@property (nonatomic, assign) NERtcLiveStreamAudioCodecProfile audioCodecProfile;
1012
1013@end
1014
1024
1033@property (nonatomic, assign) uint64_t uid;
1034
1049@property (nonatomic, assign) BOOL videoPush;
1050
1063@property (nonatomic, assign) NSInteger x;
1064
1077@property (nonatomic, assign) NSInteger y;
1078
1091@property (nonatomic, assign) NSInteger width;
1092
1105@property (nonatomic, assign) NSInteger height;
1106
1119@property (nonatomic, assign) BOOL audioPush;
1120
1129@property (nonatomic, assign) NSInteger zOrder;
1130
1139@property (nonatomic, assign) NERtcLiveStreamVideoScaleMode adaption;
1140
1141@end
1142
1152
1161@property (nonatomic, copy) NSString *url;
1162
1175@property (nonatomic, assign) NSInteger x;
1176
1189@property (nonatomic, assign) NSInteger y;
1190
1201@property (nonatomic, assign) NSInteger width;
1202
1213@property (nonatomic, assign) NSInteger height;
1214
1224@property (nonatomic, assign) int zorder;
1225
1226@end
1227
1237
1246@property (nonatomic, assign) NSInteger width;
1247
1256@property (nonatomic, assign) NSInteger height;
1257
1266@property (nonatomic, assign) NSUInteger backgroundColor;
1267
1276@property (nonatomic, strong) NSArray<NERtcLiveStreamUserTranscoding *> * users;
1277
1287@property (nonatomic, nullable, strong) NERtcLiveStreamImageInfo* bgImage;
1288
1295@property (nonatomic, nullable, strong) NSArray<NERtcLiveStreamImageInfo*> * bgImages;
1296
1297@end
1298
1308
1317@property (nonatomic, copy) NSString *taskID;
1318
1329@property (nonatomic, copy) NSString *streamURL;
1330
1339@property (nonatomic, assign) BOOL serverRecordEnabled;
1340
1349@property (nonatomic, assign) NERtcLiveStreamMode lsMode;
1350
1359@property (nonatomic, nullable, strong) NERtcLiveStreamLayout *layout;
1360
1369@property (nonatomic, nullable, strong) NERtcLiveConfig *config;
1370
1379@property (nonatomic, nullable, copy) NSString *extraInfo;
1380
1389- (BOOL)isInvalid;
1390
1391@end
1392
1393
1394#pragma mark -- Audio Frame Observer
1404
1419@property (nonatomic, assign) uint32_t channels;
1420
1429@property (nonatomic, assign) uint32_t sampleRate;
1430
1439@property (nonatomic, assign) NERtcAudioFrameOpMode mode;
1440
1441@end
1442
1451NERTC_EXPORT @interface NERtcAudioFormat : NSObject
1452
1461@property (nonatomic, assign) NERtcAudioType type;
1474@property (nonatomic, assign) uint32_t channels;
1475
1484@property (nonatomic, assign) uint32_t sampleRate;
1485
1494@property (nonatomic, assign) uint32_t bytesPerSample;
1495
1504@property (nonatomic, assign) uint32_t samplesPerChannel;
1505
1506@end
1507
1516NERTC_EXPORT @interface NERtcAudioFrame : NSObject
1517
1526@property (nonatomic, strong) NERtcAudioFormat* format;
1527
1536@property (nonatomic, assign) void* data;
1537
1546@property (nonatomic, assign) int64_t syncTimestamp;
1547
1548@end
1549
1550
1551#pragma mark - Volume info
1552
1562
1571@property (nonatomic, assign) uint64_t uid;
1572
1581@property (nonatomic, assign) unsigned int volume;
1582
1592@property (nonatomic, assign) unsigned int subStreamVolume;
1593
1594@end
1595
1596#pragma mark - Video Frame
1597
1606NERTC_EXPORT @interface NERtcVideoFrame : NSObject
1607
1617@property(nonatomic, assign) NERtcVideoFormatType format;
1618
1627@property(nonatomic, assign) uint64_t timestamp;
1628
1637@property(nonatomic, assign) uint32_t width;
1638
1647@property(nonatomic, assign) uint32_t height;
1648
1657@property(nonatomic, assign) NERtcVideoRotationType rotation;
1658
1671@property(nonatomic) void * buffer;
1672
1680@property(nonatomic) void * uBuffer;
1681
1689@property(nonatomic) void * vBuffer;
1690
1700@property(nonatomic, strong) NSArray<NSNumber *> *strides;
1701
1702// Metal 纹理
1703// 目前该参数仅在外部渲染视频的场景下有实际意义。
1704@property(nonatomic, strong) id<MTLTexture> texture;
1705
1706@end
1707
1708#pragma mark- MediaRelay
1709
1719
1728@property (nonatomic, copy)NSString *channelName;
1737@property (nonatomic, copy)NSString *token;
1746@property (nonatomic, assign)uint64_t uid;
1747
1748@end
1749
1751
1766@property(nonatomic, strong, readonly)NSDictionary<NSString *, NERtcChannelMediaRelayInfo *> * _Nullable destinationInfos;
1767
1782@property(nonatomic, strong)NERtcChannelMediaRelayInfo *sourceInfo;
1783
1800- (BOOL)setDestinationInfo:(NERtcChannelMediaRelayInfo *_Nonnull)destinationInfo forChannelName:(NSString *_Nonnull)channelName;
1801
1814- (BOOL)removeDestinationInfoForChannelName:(NSString *_Nonnull)channelName;
1815
1816@end
1817
1818#pragma mark - watermark
1819
1837
1846@property (nonatomic, assign) CGFloat wmAlpha;
1847
1856@property (nonatomic, assign) NSUInteger wmWidth;
1857
1866@property (nonatomic, assign) NSUInteger wmHeight;
1867
1876@property (nonatomic, assign) NSUInteger offsetX;
1877
1886@property (nonatomic, assign) NSUInteger offsetY;
1887
1896@property (nonatomic, strong) NSArray<NSString *> *imagePaths;
1897
1908@property (nonatomic, assign) NSUInteger fps;
1909
1918@property (nonatomic, assign) BOOL loop;
1919
1920@end
1921
1923
1932@property (nonatomic, copy) NSString *content;
1933
1939@property (nonatomic, copy) NSString *fontName;
1940
1949@property (nonatomic, assign) NSUInteger fontColor;
1950
1959@property (nonatomic, assign) NSUInteger fontSize;
1960
1969@property (nonatomic, assign) CGFloat wmAlpha;
1970
1980@property (nonatomic, assign) NSUInteger wmColor;
1981
1990@property (nonatomic, assign) NSUInteger wmWidth;
1991
2000@property (nonatomic, assign) NSUInteger wmHeight;
2001
2010@property (nonatomic, assign) NSUInteger offsetX;
2011
2020@property (nonatomic, assign) NSUInteger offsetY;
2021
2022@end
2023
2025
2031@property (nonatomic, copy) NSString *fontName;
2032
2041@property (nonatomic, assign) NSUInteger fontColor;
2042
2051@property (nonatomic, assign) NSUInteger fontSize;
2052
2061@property (nonatomic, assign) CGFloat wmAlpha;
2062
2073@property (nonatomic, assign) NSUInteger wmColor;
2074
2083@property (nonatomic, assign) NSUInteger wmWidth;
2084
2093@property (nonatomic, assign) NSUInteger wmHeight;
2094
2103@property (nonatomic, assign) NSUInteger offsetX;
2104
2113@property (nonatomic, assign) NSUInteger offsetY;
2114
2115@end
2116
2126
2135@property (nonatomic, assign) NERtcVideoWatermarkType watermarkType;
2136
2145@property (nonatomic, strong) NERtcVideoWatermarkImageConfig *imageWatermark;
2146
2155@property (nonatomic, strong) NERtcVideoWatermarkTextConfig *textWatermark;
2156
2165@property (nonatomic, strong) NERtcVideoWatermarkTimestampConfig *timestampWatermark;
2166
2167@end
2168
2169#pragma mark - Encryption
2170
2180
2189@property (nonatomic, assign) NERtcEncryptionMode mode;
2190
2199@property (nonatomic, copy, nullable) NSString *key;
2200
2206@property (nonatomic, weak, nullable) id<NERtcEnginePacketObserver> observer;
2207
2208@end
2209
2210#pragma mark - privatization
2211
2223
2232@property (nonatomic, copy, nullable) NSString* lbsServer;
2233
2242@property (nonatomic, copy, nullable) NSString *channelServer;
2243
2252@property (nonatomic, copy, nullable) NSString *statisticsServer;
2253
2262@property (nonatomic, copy, nullable) NSString *statisticsDispatchServer;
2263
2272@property (nonatomic, copy, nullable) NSString *statisticsBackupServer;
2273
2282@property (nonatomic, copy, nullable) NSString *roomServer;
2283
2292@property (nonatomic, copy, nullable) NSString *compatServer;
2293
2302@property (nonatomic, copy, nullable) NSString *nosLbsServer;
2303
2312@property (nonatomic, copy, nullable) NSString *nosUploadSever;
2313
2322@property (nonatomic, copy, nullable) NSString *nosTokenServer;
2323
2332@property (nonatomic, assign) BOOL useIPv6;
2333
2337@property (nonatomic, copy, nullable) NSString *cloudProxyServer;
2338
2342@property (nonatomic, copy, nullable) NSString *webSocketProxyServer;
2343
2347@property (nonatomic, copy, nullable) NSString *quicProxyServer;
2348
2352@property (nonatomic, copy, nullable) NSString *mediaProxyServer;
2353
2354@end
2355
2356#pragma mark - NERtcLastmileProbeConfig
2357
2367
2382@property(nonatomic, assign) BOOL probeUplink;
2383
2396@property(nonatomic, assign) BOOL probeDownlink;
2397
2410@property(nonatomic, assign) NSUInteger expectedUplinkBitrate;
2411
2421@property(nonatomic, assign) NSUInteger expectedDownlinkBitrate;
2422
2423@end
2424
2425#pragma mark - NERtcLastmileProbeOneWayResult
2426
2436
2445@property(nonatomic, assign) NSUInteger packetLossRate;
2446
2455@property(nonatomic, assign) NSUInteger jitter;
2456
2465@property(nonatomic, assign) NSUInteger availableBandwidth;
2466
2467@end
2468
2469#pragma mark - NERtcLastmileProbeResult
2470
2480
2489@property(nonatomic, assign) NERtcLastmileProbeResultState state;
2490
2499@property(nonatomic, assign) NSUInteger rtt;
2500
2509@property(nonatomic, strong) NERtcLastmileProbeOneWayResult *uplinkReport;
2510
2519@property(nonatomic, strong) NERtcLastmileProbeOneWayResult *downlinkReport;
2520
2521@end
2522
2523#pragma mark -- Log setting
2524
2533NERTC_EXPORT @interface NERtcLogSetting : NSObject
2534
2543@property (nonatomic, copy) NSString *logDir;
2544
2553@property (nonatomic, assign) NERtcLogLevel logLevel;
2554
2555@end
2556
2557#pragma mark - Video Correction Config
2558
2568
2569// 矫正区域的左上顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2570@property (nonatomic, assign) CGPoint topLeft;
2571
2572// 矫正区域的右上顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2573@property (nonatomic, assign) CGPoint topRight;
2574
2575// 矫正区域的左下顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2576@property (nonatomic, assign) CGPoint bottomLeft;
2577
2578// 矫正区域的右下顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2579@property (nonatomic, assign) CGPoint bottomRight;
2580
2581// 画布宽度(单位 px,使用外部视频渲染时需要传递)
2582@property (nonatomic, assign) CGFloat canvasWidth;
2583
2584// 画布高度(单位 px,使用外部视频渲染时需要传递)
2585@property (nonatomic, assign) CGFloat canvasHeight;
2586
2587// 是否镜像显示(使用外部视频渲染时需要传递)
2588@property (nonatomic, assign) BOOL enableMirror;
2589
2590@end
2591
2592#pragma mark - NERtcVirtualBackgroundSource
2593
2605
2614@property (nonatomic, assign) NERtcVirtualBackgroundSourceType backgroundSourceType;
2615
2630@property (nonatomic, assign) NSUInteger color;
2631
2642@property (nonatomic, copy) NSString *source;
2643
2654@property (nonatomic, assign) NERtcBlurDegree blur_degree;
2655
2656@end
2657
2658#pragma mark - Audio Effect
2659
2668NERTC_EXPORT @interface NERtcReverbParam : NSObject
2669
2678@property (nonatomic, assign) float wetGain;
2679
2688@property (nonatomic, assign) float dryGain;
2689
2698@property (nonatomic, assign) float damping;
2699
2708@property (nonatomic, assign) float roomSize;
2709
2718@property (nonatomic, assign) float decayTime;
2719
2728@property (nonatomic, assign) float preDelay;
2729
2730@end
2731
2732#pragma mark - extraInfo
2733
2738
2742@property (nonatomic, assign) BOOL enableLowLatency;
2746@property (nonatomic, assign) NSUInteger playTimeout;
2750@property (nonatomic, nullable, strong) NERtcVideoCanvas *playCanvas;
2751
2752@end
2753
2758
2762@property (nonatomic, nullable, copy) NSString *customInfo;
2763
2769@property (nonatomic, nullable, copy) NSString *permissionKey;
2770
2771@property (nonatomic, nullable, strong) NERtcLowLatencyOptions *lowLatencyOptions;
2772
2773@end
2774
2779
2783@property (nonatomic, copy) NSString *customInfo;
2784
2785
2786@end
2787
2792
2796@property (nonatomic, copy) NSString *customInfo;
2797
2798@end
2799
2804
2808@property (nonatomic, copy) NSString *customInfo;
2809
2810@end
2811
2812#pragma mark - preDecoder
2813
2821@property (nonatomic, assign) int width;
2822
2826@property (nonatomic, assign) int height;
2827
2831@property (nonatomic, assign) BOOL isKeyFrame;
2832
2833@end
2834
2835
2840
2844@property (nonatomic, assign) uint32_t perTimeMs;
2845
2849@property (nonatomic, assign) uint8_t toc;
2850
2851@end
2852
2853
2861@property (nonatomic, assign) NERtcPreDecoderMediaType mediaType;
2862
2866@property (nonatomic, assign) uint64_t uid;
2867
2871@property (nonatomic, assign) int64_t timestampMs;
2872
2876@property (nonatomic, assign) uint8_t *data;
2877
2881@property (nonatomic, assign) int length;
2882
2886@property (nonatomic, copy) NSString *codec;
2887
2891@property (nonatomic, assign) BOOL isMainStream;
2892
2896@property (nonatomic, strong) NERtcPreDecoderVideoInfo *videoInfo;
2897
2901@property (nonatomic, strong) NERtcPreDecoderAudioInfo *audioInfo;
2902
2903@end
2904
2906
2907/***
2908* 编码器类型
2909*/
2910@property (nonatomic, assign) NERtcVideoCodecType codecType;
2911
2915@property (nonatomic, assign) NERtcNalFrameType frameType;
2916
2920@property (nonatomic, copy) NSArray<NSNumber *> *nalLengths;
2921
2925@property (nonatomic, assign) unsigned char *nalData;
2926
2930@property (nonatomic, assign) int64_t timestampUs;
2931
2935@property (nonatomic, assign) int width;
2936
2940@property (nonatomic, assign) int height;
2941
2942@end
2943
2948
2952@property (nonatomic, assign) unsigned char *data;
2953
2957@property (nonatomic, assign) int64_t timeStampUs;
2958
2962@property (nonatomic, assign) int sampleRate;
2963
2967@property (nonatomic, assign) int channels;
2968
2972@property (nonatomic, assign) int samplesPerChannel;
2973
2977@property (nonatomic, assign) int encodedLen;
2978
2982@property (nonatomic, assign) uint32_t encodedTimestamp;
2983
2987@property (nonatomic, assign) NERtcPayLoadType payloadType;
2988
2992@property (nonatomic, assign) uint8_t rmsLevel;
2993
2994@end
2995
2997NERTC_EXPORT @interface NERtcPositionInfo : NSObject
2998
3002@property(nonatomic, assign) CGFloat speakerPositionX;
3003
3007@property(nonatomic, assign) CGFloat speakerPositionY;
3008
3012@property(nonatomic, assign) CGFloat speakerPositionZ;
3013
3017@property(nonatomic, assign) CGFloat speakerQuaternionX;
3018
3022@property(nonatomic, assign) CGFloat speakerQuaternionY;
3023
3027@property(nonatomic, assign) CGFloat speakerQuaternionZ;
3028
3032@property(nonatomic, assign) CGFloat speakerQuaternionW;
3033
3037@property(nonatomic, assign) CGFloat headPositionX;
3038
3042@property(nonatomic, assign) CGFloat headPositionY;
3043
3047@property(nonatomic, assign) CGFloat headPositionZ;
3048
3052@property(nonatomic, assign) CGFloat headQuaternionX;
3053
3057@property(nonatomic, assign) CGFloat headQuaternionY;
3058
3062@property(nonatomic, assign) CGFloat headQuaternionZ;
3063
3067@property(nonatomic, assign) CGFloat headQuaternionW;
3068
3069@end
3070
3074
3078@property (nonatomic, assign) NERtcSpatializerRoomCapacity roomCapacity;
3079
3083@property (nonatomic, assign) NERtcSpatializerMaterialName material;
3084
3088@property (nonatomic, assign) CGFloat reflectionScalar;
3089
3093@property (nonatomic, assign) CGFloat reverbGain;
3094
3098@property (nonatomic, assign) CGFloat reverbTime;
3099
3103@property (nonatomic, assign) CGFloat reverbBrightness;
3104
3105@end
3106
3107NERTC_EXPORT @interface NERtcPacket : NSObject
3108
3117@property (nonatomic, assign) const unsigned char* buffer;
3118
3127@property (nonatomic, assign) long size;
3128
3129@end
3130
3131#pragma mark - push stream params
3132
3134
3145@property (nonatomic, assign) uint64_t uId;
3146
3157@property (nonatomic, copy) NSString *channelName;
3168@property (nonatomic, copy) NSString *token;
3169
3170@end
3171
3173
3182@property (nonatomic, copy) NSString *streamingUrl;
3183
3192@property (nonatomic, strong, nullable) NERtcStreamingRoomInfo *streamingRoomInfo;
3193
3194@end
3195
3196NS_ASSUME_NONNULL_END
NERTC_EXTERN_API uint32_t const NERtcAudioMixingMaxVolume
Definition NERtcEngineBase.h:683
NERTC_EXTERN_API NSString *const kNERtcKeyVideoStartWithBackCamera
第一次开启摄像头时,是否使用后摄像头。 布尔值,默认值 NO,即不使用后置摄像头。
Definition NERtcEngineBase.h:80
NERTC_EXTERN_API NSString *const KNERtcKeyDisableSWAECOnHeadset
设置耳机时不使用软件回声消除功能,默认值 NO。如设置 YES 则 SDK 在耳机模式下不使用软件回声消除功能,会对某些机型下 耳机的音质效果有影响
Definition NERtcEngineBase.h:185
NERTC_EXTERN_API NSString *const kNERtcKeyExtraInfo
Login 事件中的一个自定义字段,适用于标识一些额外信息,例如 App 版本。
Definition NERtcEngineBase.h:267
NERTC_EXTERN_API NSString *const KNERtcKeyAudioAINSEnable
是否开启 AI 降噪。 NERTC SDK 自研 AI 降噪算法,开启 AI 降噪之后,在嘈杂的环境中可以针对背景人声、键盘声等非稳态噪声进行定向降噪,同时也会提升对于环境稳态噪声的抑制,保留更纯粹的...
Definition NERtcEngineBase.h:195
NERTC_EXTERN_API NSString *const kNERtcKeyLoginCustomData
登录扩展参数,string,默认不设置。
Definition NERtcEngineBase.h:282
NERTC_EXTERN_API NSString *const kNERtcKeyLogLevel
SDK 日志等级,默认为 kNERtcLogLevelInfo,详细信息请参考 NERtcLogLevel。
Definition NERtcEngineBase.h:258
NS_ASSUME_NONNULL_BEGIN NERTC_EXTERN_API NSString *const kNERtcKeyChannel1V1ModeEnabled
以下 key 用于 INERtcEngine::setParameters
Definition NERtcEngineBase.h:35
NERTC_EXTERN_API NSString *const kNERtcKeyPublishSelfStreamEnabled
在旁路推流场景中,是否允许推送本地媒体流到 CDN。默认值 YES。
Definition NERtcEngineBase.h:247
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferMetalRender
是否优先使用 Metal 渲染。 布尔值,默认值 NO,即使用 OpenGL 渲染。
Definition NERtcEngineBase.h:90
NERTC_EXTERN_API NSString *const KNERtcKeyDisableOverrideSpeakerOnReceiver
当系统切换听筒或扬声器时,SDK 是否以系统设置为准。 布尔值,默认为 NO。
Definition NERtcEngineBase.h:155
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferHWEncode
是否优先使用硬件编码视频数据。 布尔值,默认值 YES。 请在初始化(setupEngineWithContext)之前设置该参数,否则该参数会在下次初始化之后生效。
Definition NERtcEngineBase.h:48
NERTC_EXTERN_API NSString *const kNERtcKeyVideoSendOnPubType
通话开始时,默认发送的流类型,通话前设置有效。 int 类型,默认为 3,即大流。详细信息请参考 NERtcVideoPubMode。
Definition NERtcEngineBase.h:100
NERTC_EXTERN_API NSString *const kNERtcKeyRecordHostEnabled
是否云端录制主讲人,默认值 NO
Definition NERtcEngineBase.h:207
NERTC_EXTERN_API NSString *const kNERtcKeyAutoSubscribeAudio
是否自动订阅其他用户的音频流。 布尔值,默认为 YES,即自动订阅。
Definition NERtcEngineBase.h:127
NERTC_EXTERN_API NSString *const kNERtcKeyAutoSubscribeVideo
是否自动订阅其他用户的视频流。 布尔值,默认值 NO,即不自动订阅。
Definition NERtcEngineBase.h:112
NERTC_EXTERN_API NSString *const kNERtcKeyAutoSubscribeData
是否自动订阅其他用户的数据通道。 布尔值,默认为 NO,即非自动订阅。
Definition NERtcEngineBase.h:142
NERTC_EXTERN_API NSString *const kNERtcKeyRecordAudioEnabled
是否开启云端音频录制。默认值 NO,即关闭音频录制。
Definition NERtcEngineBase.h:216
NERTC_EXTERN_API NSString *const kNERtcKeySupportCallkit
是否需要支持 Callkit 框架。 布尔值,默认为 NO。
Definition NERtcEngineBase.h:163
NERTC_EXTERN_API NSString *const kNERtcKeyDisableFirstJoinUserCreateChannel
Definition NERtcEngineBase.h:285
NERTC_EXTERN_API NSString *const kNERtcKeyRecordVideoEnabled
是否开启云端视频录制,默认值 NO,即关闭视频录制。
Definition NERtcEngineBase.h:225
NERTC_EXTERN_API NSString *const kNERtcKeyRecordType
云端录制模式。详细信息请参考 NERtcRecordType。
Definition NERtcEngineBase.h:234
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferHWDecode
是否优先使用硬件解码视频数据。 布尔值,默认值 YES。 请在初始化(setupEngineWithContext)之前设置该参数,否则该参数会在下次初始化之后生效。
Definition NERtcEngineBase.h:59
NERTC_EXTERN_API NSString *const KNERtcKeyEnableReportVolumeWhenMute
本地用户静音时是否返回原始音量。 布尔值,默认值为 false。
Definition NERtcEngineBase.h:176
NERTC_EXTERN_API NSString *const kNERtcKeyVideoCaptureObserverEnabled
是否需要开启视频数据采集回调,开启后开发者可以获取到原始视频数据。 布尔值,默认值 NO。 开启后如果需要关闭,需要通过调用 destroyEngine 来清除。
Definition NERtcEngineBase.h:70
NERTC_EXTERN_API NSString *const kNERtcKeyDisableVideoDecoder
是否关闭 sdk 视频解码(默认不关闭),关闭后 SDK 将不会解码远端视频,因此也无法渲染接收到的远端视频
Definition NERtcEngineBase.h:275
NERTC_EXTERN_API uint32_t const NERtcAudioMixingDefaultVolume
Definition NERtcEngineBase.h:684
NERtcPreDecoderMediaType
媒体类型。
Definition NERtcEngineEnum.h:2147
NERtcLiveStreamMode
直播推流模式。
Definition NERtcEngineEnum.h:2885
NERtcVideoCropMode
视频裁剪模式
Definition NERtcEngineEnum.h:886
NERtcLastmileProbeResultState
Last mile 质量探测结果的状态。
Definition NERtcEngineEnum.h:3431
NERtcLogLevel
日志级别。
Definition NERtcEngineEnum.h:3524
NERtcVideoCodecType
Definition NERtcEngineEnum.h:2179
NERtcVideoFormatType
视频格式类型
Definition NERtcEngineEnum.h:1025
NERtcVirtualBackgroundSourceType
自定义背景图片的类型。
Definition NERtcEngineEnum.h:1152
NERtcVideoWatermarkType
视频水印类型。
Definition NERtcEngineEnum.h:1236
NERtcLiveStreamVideoScaleMode
直播推流模式。
Definition NERtcEngineEnum.h:2914
NERtcSubStreamContentPrefer
屏幕共享功能的编码策略倾向
Definition NERtcEngineEnum.h:619
NERtcLiveStreamAudioCodecProfile
直播推流音频编码规格。
Definition NERtcEngineEnum.h:2856
#define NERTC_EXTERN_API
Definition NERtcEngineEnum.h:18
NERtcAudioRecordingQuality
录音音质。
Definition NERtcEngineEnum.h:2027
NERtcAudioRecordingPosition
Definition NERtcEngineEnum.h:2117
NERtcPayLoadType
Definition NERtcEngineEnum.h:3511
NERtcVideoOutputOrientationMode
视频旋转方向模式。
Definition NERtcEngineEnum.h:838
NERtcVideoProfileType
视频 profile 类型。
Definition NERtcEngineEnum.h:415
NERtcNalFrameType
Definition NERtcEngineEnum.h:3494
NERtcBlurDegree
自定义背景图的虚化程度。
Definition NERtcEngineEnum.h:1195
NERtcAudioType
音频类型
Definition NERtcEngineEnum.h:2984
NERtcVideoMirrorMode
视频镜像模式。
Definition NERtcEngineEnum.h:800
NERtcAudioFrameOpMode
音频数据读写模式
Definition NERtcEngineEnum.h:3004
NERtcEncryptionMode
加密模式
Definition NERtcEngineEnum.h:3400
NERtcAudioRecordingCycleTime
Definition NERtcEngineEnum.h:2126
NERtcSpatializerMaterialName
空间音效中房间材质名称
Definition NERtcEngineEnum.h:1794
NERtcDegradationPreference
带宽受限时视频编码适应性偏好
Definition NERtcEngineEnum.h:568
NERtcLiveStreamAudioSampleRate
直播推流音频采样率。
Definition NERtcEngineEnum.h:2818
#define NERTC_EXPORT
Definition NERtcEngineEnum.h:12
NERtcVideoFrameRate
视频帧率。
Definition NERtcEngineEnum.h:482
NERtcVideoRenderScaleMode
视频渲染缩放模式。
Definition NERtcEngineEnum.h:732
NERtcSpatializerRoomCapacity
空间音效房间大小
Definition NERtcEngineEnum.h:1764
NERtcAudioStreamType
音频流类型,目前同时支持音频两路流:主流和辅流
Definition NERtcEngineEnum.h:1738
NERtcVideoRotationType
视频数据的旋转方向
Definition NERtcEngineEnum.h:971
编码好的音频数据
Definition NERtcEngineBase.h:2948
音频格式。
Definition NERtcEngineBase.h:1452
音频帧。
Definition NERtcEngineBase.h:1517
音频原始数据回调格式(默认不设置)。
Definition NERtcEngineBase.h:1404
Definition NERtcEngineBase.h:903
声音音量信息。
Definition NERtcEngineBase.h:1562
本地视频基础发送配置。
Definition NERtcEngineBase.h:365
摄像头采集配置。
Definition NERtcEngineBase.h:488
Definition NERtcEngineBase.h:1751
媒体流转发相关的数据结构。
Definition NERtcEngineBase.h:1719
Options for creating audio effects
Definition NERtcEngineBase.h:806
Options for creating mixing audios
Definition NERtcEngineBase.h:688
配置媒体流加密模式和密钥。
Definition NERtcEngineBase.h:2180
joinChannel 回调时的一些可选信息
Definition NERtcEngineBase.h:2779
joinChannel 时的一些可选信息
Definition NERtcEngineBase.h:2758
Last mile 网络探测配置。
Definition NERtcEngineBase.h:2367
单向 Last mile 网络质量探测结果报告。
Definition NERtcEngineBase.h:2436
上下行 Last mile 网络质量探测结果。
Definition NERtcEngineBase.h:2480
音视频流编码参数等设置
Definition NERtcEngineBase.h:931
图片布局。
Definition NERtcEngineBase.h:1152
直播布局。
Definition NERtcEngineBase.h:1237
直播推流任务的配置。
Definition NERtcEngineBase.h:1308
直播成员布局。
Definition NERtcEngineBase.h:1024
日志相关设置。
Definition NERtcEngineBase.h:2534
低延时直播参数
Definition NERtcEngineBase.h:2738
Definition NERtcEngineBase.h:3108
3D 音效算法中坐标信息。
Definition NERtcEngineBase.h:2998
编码完的视频帧数据
Definition NERtcEngineBase.h:2840
编码完的媒体数据帧
Definition NERtcEngineBase.h:2858
编码完的音频帧数据
Definition NERtcEngineBase.h:2818
Definition NERtcEngineBase.h:3173
混响参数
Definition NERtcEngineBase.h:2669
私有化服务器配置项
Definition NERtcEngineBase.h:2223
3D 音效房间属性设置。
Definition NERtcEngineBase.h:3074
Definition NERtcEngineBase.h:3134
onUserJoined 回调时的一些可选信息
Definition NERtcEngineBase.h:2792
onUserLeave 回调时的一些可选信息
Definition NERtcEngineBase.h:2804
视频画布设置。
Definition NERtcEngineBase.h:296
uint32_t backgroundColor
Definition NERtcEngineBase.h:352
id< NERtcEngineVideoRenderSink > externalVideoRender
外部渲染器。
Definition NERtcEngineBase.h:349
BOOL useExternalRender
是否使用外部渲染器,默认 NO 不使用,若使用 SDK 内部会根据 externalVideoRender 来进行绑定,若不使用 SDK 内部根据 container 来进行绑定。暂不支持在通话中切换内...
Definition NERtcEngineBase.h:305
NERtcVideoRenderScaleMode renderMode
视频渲染模式。
Definition NERtcEngineBase.h:325
VIEW_CLASS * container
视频窗口容器(SDK 内部渲染)。
Definition NERtcEngineBase.h:315
NERtcVideoMirrorMode mirrorMode
视频镜像模式。
Definition NERtcEngineBase.h:339
视频图像畸变矫正相关设置。
Definition NERtcEngineBase.h:2568
本地视频发送配置
Definition NERtcEngineBase.h:542
Definition NERtcEngineBase.h:2906
视频帧信息。
Definition NERtcEngineBase.h:1607
本地辅流发送配置。
Definition NERtcEngineBase.h:648
视频水印设置,目前支持三种类型的水印,但只能其中选择一种水印生效。
Definition NERtcEngineBase.h:2126
视频图片水印配置。
Definition NERtcEngineBase.h:1837
Definition NERtcEngineBase.h:1923
Definition NERtcEngineBase.h:2025
自定义背景图像。
Definition NERtcEngineBase.h:2605