NERtc iOS SDK  V5.3.1
NERtcEngineBase.h
浏览该文件的文档.
1 /*
2  * Copyright (c) 2021 NetEase, Inc. All rights reserved.
3  */
4 
5 #import <Foundation/Foundation.h>
6 #import "NERtcEngineEnum.h"
7 
9 
10 NS_ASSUME_NONNULL_BEGIN
11 
21 // channel
35 
36 // video
100 
111 NERTC_EXTERN_API NSString * const kNERtcKeyAutoSubscribeVideo; // BOOL -- 其他用户打开视频时,自动订阅。只支持在通话前设置,通话中设置无效。 默认值 NO 。
112 
113 // audio
127 
128 // data channel
142 
155 
163 
195 
196 
197 // server record
234 
235 // live stream
247 
248 // log level
267 
275 
282 
283 
292 NERTC_EXPORT @interface NERtcVideoCanvas : NSObject
293 
302 @property (nonatomic, assign) BOOL useExternalRender;
303 
312 @property (nonatomic, nullable, strong) VIEW_CLASS *container;
313 
322 @property (nonatomic, assign) NERtcVideoRenderScaleMode renderMode;
323 
336 @property (nonatomic, assign) NERtcVideoMirrorMode mirrorMode;
337 
346 @property (nonatomic, strong) id<NERtcEngineVideoRenderSink> externalVideoRender;
347 
348 // 背景颜色,格式为 0xRRGGBB,默认为黑色即 0x000000
349 @property (nonatomic, assign) uint32_t backgroundColor;
350 
351 @end
352 
362 
371 @property (nonatomic, assign) NERtcVideoProfileType maxProfile;
372 
389 @property (nonatomic, assign) NERtcVideoFrameRate frameRate;
390 
399 @property (nonatomic, assign) NSInteger minFrameRate;
400 
462 @property (nonatomic, assign) NSInteger bitrate;
463 
472 @property (nonatomic, assign) NSInteger minBitrate;
473 
474 @end
475 
485 
506 @property (nonatomic, assign) int captureWidth;
527 @property (nonatomic, assign) int captureHeight;
528 
529 @end
539 
556 @property (nonatomic, assign) int width;
557 
574 @property (nonatomic, assign) int height;
575 
584 @property (nonatomic, assign) NERtcVideoCropMode cropMode;
585 
606 @property (nonatomic, assign) NERtcDegradationPreference degradationPreference;
607 
619 @property (nonatomic, assign) NERtcVideoMirrorMode mirrorMode;
620 
631 @property (nonatomic, assign) NERtcVideoOutputOrientationMode orientationMode;
632 
633 
634 @end
635 
645 
654 @property (nonatomic, assign) NERtcSubStreamContentPrefer contentPrefer;
655 
656 @end
657 
660 
663 
676 @property (nonatomic, copy) NSString *path;
677 
690 @property (nonatomic, assign) int loopCount;
691 
700 @property (nonatomic, assign) BOOL sendEnabled;
701 
710 @property (nonatomic, assign) BOOL playbackEnabled;
711 
722 @property (nonatomic, assign) uint32_t sendVolume;
723 
734 @property (nonatomic, assign) uint32_t playbackVolume;
735 
744 @property (nonatomic, assign) int64_t startTimeStamp;
745 
754 @property (nonatomic, assign) NERtcAudioStreamType sendWithAudioType;
755 
761 @property (nonatomic, assign) uint64_t progressInterval;
762 
775 - (BOOL)isInvalid;
776 
777 @end
778 
781 
794 @property (nonatomic, copy) NSString *path;
795 
808 @property (nonatomic, assign) int loopCount;
809 
818 @property (nonatomic, assign) BOOL sendEnabled;
819 
828 @property (nonatomic, assign) BOOL playbackEnabled;
829 
840 @property (nonatomic, assign) uint32_t sendVolume;
841 
852 @property (nonatomic, assign) uint32_t playbackVolume;
853 
859 @property (nonatomic, assign) int64_t startTimeStamp;
860 
866 @property (nonatomic, assign) NERtcAudioStreamType sendWithAudioType;
867 
873 @property (nonatomic, assign) uint64_t progressInterval;
874 
875 @end
876 
878 
879 // 录音文件在本地保存的绝对路径,需要精确到文件名及格式。例如:sdcard/xxx/audio.aac。请确保指定的路径存在并且可写。目前仅支持 WAV 或 AAC 文件格式。
880 @property (nonatomic, copy) NSString *filePath;
881 
882 // 录音采样率(Hz),可以设为 16000、32000(默认)、44100 或 48000。
883 @property (nonatomic, assign) int sampleRate;
884 
885 // 录音音质,只在 AAC 格式下有效。详细信息请参考 {@link NERtcAudioRecordingQuality}。
886 @property (nonatomic, assign) NERtcAudioRecordingQuality quality;
887 
888 // 录音文件所包含的内容。详细信息请参考 {@link NERtcAudioRecordingPosition}。
889 @property (nonatomic, assign) NERtcAudioRecordingPosition position;
890 
891 // 录制过程中,循环缓存的最大时间长度,单位(s)。详细信息请参考 {@link NERtcAudioRecordingCycleTime}。
892 @property (nonatomic, assign) NERtcAudioRecordingCycleTime cycleTime;
893 
894 @end
895 
896 #pragma mark - live stream
905 NERTC_EXPORT @interface NERtcLiveConfig: NSObject
906 
915 @property (nonatomic, assign) BOOL interruptedPlaceImage;
916 
929 @property (nonatomic, assign) BOOL singleVideoPassthrough;
942 @property (nonatomic, assign) NSInteger audioBitrate;
943 
958 @property (nonatomic, assign) NERtcLiveStreamAudioSampleRate sampleRate;
959 
972 @property (nonatomic, assign) NSInteger channels;
973 
986 @property (nonatomic, assign) NERtcLiveStreamAudioCodecProfile audioCodecProfile;
987 
988 @end
989 
999 
1008 @property (nonatomic, assign) uint64_t uid;
1009 
1024 @property (nonatomic, assign) BOOL videoPush;
1025 
1038 @property (nonatomic, assign) NSInteger x;
1039 
1052 @property (nonatomic, assign) NSInteger y;
1053 
1066 @property (nonatomic, assign) NSInteger width;
1067 
1080 @property (nonatomic, assign) NSInteger height;
1081 
1094 @property (nonatomic, assign) BOOL audioPush;
1095 
1104 @property (nonatomic, assign) NSInteger zOrder;
1105 
1114 @property (nonatomic, assign) NERtcLiveStreamVideoScaleMode adaption;
1115 
1116 @end
1117 
1127 
1136 @property (nonatomic, copy) NSString *url;
1137 
1150 @property (nonatomic, assign) NSInteger x;
1151 
1164 @property (nonatomic, assign) NSInteger y;
1165 
1176 @property (nonatomic, assign) NSInteger width;
1177 
1188 @property (nonatomic, assign) NSInteger height;
1189 
1199 @property (nonatomic, assign) int zorder;
1200 
1201 @end
1202 
1212 
1221 @property (nonatomic, assign) NSInteger width;
1222 
1231 @property (nonatomic, assign) NSInteger height;
1232 
1241 @property (nonatomic, assign) NSUInteger backgroundColor;
1242 
1251 @property (nonatomic, strong) NSArray<NERtcLiveStreamUserTranscoding *> * users;
1252 
1262 @property (nonatomic, nullable, strong) NERtcLiveStreamImageInfo* bgImage;
1263 
1270 @property (nonatomic, nullable, strong) NSArray<NERtcLiveStreamImageInfo*> * bgImages;
1271 
1272 @end
1273 
1283 
1292 @property (nonatomic, copy) NSString *taskID;
1293 
1304 @property (nonatomic, copy) NSString *streamURL;
1305 
1314 @property (nonatomic, assign) BOOL serverRecordEnabled;
1315 
1324 @property (nonatomic, assign) NERtcLiveStreamMode lsMode;
1325 
1334 @property (nonatomic, nullable, strong) NERtcLiveStreamLayout *layout;
1335 
1344 @property (nonatomic, nullable, strong) NERtcLiveConfig *config;
1345 
1354 @property (nonatomic, nullable, copy) NSString *extraInfo;
1355 
1364 - (BOOL)isInvalid;
1365 
1366 @end
1367 
1368 
1369 #pragma mark -- Audio Frame Observer
1379 
1394 @property (nonatomic, assign) uint32_t channels;
1395 
1404 @property (nonatomic, assign) uint32_t sampleRate;
1405 
1414 @property (nonatomic, assign) NERtcAudioFrameOpMode mode;
1415 
1416 @end
1417 
1426 NERTC_EXPORT @interface NERtcAudioFormat : NSObject
1427 
1436 @property (nonatomic, assign) NERtcAudioType type;
1449 @property (nonatomic, assign) uint32_t channels;
1450 
1459 @property (nonatomic, assign) uint32_t sampleRate;
1460 
1469 @property (nonatomic, assign) uint32_t bytesPerSample;
1470 
1479 @property (nonatomic, assign) uint32_t samplesPerChannel;
1480 
1481 @end
1482 
1491 NERTC_EXPORT @interface NERtcAudioFrame : NSObject
1492 
1501 @property (nonatomic, strong) NERtcAudioFormat* format;
1502 
1511 @property (nonatomic, assign) void* data;
1512 
1521 @property (nonatomic, assign) int64_t syncTimestamp;
1522 
1523 @end
1524 
1525 
1526 #pragma mark - Volume info
1527 
1536 NERTC_EXPORT @interface NERtcAudioVolumeInfo : NSObject
1537 
1546 @property (nonatomic, assign) uint64_t uid;
1547 
1556 @property (nonatomic, assign) unsigned int volume;
1557 
1567 @property (nonatomic, assign) unsigned int subStreamVolume;
1568 
1569 @end
1570 
1571 #pragma mark - Video Frame
1572 
1581 NERTC_EXPORT @interface NERtcVideoFrame : NSObject
1582 
1592 @property(nonatomic, assign) NERtcVideoFormatType format;
1593 
1602 @property(nonatomic, assign) uint64_t timestamp;
1603 
1612 @property(nonatomic, assign) uint32_t width;
1613 
1622 @property(nonatomic, assign) uint32_t height;
1623 
1632 @property(nonatomic, assign) NERtcVideoRotationType rotation;
1633 
1646 @property(nonatomic) void * buffer;
1647 
1655 @property(nonatomic) void * uBuffer;
1656 
1664 @property(nonatomic) void * vBuffer;
1665 
1675 @property(nonatomic, strong) NSArray<NSNumber *> *strides;
1676 
1677 // Metal 纹理
1678 // 目前该参数仅在外部渲染视频的场景下有实际意义。
1679 @property(nonatomic, strong) id<MTLTexture> texture;
1680 
1681 @end
1682 
1683 #pragma mark- MediaRelay
1684 
1694 
1703 @property (nonatomic, copy)NSString *channelName;
1712 @property (nonatomic, copy)NSString *token;
1721 @property (nonatomic, assign)uint64_t uid;
1722 
1723 @end
1724 
1726 
1741 @property(nonatomic, strong, readonly)NSDictionary<NSString *, NERtcChannelMediaRelayInfo *> * _Nullable destinationInfos;
1742 
1757 @property(nonatomic, strong)NERtcChannelMediaRelayInfo *sourceInfo;
1758 
1775 - (BOOL)setDestinationInfo:(NERtcChannelMediaRelayInfo *_Nonnull)destinationInfo forChannelName:(NSString *_Nonnull)channelName;
1776 
1789 - (BOOL)removeDestinationInfoForChannelName:(NSString *_Nonnull)channelName;
1790 
1791 @end
1792 
1793 #pragma mark - watermark
1794 
1820 @property (nonatomic, copy, nullable) NSString *content;
1821 
1830 @property (nonatomic, assign) CGFloat fontSize;
1831 
1840 @property (nonatomic, strong, nullable) UIColor *fontColor;
1841 
1850 @property (nonatomic, strong, nullable) UIColor *wmColor;
1851 
1860 @property (nonatomic, assign) CGRect frame;
1861 
1862 @end
1863 
1877 
1886 @property (nonatomic, assign) CGFloat fontSize;
1887 
1896 @property (nonatomic, strong) UIColor *fontColor;
1897 
1906 @property (nonatomic, assign) CGRect frame;
1907 
1916 @property (nonatomic, strong) UIColor *wmColor;
1917 
1918 @end
1919 
1931 
1940 @property (nonatomic, strong, nullable) NSArray<UIImage *> *images;
1941 
1950 @property (nonatomic, assign) NSUInteger fps;
1951 
1960 @property (nonatomic, assign) BOOL loop;
1961 
1970 @property (nonatomic, assign) CGRect frame;
1971 
1972 @end
1973 
1985 
1994 @property (nonatomic, strong, nullable) NSArray<NERtcTextWatermarkConfig *> *textWatermarks;
1995 
2004 @property (nonatomic, strong, nullable) NERtcTimestampWatermarkConfig *timestampWatermark;
2005 
2014 @property (nonatomic, strong, nullable) NSArray<NERtcImageWatermarkConfig *> *imageWaterMarks;
2015 
2016 @end
2017 
2035 
2044 @property (nonatomic, assign) CGFloat wmAlpha;
2045 
2054 @property (nonatomic, assign) NSUInteger wmWidth;
2055 
2064 @property (nonatomic, assign) NSUInteger wmHeight;
2065 
2074 @property (nonatomic, assign) NSUInteger offsetX;
2075 
2084 @property (nonatomic, assign) NSUInteger offsetY;
2085 
2094 @property (nonatomic, strong) NSArray<NSString *> *imagePaths;
2095 
2106 @property (nonatomic, assign) NSUInteger fps;
2107 
2116 @property (nonatomic, assign) BOOL loop;
2117 
2118 @end
2119 
2121 
2130 @property (nonatomic, copy) NSString *content;
2131 
2137 @property (nonatomic, copy) NSString *fontName;
2138 
2147 @property (nonatomic, assign) NSUInteger fontColor;
2148 
2157 @property (nonatomic, assign) NSUInteger fontSize;
2158 
2167 @property (nonatomic, assign) CGFloat wmAlpha;
2168 
2178 @property (nonatomic, assign) NSUInteger wmColor;
2179 
2188 @property (nonatomic, assign) NSUInteger wmWidth;
2189 
2198 @property (nonatomic, assign) NSUInteger wmHeight;
2199 
2208 @property (nonatomic, assign) NSUInteger offsetX;
2209 
2218 @property (nonatomic, assign) NSUInteger offsetY;
2219 
2220 @end
2221 
2223 
2229 @property (nonatomic, copy) NSString *fontName;
2230 
2239 @property (nonatomic, assign) NSUInteger fontColor;
2240 
2249 @property (nonatomic, assign) NSUInteger fontSize;
2250 
2259 @property (nonatomic, assign) CGFloat wmAlpha;
2260 
2271 @property (nonatomic, assign) NSUInteger wmColor;
2272 
2281 @property (nonatomic, assign) NSUInteger wmWidth;
2282 
2291 @property (nonatomic, assign) NSUInteger wmHeight;
2292 
2301 @property (nonatomic, assign) NSUInteger offsetX;
2302 
2311 @property (nonatomic, assign) NSUInteger offsetY;
2312 
2313 @end
2314 
2324 
2333 @property (nonatomic, assign) NERtcVideoWatermarkType watermarkType;
2334 
2343 @property (nonatomic, strong) NERtcVideoWatermarkImageConfig *imageWatermark;
2344 
2353 @property (nonatomic, strong) NERtcVideoWatermarkTextConfig *textWatermark;
2354 
2363 @property (nonatomic, strong) NERtcVideoWatermarkTimestampConfig *timestampWatermark;
2364 
2365 @end
2366 
2367 #pragma mark - Encryption
2368 
2378 
2387 @property (nonatomic, assign) NERtcEncryptionMode mode;
2388 
2397 @property (nonatomic, copy, nullable) NSString *key;
2398 
2399 @end
2400 
2401 #pragma mark - privatization
2402 
2413 NERTC_EXPORT @interface NERtcServerAddresses : NSObject
2414 
2423 @property (nonatomic, copy, nullable) NSString *channelServer;
2424 
2433 @property (nonatomic, copy, nullable) NSString *statisticsServer;
2434 
2443 @property (nonatomic, copy, nullable) NSString *statisticsDispatchServer;
2444 
2453 @property (nonatomic, copy, nullable) NSString *statisticsBackupServer;
2454 
2463 @property (nonatomic, copy, nullable) NSString *roomServer;
2464 
2473 @property (nonatomic, copy, nullable) NSString *compatServer;
2474 
2483 @property (nonatomic, copy, nullable) NSString *nosLbsServer;
2484 
2493 @property (nonatomic, copy, nullable) NSString *nosUploadSever;
2494 
2503 @property (nonatomic, copy, nullable) NSString *nosTokenServer;
2504 
2513 @property (nonatomic, assign) BOOL useIPv6;
2514 
2518 @property (nonatomic, copy, nullable) NSString *cloudProxyServer;
2519 
2523 @property (nonatomic, copy, nullable) NSString *webSocketProxyServer;
2524 
2528 @property (nonatomic, copy, nullable) NSString *quicProxyServer;
2529 
2533 @property (nonatomic, copy, nullable) NSString *mediaProxyServer;
2534 
2535 @end
2536 
2537 #pragma mark - NERtcLastmileProbeConfig
2538 
2548 
2563 @property(nonatomic, assign) BOOL probeUplink;
2564 
2577 @property(nonatomic, assign) BOOL probeDownlink;
2578 
2591 @property(nonatomic, assign) NSUInteger expectedUplinkBitrate;
2592 
2602 @property(nonatomic, assign) NSUInteger expectedDownlinkBitrate;
2603 
2604 @end
2605 
2606 #pragma mark - NERtcLastmileProbeOneWayResult
2607 
2617 
2626 @property(nonatomic, assign) NSUInteger packetLossRate;
2627 
2636 @property(nonatomic, assign) NSUInteger jitter;
2637 
2646 @property(nonatomic, assign) NSUInteger availableBandwidth;
2647 
2648 @end
2649 
2650 #pragma mark - NERtcLastmileProbeResult
2651 
2661 
2670 @property(nonatomic, assign) NERtcLastmileProbeResultState state;
2671 
2680 @property(nonatomic, assign) NSUInteger rtt;
2681 
2690 @property(nonatomic, strong) NERtcLastmileProbeOneWayResult *uplinkReport;
2691 
2700 @property(nonatomic, strong) NERtcLastmileProbeOneWayResult *downlinkReport;
2701 
2702 @end
2703 
2704 #pragma mark -- Log setting
2705 
2714 NERTC_EXPORT @interface NERtcLogSetting : NSObject
2715 
2724 @property (nonatomic, copy) NSString *logDir;
2725 
2734 @property (nonatomic, assign) NERtcLogLevel logLevel;
2735 
2736 @end
2737 
2738 #pragma mark - Video Correction Config
2739 
2749 
2750 // 矫正区域的左上顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2751 @property (nonatomic, assign) CGPoint topLeft;
2752 
2753 // 矫正区域的右上顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2754 @property (nonatomic, assign) CGPoint topRight;
2755 
2756 // 矫正区域的左下顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2757 @property (nonatomic, assign) CGPoint bottomLeft;
2758 
2759 // 矫正区域的右下顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2760 @property (nonatomic, assign) CGPoint bottomRight;
2761 
2762 // 画布宽度(单位 px,使用外部视频渲染时需要传递)
2763 @property (nonatomic, assign) CGFloat canvasWidth;
2764 
2765 // 画布高度(单位 px,使用外部视频渲染时需要传递)
2766 @property (nonatomic, assign) CGFloat canvasHeight;
2767 
2768 // 是否镜像显示(使用外部视频渲染时需要传递)
2769 @property (nonatomic, assign) BOOL enableMirror;
2770 
2771 @end
2772 
2773 #pragma mark - NERtcVirtualBackgroundSource
2774 
2786 
2795 @property (nonatomic, assign) NERtcVirtualBackgroundSourceType backgroundSourceType;
2796 
2811 @property (nonatomic, assign) NSUInteger color;
2812 
2823 @property (nonatomic, copy) NSString *source;
2824 
2835 @property (nonatomic, assign) NERtcBlurDegree blur_degree;
2836 
2837 @end
2838 
2839 #pragma mark - Audio Effect
2840 
2849 NERTC_EXPORT @interface NERtcReverbParam : NSObject
2850 
2859 @property (nonatomic, assign) float wetGain;
2860 
2869 @property (nonatomic, assign) float dryGain;
2870 
2879 @property (nonatomic, assign) float damping;
2880 
2889 @property (nonatomic, assign) float roomSize;
2890 
2899 @property (nonatomic, assign) float decayTime;
2900 
2909 @property (nonatomic, assign) float preDelay;
2910 
2911 @end
2912 
2913 #pragma mark - extraInfo
2914 
2919 
2923 @property (nonatomic, nullable, copy) NSString *customInfo;
2924 
2930 @property (nonatomic, nullable, copy) NSString *permissionKey;
2931 
2932 @end
2933 
2938 
2942 @property (nonatomic, copy) NSString *customInfo;
2943 
2944 
2945 @end
2946 
2951 
2955 @property (nonatomic, copy) NSString *customInfo;
2956 
2957 @end
2958 
2963 
2967 @property (nonatomic, copy) NSString *customInfo;
2968 
2969 @end
2970 
2971 #pragma mark - preDecoder
2972 
2980 @property (nonatomic, assign) int width;
2981 
2985 @property (nonatomic, assign) int height;
2986 
2990 @property (nonatomic, assign) BOOL isKeyFrame;
2991 
2992 @end
2993 
2994 
2999 
3003 @property (nonatomic, assign) uint32_t perTimeMs;
3004 
3008 @property (nonatomic, assign) uint8_t toc;
3009 
3010 @end
3011 
3012 
3020 @property (nonatomic, assign) NERtcPreDecoderMediaType mediaType;
3021 
3025 @property (nonatomic, assign) uint64_t uid;
3026 
3030 @property (nonatomic, assign) int64_t timestampMs;
3031 
3035 @property (nonatomic, assign) uint8_t *data;
3036 
3040 @property (nonatomic, assign) int length;
3041 
3045 @property (nonatomic, copy) NSString *codec;
3046 
3050 @property (nonatomic, assign) BOOL isMainStream;
3051 
3055 @property (nonatomic, strong) NERtcPreDecoderVideoInfo *videoInfo;
3056 
3060 @property (nonatomic, strong) NERtcPreDecoderAudioInfo *audioInfo;
3061 
3062 @end
3063 
3065 
3066 /***
3067 * 编码器类型
3068 */
3069 @property (nonatomic, assign) NERtcVideoCodecType codecType;
3070 
3074 @property (nonatomic, assign) NERtcNalFrameType frameType;
3075 
3079 @property (nonatomic, copy) NSArray<NSNumber *> *nalLengths;
3080 
3084 @property (nonatomic, assign) unsigned char *nalData;
3085 
3089 @property (nonatomic, assign) int64_t timestampUs;
3090 
3094 @property (nonatomic, assign) int width;
3095 
3099 @property (nonatomic, assign) int height;
3100 
3101 @end
3102 
3107 
3111 @property (nonatomic, assign) unsigned char *data;
3112 
3116 @property (nonatomic, assign) int64_t timeStampUs;
3117 
3121 @property (nonatomic, assign) int sampleRate;
3122 
3126 @property (nonatomic, assign) int channels;
3127 
3131 @property (nonatomic, assign) int samplesPerChannel;
3132 
3136 @property (nonatomic, assign) int encodedLen;
3137 
3141 @property (nonatomic, assign) uint32_t encodedTimestamp;
3142 
3146 @property (nonatomic, assign) NERtcPayLoadType payloadType;
3147 
3151 @property (nonatomic, assign) uint8_t rmsLevel;
3152 
3153 @end
3154 
3155 NS_ASSUME_NONNULL_END
NERTC_EXTERN_API uint32_t const NERtcAudioMixingMaxVolume
Definition: NERtcEngineBase.h:658
NERTC_EXTERN_API NSString *const kNERtcKeyVideoStartWithBackCamera
第一次开启摄像头时,是否使用后摄像头。 布尔值,默认值 NO,即不使用后置摄像头。
Definition: NERtcEngineBase.h:79
NERTC_EXTERN_API NSString *const KNERtcKeyDisableSWAECOnHeadset
设置耳机时不使用软件回声消除功能,默认值 NO。如设置YES 则SDK在耳机模式下不使用软件回声消除功能,会对某些机型下 耳机的音质效果有影响
Definition: NERtcEngineBase.h:184
NERTC_EXTERN_API NSString *const kNERtcKeyExtraInfo
Login 事件中的一个自定义字段,适用于标识一些额外信息,例如 App 版本。
Definition: NERtcEngineBase.h:266
NERTC_EXTERN_API NSString *const KNERtcKeyAudioAINSEnable
是否开启 AI 降噪。 NERTC SDK 自研 AI 降噪算法,开启 AI 降噪之后,在嘈杂的环境中可以针对背景人声、键盘声等非稳态噪声进行定向降噪,同时也会提升对于环境稳态噪声的抑制,保留更纯粹的...
Definition: NERtcEngineBase.h:194
NERTC_EXTERN_API NSString *const kNERtcKeyLoginCustomData
登录扩展参数,string,默认不设置。
Definition: NERtcEngineBase.h:281
NERTC_EXTERN_API NSString *const kNERtcKeyLogLevel
SDK 日志等级,默认为 kNERtcLogLevelInfo,详细信息请参考 NERtcLogLevel。
Definition: NERtcEngineBase.h:257
NS_ASSUME_NONNULL_BEGIN NERTC_EXTERN_API NSString *const kNERtcKeyChannel1V1ModeEnabled
以下 key 用于 INERtcEngine::setParameters
Definition: NERtcEngineBase.h:8
NERTC_EXTERN_API NSString *const kNERtcKeyPublishSelfStreamEnabled
在旁路推流场景中,是否允许推送本地媒体流到 CDN。默认值 YES。
Definition: NERtcEngineBase.h:246
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferMetalRender
是否优先使用 Metal 渲染。 布尔值,默认值 NO,即使用OpenGL 渲染。
Definition: NERtcEngineBase.h:89
NERTC_EXTERN_API NSString *const KNERtcKeyDisableOverrideSpeakerOnReceiver
当系统切换听筒或扬声器时,SDK 是否以系统设置为准。 布尔值,默认为 NO。
Definition: NERtcEngineBase.h:154
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferHWEncode
是否优先使用硬件编码视频数据。 布尔值,默认值 YES。 请在初始化(setupEngineWithContext)之前设置该参数,否则该参数会在下次初始化之后生效。
Definition: NERtcEngineBase.h:47
NERTC_EXTERN_API NSString *const kNERtcKeyVideoSendOnPubType
通话开始时,默认发送的流类型,通话前设置有效。 int 类型,默认为 3,即大流。详细信息请参考 NERtcVideoPubMode。
Definition: NERtcEngineBase.h:99
NERTC_EXTERN_API NSString *const kNERtcKeyRecordHostEnabled
是否云端录制主讲人,默认值 NO
Definition: NERtcEngineBase.h:206
NERTC_EXTERN_API NSString *const kNERtcKeyAutoSubscribeAudio
是否自动订阅其他用户的音频流。 布尔值,默认为 YES,即自动订阅。
Definition: NERtcEngineBase.h:126
NERTC_EXTERN_API NSString *const kNERtcKeyAutoSubscribeVideo
是否自动订阅其他用户的视频流。 布尔值,默认值 NO,即不自动订阅。
Definition: NERtcEngineBase.h:111
NERTC_EXTERN_API NSString *const kNERtcKeyAutoSubscribeData
是否自动订阅其他用户的数据通道。 布尔值,默认为 NO,即非自动订阅。
Definition: NERtcEngineBase.h:141
NERTC_EXTERN_API NSString *const kNERtcKeyRecordAudioEnabled
是否开启云端音频录制。默认值 NO,即关闭音频录制。
Definition: NERtcEngineBase.h:215
NERTC_EXTERN_API NSString *const kNERtcKeySupportCallkit
是否需要支持 Callkit 框架。 布尔值,默认为 NO。
Definition: NERtcEngineBase.h:162
NERTC_EXTERN_API NSString *const kNERtcKeyRecordVideoEnabled
是否开启云端视频录制,默认值 NO,即关闭视频录制。
Definition: NERtcEngineBase.h:224
NERTC_EXTERN_API NSString *const kNERtcKeyRecordType
云端录制模式。详细信息请参考 NERtcRecordType。
Definition: NERtcEngineBase.h:233
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferHWDecode
是否优先使用硬件解码视频数据。 布尔值,默认值 YES。 请在初始化(setupEngineWithContext)之前设置该参数,否则该参数会在下次初始化之后生效。
Definition: NERtcEngineBase.h:58
NERTC_EXTERN_API NSString *const KNERtcKeyEnableReportVolumeWhenMute
本地用户静音时是否返回原始音量。 布尔值,默认值为 false。
Definition: NERtcEngineBase.h:175
NERTC_EXTERN_API NSString *const kNERtcKeyVideoCaptureObserverEnabled
是否需要开启视频数据采集回调,开启后开发者可以获取到原始视频数据。 布尔值,默认值 NO。 开启后如果需要关闭,需要通过调用 destroyEngine 来清除。
Definition: NERtcEngineBase.h:69
NERTC_EXTERN_API NSString *const kNERtcKeyDisableVideoDecoder
是否关闭sdk 视频解码(默认不关闭),关闭后SDK 将不会解码远端视频,因此也无法渲染接收到的远端视频
Definition: NERtcEngineBase.h:274
NERTC_EXTERN_API uint32_t const NERtcAudioMixingDefaultVolume
Definition: NERtcEngineBase.h:659
NERtcPreDecoderMediaType
媒体类型。
Definition: NERtcEngineEnum.h:1856
NERtcLiveStreamMode
直播推流模式。
Definition: NERtcEngineEnum.h:2594
NERtcVideoCropMode
视频裁剪模式
Definition: NERtcEngineEnum.h:866
NERtcLastmileProbeResultState
Last mile 质量探测结果的状态。
Definition: NERtcEngineEnum.h:3130
NERtcLogLevel
日志级别。
Definition: NERtcEngineEnum.h:3223
NERtcVideoCodecType
Definition: NERtcEngineEnum.h:1888
NERtcVideoFormatType
视频格式类型
Definition: NERtcEngineEnum.h:1005
NERtcVirtualBackgroundSourceType
自定义背景图片的类型。
Definition: NERtcEngineEnum.h:1132
NERtcVideoWatermarkType
视频水印类型。
Definition: NERtcEngineEnum.h:1216
NERtcLiveStreamVideoScaleMode
直播推流模式。
Definition: NERtcEngineEnum.h:2623
NERtcSubStreamContentPrefer
屏幕共享功能的编码策略倾向
Definition: NERtcEngineEnum.h:599
NERtcLiveStreamAudioCodecProfile
直播推流音频编码规格。
Definition: NERtcEngineEnum.h:2565
#define NERTC_EXTERN_API
Definition: NERtcEngineEnum.h:18
NERtcAudioRecordingQuality
录音音质。
Definition: NERtcEngineEnum.h:1736
NERtcAudioRecordingPosition
Definition: NERtcEngineEnum.h:1826
NERtcPayLoadType
Definition: NERtcEngineEnum.h:3210
NERtcVideoOutputOrientationMode
视频旋转方向模式。
Definition: NERtcEngineEnum.h:818
NERtcVideoProfileType
视频 profile 类型。
Definition: NERtcEngineEnum.h:395
NERtcNalFrameType
Definition: NERtcEngineEnum.h:3193
NERtcBlurDegree
自定义背景图的虚化程度。
Definition: NERtcEngineEnum.h:1175
NERtcAudioType
音频类型
Definition: NERtcEngineEnum.h:2693
NERtcVideoMirrorMode
视频镜像模式。
Definition: NERtcEngineEnum.h:780
NERtcAudioFrameOpMode
音频数据读写模式
Definition: NERtcEngineEnum.h:2713
NERtcEncryptionMode
加密模式
Definition: NERtcEngineEnum.h:3109
NERtcAudioRecordingCycleTime
Definition: NERtcEngineEnum.h:1835
NERtcDegradationPreference
带宽受限时视频编码适应性偏好
Definition: NERtcEngineEnum.h:548
NERtcLiveStreamAudioSampleRate
直播推流音频采样率。
Definition: NERtcEngineEnum.h:2527
#define NERTC_EXPORT
Definition: NERtcEngineEnum.h:12
NERtcVideoFrameRate
视频帧率。
Definition: NERtcEngineEnum.h:462
NERtcVideoRenderScaleMode
视频渲染缩放模式。
Definition: NERtcEngineEnum.h:712
NERtcAudioStreamType
音频流类型,目前同时支持音频两路流:主流和辅流
Definition: NERtcEngineEnum.h:1646
NERtcVideoRotationType
视频数据的旋转方向
Definition: NERtcEngineEnum.h:951
编码好的音频数据
Definition: NERtcEngineBase.h:3107
音频格式。
Definition: NERtcEngineBase.h:1427
音频帧。
Definition: NERtcEngineBase.h:1492
音频原始数据回调格式(默认不设置)。
Definition: NERtcEngineBase.h:1379
Definition: NERtcEngineBase.h:878
声音音量信息。
Definition: NERtcEngineBase.h:1537
本地视频基础发送配置。
Definition: NERtcEngineBase.h:362
摄像头采集配置。
Definition: NERtcEngineBase.h:485
画布水印设置。 同时设置文字、时间戳或图片水印时,如果不同类型的水印位置有重叠,会按照图片、文本、时间戳的顺序进行图层覆盖。
Definition: NERtcEngineBase.h:1985
Definition: NERtcEngineBase.h:1726
媒体流转发相关的数据结构。
Definition: NERtcEngineBase.h:1694
Options for creating audio effects
Definition: NERtcEngineBase.h:781
Options for creating mixing audios
Definition: NERtcEngineBase.h:663
配置媒体流加密模式和密钥。
Definition: NERtcEngineBase.h:2378
图片水印设置参数。 支持设置 4 个图片水印。
Definition: NERtcEngineBase.h:1931
joinChannel 回调时的一些可选信息
Definition: NERtcEngineBase.h:2938
joinChannel 时的一些可选信息
Definition: NERtcEngineBase.h:2919
Last mile 网络探测配置。
Definition: NERtcEngineBase.h:2548
单向 Last mile 网络质量探测结果报告。
Definition: NERtcEngineBase.h:2617
上下行 Last mile 网络质量探测结果。
Definition: NERtcEngineBase.h:2661
音视频流编码参数等设置
Definition: NERtcEngineBase.h:906
图片布局。
Definition: NERtcEngineBase.h:1127
直播布局。
Definition: NERtcEngineBase.h:1212
直播推流任务的配置。
Definition: NERtcEngineBase.h:1283
直播成员布局。
Definition: NERtcEngineBase.h:999
日志相关设置。
Definition: NERtcEngineBase.h:2715
编码完的视频帧数据
Definition: NERtcEngineBase.h:2999
编码完的媒体数据帧
Definition: NERtcEngineBase.h:3017
编码完的音频帧数据
Definition: NERtcEngineBase.h:2977
混响参数
Definition: NERtcEngineBase.h:2850
私有化服务器配置项
Definition: NERtcEngineBase.h:2414
文字水印设置参数。 最多可添加 10 个文字水印。
Definition: NERtcEngineBase.h:1806
时间戳水印。
Definition: NERtcEngineBase.h:1877
onUserJoined 回调时的一些可选信息
Definition: NERtcEngineBase.h:2951
onUserLeave 回调时的一些可选信息
Definition: NERtcEngineBase.h:2963
视频画布设置。
Definition: NERtcEngineBase.h:293
uint32_t backgroundColor
Definition: NERtcEngineBase.h:349
id< NERtcEngineVideoRenderSink > externalVideoRender
外部渲染器。
Definition: NERtcEngineBase.h:346
BOOL useExternalRender
是否使用外部渲染器,默认 NO 不使用,若使用SDK内部会根据externalVideoRender来进行绑定,若不使用SDK内部根据container来进行绑定。暂不支持在通话中切换内部渲染与外部渲染...
Definition: NERtcEngineBase.h:302
NERtcVideoRenderScaleMode renderMode
视频渲染模式。
Definition: NERtcEngineBase.h:322
VIEW_CLASS * container
视频窗口容器(SDK内部渲染)。
Definition: NERtcEngineBase.h:312
NERtcVideoMirrorMode mirrorMode
视频镜像模式。
Definition: NERtcEngineBase.h:336
视频图像畸变矫正相关设置。
Definition: NERtcEngineBase.h:2749
本地视频发送配置
Definition: NERtcEngineBase.h:539
Definition: NERtcEngineBase.h:3065
视频帧信息。
Definition: NERtcEngineBase.h:1582
本地辅流发送配置。
Definition: NERtcEngineBase.h:645
视频水印设置,目前支持三种类型的水印,但只能其中选择一种水印生效。
Definition: NERtcEngineBase.h:2324
视频图片水印配置。
Definition: NERtcEngineBase.h:2035
Definition: NERtcEngineBase.h:2121
Definition: NERtcEngineBase.h:2223
自定义背景图像。
Definition: NERtcEngineBase.h:2786
外部视频渲染。
Definition: NERtcEngineDelegate.h:573