NERtc iOS SDK  V4.6.420
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
139 
147 
179 
180 
181 // server record
218 
219 // live stream
231 
232 // log level
251 
259 
266 
267 
276 NERTC_EXPORT @interface NERtcVideoCanvas : NSObject
277 
286 @property (nonatomic, assign) BOOL useExternalRender;
287 
296 @property (nonatomic, nullable, strong) VIEW_CLASS *container;
297 
306 @property (nonatomic, assign) NERtcVideoRenderScaleMode renderMode;
307 
320 @property (nonatomic, assign) NERtcVideoMirrorMode mirrorMode;
321 
330 @property (nonatomic, strong) id<NERtcEngineVideoRenderSink> externalVideoRender;
331 
337 @property (nonatomic, assign) uint32_t backgroundColor;
338 
339 @end
340 
350 
359 @property (nonatomic, assign) NERtcVideoProfileType maxProfile;
360 
377 @property (nonatomic, assign) NERtcVideoFrameRate frameRate;
378 
387 @property (nonatomic, assign) NSInteger minFrameRate;
388 
450 @property (nonatomic, assign) NSInteger bitrate;
451 
460 @property (nonatomic, assign) NSInteger minBitrate;
461 
462 @end
463 
473 
494 @property (nonatomic, assign) int captureWidth;
515 @property (nonatomic, assign) int captureHeight;
516 
517 @end
527 
544 @property (nonatomic, assign) int width;
545 
562 @property (nonatomic, assign) int height;
563 
572 @property (nonatomic, assign) NERtcVideoCropMode cropMode;
573 
594 @property (nonatomic, assign) NERtcDegradationPreference degradationPreference;
595 
607 @property (nonatomic, assign) NERtcVideoMirrorMode mirrorMode;
608 
619 @property (nonatomic, assign) NERtcVideoOutputOrientationMode orientationMode;
620 
621 
622 @end
623 
633 
642 @property (nonatomic, assign) NERtcSubStreamContentPrefer contentPrefer;
643 
644 @end
645 
648 
651 
664 @property (nonatomic, copy) NSString *path;
665 
678 @property (nonatomic, assign) int loopCount;
679 
688 @property (nonatomic, assign) BOOL sendEnabled;
689 
698 @property (nonatomic, assign) BOOL playbackEnabled;
699 
710 @property (nonatomic, assign) uint32_t sendVolume;
711 
722 @property (nonatomic, assign) uint32_t playbackVolume;
723 
732 @property (nonatomic, assign) int64_t startTimeStamp;
733 
742 @property (nonatomic, assign) NERtcAudioStreamType sendWithAudioType;
743 
749 @property (nonatomic, assign) uint64_t progressInterval;
750 
763 - (BOOL)isInvalid;
764 
765 @end
766 
769 
782 @property (nonatomic, copy) NSString *path;
783 
796 @property (nonatomic, assign) int loopCount;
797 
806 @property (nonatomic, assign) BOOL sendEnabled;
807 
816 @property (nonatomic, assign) BOOL playbackEnabled;
817 
828 @property (nonatomic, assign) uint32_t sendVolume;
829 
840 @property (nonatomic, assign) uint32_t playbackVolume;
841 
847 @property (nonatomic, assign) int64_t startTimeStamp;
848 
854 @property (nonatomic, assign) NERtcAudioStreamType sendWithAudioType;
855 
861 @property (nonatomic, assign) uint64_t progressInterval;
862 
863 @end
864 
866 
867 // 录音文件在本地保存的绝对路径,需要精确到文件名及格式。例如:sdcard/xxx/audio.aac。请确保指定的路径存在并且可写。目前仅支持 WAV 或 AAC 文件格式。
868 @property (nonatomic, copy) NSString *filePath;
869 
870 // 录音采样率(Hz),可以设为 16000、32000(默认)、44100 或 48000。
871 @property (nonatomic, assign) int sampleRate;
872 
873 // 录音音质,只在 AAC 格式下有效。详细信息请参考 {@link NERtcAudioRecordingQuality}。
874 @property (nonatomic, assign) NERtcAudioRecordingQuality quality;
875 
876 // 录音文件所包含的内容。详细信息请参考 {@link NERtcAudioRecordingPosition}。
877 @property (nonatomic, assign) NERtcAudioRecordingPosition position;
878 
879 // 录制过程中,循环缓存的最大时间长度,单位(s)。详细信息请参考 {@link NERtcAudioRecordingCycleTime}。
880 @property (nonatomic, assign) NERtcAudioRecordingCycleTime cycleTime;
881 
882 @end
883 
884 #pragma mark - live stream
893 NERTC_EXPORT @interface NERtcLiveConfig: NSObject
894 
903 @property (nonatomic, assign) BOOL interruptedPlaceImage;
904 
917 @property (nonatomic, assign) BOOL singleVideoPassthrough;
930 @property (nonatomic, assign) NSInteger audioBitrate;
931 
946 @property (nonatomic, assign) NERtcLiveStreamAudioSampleRate sampleRate;
947 
960 @property (nonatomic, assign) NSInteger channels;
961 
974 @property (nonatomic, assign) NERtcLiveStreamAudioCodecProfile audioCodecProfile;
975 
976 @end
977 
987 
996 @property (nonatomic, assign) uint64_t uid;
997 
1012 @property (nonatomic, assign) BOOL videoPush;
1013 
1026 @property (nonatomic, assign) NSInteger x;
1027 
1040 @property (nonatomic, assign) NSInteger y;
1041 
1054 @property (nonatomic, assign) NSInteger width;
1055 
1068 @property (nonatomic, assign) NSInteger height;
1069 
1082 @property (nonatomic, assign) BOOL audioPush;
1083 
1092 @property (nonatomic, assign) NSInteger zOrder;
1093 
1102 @property (nonatomic, assign) NERtcLiveStreamVideoScaleMode adaption;
1103 
1104 @end
1105 
1115 
1124 @property (nonatomic, copy) NSString *url;
1125 
1138 @property (nonatomic, assign) NSInteger x;
1139 
1152 @property (nonatomic, assign) NSInteger y;
1153 
1164 @property (nonatomic, assign) NSInteger width;
1165 
1176 @property (nonatomic, assign) NSInteger height;
1177 
1187 @property (nonatomic, assign) int zorder;
1188 
1189 @end
1190 
1200 
1209 @property (nonatomic, assign) NSInteger width;
1210 
1219 @property (nonatomic, assign) NSInteger height;
1220 
1229 @property (nonatomic, assign) NSUInteger backgroundColor;
1230 
1239 @property (nonatomic, strong) NSArray<NERtcLiveStreamUserTranscoding *> * users;
1240 
1250 @property (nonatomic, nullable, strong) NERtcLiveStreamImageInfo* bgImage;
1251 
1258 @property (nonatomic, nullable, strong) NSArray<NERtcLiveStreamImageInfo*> * bgImages;
1259 
1260 @end
1261 
1271 
1280 @property (nonatomic, copy) NSString *taskID;
1281 
1292 @property (nonatomic, copy) NSString *streamURL;
1293 
1302 @property (nonatomic, assign) BOOL serverRecordEnabled;
1303 
1312 @property (nonatomic, assign) NERtcLiveStreamMode lsMode;
1313 
1322 @property (nonatomic, nullable, strong) NERtcLiveStreamLayout *layout;
1323 
1332 @property (nonatomic, nullable, strong) NERtcLiveConfig *config;
1333 
1342 @property (nonatomic, nullable, copy) NSString *extraInfo;
1343 
1352 - (BOOL)isInvalid;
1353 
1354 @end
1355 
1356 
1357 #pragma mark -- Audio Frame Observer
1367 
1382 @property (nonatomic, assign) uint32_t channels;
1383 
1392 @property (nonatomic, assign) uint32_t sampleRate;
1393 
1402 @property (nonatomic, assign) NERtcAudioFrameOpMode mode;
1403 
1404 @end
1405 
1414 NERTC_EXPORT @interface NERtcAudioFormat : NSObject
1415 
1424 @property (nonatomic, assign) NERtcAudioType type;
1437 @property (nonatomic, assign) uint32_t channels;
1438 
1447 @property (nonatomic, assign) uint32_t sampleRate;
1448 
1457 @property (nonatomic, assign) uint32_t bytesPerSample;
1458 
1467 @property (nonatomic, assign) uint32_t samplesPerChannel;
1468 
1469 @end
1470 
1479 NERTC_EXPORT @interface NERtcAudioFrame : NSObject
1480 
1489 @property (nonatomic, strong) NERtcAudioFormat* format;
1490 
1499 @property (nonatomic, assign) void* data;
1500 
1509 @property (nonatomic, assign) int64_t syncTimestamp;
1510 
1511 @end
1512 
1513 
1514 #pragma mark - Volume info
1515 
1524 NERTC_EXPORT @interface NERtcAudioVolumeInfo : NSObject
1525 
1534 @property (nonatomic, assign) uint64_t uid;
1535 
1544 @property (nonatomic, assign) unsigned int volume;
1545 
1555 @property (nonatomic, assign) unsigned int subStreamVolume;
1556 
1557 @end
1558 
1559 #pragma mark - Video Frame
1560 
1569 NERTC_EXPORT @interface NERtcVideoFrame : NSObject
1570 
1580 @property(nonatomic, assign) NERtcVideoFormatType format;
1581 
1590 @property(nonatomic, assign) uint64_t timestamp;
1591 
1600 @property(nonatomic, assign) uint32_t width;
1601 
1610 @property(nonatomic, assign) uint32_t height;
1611 
1620 @property(nonatomic, assign) NERtcVideoRotationType rotation;
1621 
1634 @property(nonatomic) void * buffer;
1635 
1643 @property(nonatomic) void * uBuffer;
1644 
1652 @property(nonatomic) void * vBuffer;
1653 
1663 @property(nonatomic, strong) NSArray<NSNumber *> *strides;
1664 
1665 @end
1666 
1667 #pragma mark- MediaRelay
1668 
1678 
1687 @property (nonatomic, copy)NSString *channelName;
1696 @property (nonatomic, copy)NSString *token;
1705 @property (nonatomic, assign)uint64_t uid;
1706 
1707 @end
1708 
1710 
1725 @property(nonatomic, strong, readonly)NSDictionary<NSString *, NERtcChannelMediaRelayInfo *> * _Nullable destinationInfos;
1726 
1741 @property(nonatomic, strong)NERtcChannelMediaRelayInfo *sourceInfo;
1742 
1759 - (BOOL)setDestinationInfo:(NERtcChannelMediaRelayInfo *_Nonnull)destinationInfo forChannelName:(NSString *_Nonnull)channelName;
1760 
1773 - (BOOL)removeDestinationInfoForChannelName:(NSString *_Nonnull)channelName;
1774 
1775 @end
1776 
1777 #pragma mark - watermark
1778 
1804 @property (nonatomic, copy, nullable) NSString *content;
1805 
1814 @property (nonatomic, assign) CGFloat fontSize;
1815 
1824 @property (nonatomic, strong, nullable) UIColor *fontColor;
1825 
1834 @property (nonatomic, strong, nullable) UIColor *wmColor;
1835 
1844 @property (nonatomic, assign) CGRect frame;
1845 
1846 @end
1847 
1861 
1870 @property (nonatomic, assign) CGFloat fontSize;
1871 
1880 @property (nonatomic, strong) UIColor *fontColor;
1881 
1890 @property (nonatomic, assign) CGRect frame;
1891 
1900 @property (nonatomic, strong) UIColor *wmColor;
1901 
1902 @end
1903 
1915 
1924 @property (nonatomic, strong, nullable) NSArray<UIImage *> *images;
1925 
1934 @property (nonatomic, assign) NSUInteger fps;
1935 
1944 @property (nonatomic, assign) BOOL loop;
1945 
1954 @property (nonatomic, assign) CGRect frame;
1955 
1956 @end
1957 
1969 
1978 @property (nonatomic, strong, nullable) NSArray<NERtcTextWatermarkConfig *> *textWatermarks;
1979 
1988 @property (nonatomic, strong, nullable) NERtcTimestampWatermarkConfig *timestampWatermark;
1989 
1998 @property (nonatomic, strong, nullable) NSArray<NERtcImageWatermarkConfig *> *imageWaterMarks;
1999 
2000 @end
2001 
2019 
2028 @property (nonatomic, assign) CGFloat wmAlpha;
2029 
2038 @property (nonatomic, assign) NSUInteger wmWidth;
2039 
2048 @property (nonatomic, assign) NSUInteger wmHeight;
2049 
2058 @property (nonatomic, assign) NSUInteger offsetX;
2059 
2068 @property (nonatomic, assign) NSUInteger offsetY;
2069 
2078 @property (nonatomic, strong) NSArray<NSString *> *imagePaths;
2079 
2090 @property (nonatomic, assign) NSUInteger fps;
2091 
2100 @property (nonatomic, assign) BOOL loop;
2101 
2102 @end
2103 
2105 
2114 @property (nonatomic, copy) NSString *content;
2115 
2124 @property (nonatomic, copy) NSString *fontPath;
2125 
2134 @property (nonatomic, assign) NSUInteger fontColor;
2135 
2144 @property (nonatomic, assign) NSUInteger fontSize;
2145 
2154 @property (nonatomic, assign) CGFloat wmAlpha;
2155 
2165 @property (nonatomic, assign) NSUInteger wmColor;
2166 
2175 @property (nonatomic, assign) NSUInteger wmWidth;
2176 
2185 @property (nonatomic, assign) NSUInteger wmHeight;
2186 
2195 @property (nonatomic, assign) NSUInteger offsetX;
2196 
2205 @property (nonatomic, assign) NSUInteger offsetY;
2206 
2207 @end
2208 
2210 
2219 @property (nonatomic, copy) NSString *fontPath;
2220 
2229 @property (nonatomic, assign) NSUInteger fontColor;
2230 
2239 @property (nonatomic, assign) NSUInteger fontSize;
2240 
2249 @property (nonatomic, assign) CGFloat wmAlpha;
2250 
2261 @property (nonatomic, assign) NSUInteger wmColor;
2262 
2271 @property (nonatomic, assign) NSUInteger wmWidth;
2272 
2281 @property (nonatomic, assign) NSUInteger wmHeight;
2282 
2291 @property (nonatomic, assign) NSUInteger offsetX;
2292 
2301 @property (nonatomic, assign) NSUInteger offsetY;
2302 
2303 @end
2304 
2314 
2323 @property (nonatomic, assign) NERtcVideoWatermarkType watermarkType;
2324 
2333 @property (nonatomic, strong) NERtcVideoWatermarkImageConfig *imageWatermark;
2334 
2343 @property (nonatomic, strong) NERtcVideoWatermarkTextConfig *textWatermark;
2344 
2353 @property (nonatomic, strong) NERtcVideoWatermarkTimestampConfig *timestampWatermark;
2354 
2355 @end
2356 
2357 #pragma mark - Encryption
2358 
2368 
2377 @property (nonatomic, assign) NERtcEncryptionMode mode;
2378 
2387 @property (nonatomic, copy, nullable) NSString *key;
2388 
2389 @end
2390 
2391 #pragma mark - privatization
2392 
2403 NERTC_EXPORT @interface NERtcServerAddresses : NSObject
2404 
2413 @property (nonatomic, copy, nullable) NSString *channelServer;
2414 
2423 @property (nonatomic, copy, nullable) NSString *statisticsServer;
2424 
2433 @property (nonatomic, copy, nullable) NSString *statisticsDispatchServer;
2434 
2443 @property (nonatomic, copy, nullable) NSString *statisticsBackupServer;
2444 
2453 @property (nonatomic, copy, nullable) NSString *roomServer;
2454 
2463 @property (nonatomic, copy, nullable) NSString *compatServer;
2464 
2473 @property (nonatomic, copy, nullable) NSString *nosLbsServer;
2474 
2483 @property (nonatomic, copy, nullable) NSString *nosUploadSever;
2484 
2493 @property (nonatomic, copy, nullable) NSString *nosTokenServer;
2494 
2503 @property (nonatomic, assign) BOOL useIPv6;
2504 
2508 @property (nonatomic, copy, nullable) NSString *cloudProxyServer;
2509 
2513 @property (nonatomic, copy, nullable) NSString *webSocketProxyServer;
2514 
2518 @property (nonatomic, copy, nullable) NSString *quicProxyServer;
2519 
2523 @property (nonatomic, copy, nullable) NSString *mediaProxyServer;
2524 
2525 @end
2526 
2527 #pragma mark - NERtcLastmileProbeConfig
2528 
2538 
2553 @property(nonatomic, assign) BOOL probeUplink;
2554 
2567 @property(nonatomic, assign) BOOL probeDownlink;
2568 
2581 @property(nonatomic, assign) NSUInteger expectedUplinkBitrate;
2582 
2592 @property(nonatomic, assign) NSUInteger expectedDownlinkBitrate;
2593 
2594 @end
2595 
2596 #pragma mark - NERtcLastmileProbeOneWayResult
2597 
2607 
2616 @property(nonatomic, assign) NSUInteger packetLossRate;
2617 
2626 @property(nonatomic, assign) NSUInteger jitter;
2627 
2636 @property(nonatomic, assign) NSUInteger availableBandwidth;
2637 
2638 @end
2639 
2640 #pragma mark - NERtcLastmileProbeResult
2641 
2651 
2660 @property(nonatomic, assign) NERtcLastmileProbeResultState state;
2661 
2670 @property(nonatomic, assign) NSUInteger rtt;
2671 
2680 @property(nonatomic, strong) NERtcLastmileProbeOneWayResult *uplinkReport;
2681 
2690 @property(nonatomic, strong) NERtcLastmileProbeOneWayResult *downlinkReport;
2691 
2692 @end
2693 
2694 #pragma mark -- Log setting
2695 
2704 NERTC_EXPORT @interface NERtcLogSetting : NSObject
2705 
2714 @property (nonatomic, copy) NSString *logDir;
2715 
2724 @property (nonatomic, assign) NERtcLogLevel logLevel;
2725 
2726 @end
2727 
2728 #pragma mark - Video Correction Config
2729 
2739 
2740 // 矫正区域的左上顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2741 @property (nonatomic, assign) CGPoint topLeft;
2742 
2743 // 矫正区域的右上顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2744 @property (nonatomic, assign) CGPoint topRight;
2745 
2746 // 矫正区域的左下顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2747 @property (nonatomic, assign) CGPoint bottomLeft;
2748 
2749 // 矫正区域的右下顶点(x 和 y 的取值范围为 0 ~ 1 的浮点数)
2750 @property (nonatomic, assign) CGPoint bottomRight;
2751 
2752 // 画布宽度(单位 px,使用外部视频渲染时需要传递)
2753 @property (nonatomic, assign) CGFloat canvasWidth;
2754 
2755 // 画布高度(单位 px,使用外部视频渲染时需要传递)
2756 @property (nonatomic, assign) CGFloat canvasHeight;
2757 
2758 // 是否镜像显示(使用外部视频渲染时需要传递)
2759 @property (nonatomic, assign) BOOL enableMirror;
2760 
2761 @end
2762 
2763 #pragma mark - NERtcVirtualBackgroundSource
2764 
2776 
2785 @property (nonatomic, assign) NERtcVirtualBackgroundSourceType backgroundSourceType;
2786 
2801 @property (nonatomic, assign) NSUInteger color;
2802 
2813 @property (nonatomic, copy) NSString *source;
2814 
2825 @property (nonatomic, assign) NERtcBlurDegree blur_degree;
2826 
2827 @end
2828 
2829 #pragma mark - Audio Effect
2830 
2839 NERTC_EXPORT @interface NERtcReverbParam : NSObject
2840 
2849 @property (nonatomic, assign) float wetGain;
2850 
2859 @property (nonatomic, assign) float dryGain;
2860 
2869 @property (nonatomic, assign) float damping;
2870 
2879 @property (nonatomic, assign) float roomSize;
2880 
2889 @property (nonatomic, assign) float decayTime;
2890 
2899 @property (nonatomic, assign) float preDelay;
2900 
2901 @end
2902 
2903 #pragma mark - extraInfo
2904 
2909 
2913 @property (nonatomic, nullable, copy) NSString *customInfo;
2914 
2920 @property (nonatomic, nullable, copy) NSString *permissionKey;
2921 
2922 @end
2923 
2928 
2932 @property (nonatomic, copy) NSString *customInfo;
2933 
2934 
2935 @end
2936 
2941 
2945 @property (nonatomic, copy) NSString *customInfo;
2946 
2947 @end
2948 
2953 
2957 @property (nonatomic, copy) NSString *customInfo;
2958 
2959 @end
2960 
2961 #pragma mark - preDecoder
2962 
2970 @property (nonatomic, assign) int width;
2971 
2975 @property (nonatomic, assign) int height;
2976 
2980 @property (nonatomic, assign) BOOL isKeyFrame;
2981 
2982 @end
2983 
2984 
2989 
2993 @property (nonatomic, assign) uint32_t perTimeMs;
2994 
2998 @property (nonatomic, assign) uint8_t toc;
2999 
3000 @end
3001 
3002 
3010 @property (nonatomic, assign) NERtcPreDecoderMediaType mediaType;
3011 
3015 @property (nonatomic, assign) uint64_t uid;
3016 
3020 @property (nonatomic, assign) int64_t timestampMs;
3021 
3025 @property (nonatomic, assign) uint8_t *data;
3026 
3030 @property (nonatomic, assign) int length;
3031 
3035 @property (nonatomic, copy) NSString *codec;
3036 
3040 @property (nonatomic, assign) BOOL isMainStream;
3041 
3045 @property (nonatomic, strong) NERtcPreDecoderVideoInfo *videoInfo;
3046 
3050 @property (nonatomic, strong) NERtcPreDecoderAudioInfo *audioInfo;
3051 
3052 @end
3053 
3055 
3056 /***
3057 * 编码器类型
3058 */
3059 @property (nonatomic, assign) NERtcVideoCodecType codecType;
3060 
3064 @property (nonatomic, assign) NERtcNalFrameType frameType;
3065 
3069 @property (nonatomic, copy) NSArray<NSNumber *> *nalLengths;
3070 
3074 @property (nonatomic, assign) unsigned char *nalData;
3075 
3079 @property (nonatomic, assign) int64_t timestampUs;
3080 
3084 @property (nonatomic, assign) int width;
3085 
3089 @property (nonatomic, assign) int height;
3090 
3091 @end
3092 
3097 
3101 @property (nonatomic, assign) unsigned char *data;
3102 
3106 @property (nonatomic, assign) int64_t timeStampUs;
3107 
3111 @property (nonatomic, assign) int sampleRate;
3112 
3116 @property (nonatomic, assign) int channels;
3117 
3121 @property (nonatomic, assign) int samplesPerChannel;
3122 
3126 @property (nonatomic, assign) int encodedLen;
3127 
3131 @property (nonatomic, assign) uint32_t encodedTimestamp;
3132 
3136 @property (nonatomic, assign) NERtcPayLoadType payloadType;
3137 
3143 @property (nonatomic, assign) uint8_t rmsLevel;
3144 
3145 @end
3146 
3147 
3149 
3156 @property (nonatomic, assign) uint64_t uId;
3157 
3164 @property (nonatomic, copy) NSString *channelName;
3170 @property (nonatomic, copy) NSString *token;
3171 
3172 @end
3173 
3175 
3181 @property (nonatomic, copy) NSString *streamingUrl;
3182 
3183 #pragma mark - push stream params
3189 @property (nonatomic, strong, nullable) NERtcStreamingRoomInfo *streamingRoomInfo;
3190 
3191 @end
3192 
3193 NS_ASSUME_NONNULL_END
NERTC_EXTERN_API uint32_t const NERtcAudioMixingMaxVolume
Definition: NERtcEngineBase.h:646
NERTC_EXTERN_API NSString *const kNERtcKeyVideoStartWithBackCamera
第一次开启摄像头时,是否使用后摄像头。 布尔值,默认值 NO,即不使用后置摄像头。
Definition: NERtcEngineBase.h:79
NERTC_EXTERN_API NSString *const KNERtcKeyDisableSWAECOnHeadset
设置耳机时不使用软件回声消除功能,默认值 NO。如设置YES 则SDK在耳机模式下不使用软件回声消除功能,会对某些机型下 耳机的音质效果有影响
Definition: NERtcEngineBase.h:168
NERTC_EXTERN_API NSString *const kNERtcKeyExtraInfo
Login 事件中的一个自定义字段,适用于标识一些额外信息,例如 App 版本。
Definition: NERtcEngineBase.h:250
NERTC_EXTERN_API NSString *const KNERtcKeyAudioAINSEnable
是否开启 AI 降噪。 NERTC SDK 自研 AI 降噪算法,开启 AI 降噪之后,在嘈杂的环境中可以针对背景人声、键盘声等非稳态噪声进行定向降噪,同时也会提升对于环境稳态噪声的抑制,保留更纯粹的...
Definition: NERtcEngineBase.h:178
NERTC_EXTERN_API NSString *const kNERtcKeyLoginCustomData
登录扩展参数,string,默认不设置。
Definition: NERtcEngineBase.h:265
NERTC_EXTERN_API NSString *const kNERtcKeyLogLevel
SDK 日志等级,默认为 kNERtcLogLevelInfo,详细信息请参考 NERtcLogLevel。
Definition: NERtcEngineBase.h:241
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:230
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferMetalRender
是否优先使用 Metal 渲染。 布尔值,默认值 NO,即使用OpenGL 渲染。
Definition: NERtcEngineBase.h:89
NERTC_EXTERN_API NSString *const KNERtcKeyDisableOverrideSpeakerOnReceiver
当系统切换听筒或扬声器时,SDK 是否以系统设置为准。 布尔值,默认为 NO。
Definition: NERtcEngineBase.h:138
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:190
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 kNERtcKeyRecordAudioEnabled
是否开启云端音频录制。默认值 NO,即关闭音频录制。
Definition: NERtcEngineBase.h:199
NERTC_EXTERN_API NSString *const kNERtcKeySupportCallkit
是否需要支持 Callkit 框架。 布尔值,默认为 NO。
Definition: NERtcEngineBase.h:146
NERTC_EXTERN_API NSString *const kNERtcKeyRecordVideoEnabled
是否开启云端视频录制,默认值 NO,即关闭视频录制。
Definition: NERtcEngineBase.h:208
NERTC_EXTERN_API NSString *const kNERtcKeyRecordType
云端录制模式。详细信息请参考 NERtcRecordType。
Definition: NERtcEngineBase.h:217
NERTC_EXTERN_API NSString *const kNERtcKeyVideoPreferHWDecode
是否优先使用硬件解码视频数据。 布尔值,默认值 YES。 请在初始化(setupEngineWithContext)之前设置该参数,否则该参数会在下次初始化之后生效。
Definition: NERtcEngineBase.h:58
NERTC_EXTERN_API NSString *const KNERtcKeyEnableReportVolumeWhenMute
本地用户静音时是否返回原始音量。 布尔值,默认值为 false。
Definition: NERtcEngineBase.h:159
NERTC_EXTERN_API NSString *const kNERtcKeyVideoCaptureObserverEnabled
是否需要开启视频数据采集回调,开启后开发者可以获取到原始视频数据。 布尔值,默认值 NO。 开启后如果需要关闭,需要通过调用 destroyEngine 来清除。
Definition: NERtcEngineBase.h:69
NERTC_EXTERN_API NSString *const kNERtcKeyDisableVideoDecoder
是否关闭sdk 视频解码(默认不关闭),关闭后SDK 将不会解码远端视频,因此也不法渲染接收到的远端视频
Definition: NERtcEngineBase.h:258
NERTC_EXTERN_API uint32_t const NERtcAudioMixingDefaultVolume
Definition: NERtcEngineBase.h:647
NERtcPreDecoderMediaType
媒体类型。
Definition: NERtcEngineEnum.h:1847
NERtcLiveStreamMode
直播推流模式。
Definition: NERtcEngineEnum.h:2585
NERtcVideoCropMode
视频裁剪模式
Definition: NERtcEngineEnum.h:857
NERtcLastmileProbeResultState
Last mile 质量探测结果的状态。
Definition: NERtcEngineEnum.h:3121
NERtcLogLevel
日志级别。
Definition: NERtcEngineEnum.h:3214
NERtcVideoCodecType
Definition: NERtcEngineEnum.h:1879
NERtcVideoFormatType
视频格式类型
Definition: NERtcEngineEnum.h:989
NERtcVirtualBackgroundSourceType
自定义背景图片的类型。
Definition: NERtcEngineEnum.h:1116
NERtcVideoWatermarkType
视频水印类型。
Definition: NERtcEngineEnum.h:1200
NERtcLiveStreamVideoScaleMode
直播推流模式。
Definition: NERtcEngineEnum.h:2614
NERtcSubStreamContentPrefer
屏幕共享功能的编码策略倾向
Definition: NERtcEngineEnum.h:590
NERtcLiveStreamAudioCodecProfile
直播推流音频编码规格。
Definition: NERtcEngineEnum.h:2556
#define NERTC_EXTERN_API
Definition: NERtcEngineEnum.h:18
NERtcAudioRecordingQuality
录音音质。
Definition: NERtcEngineEnum.h:1727
NERtcAudioRecordingPosition
Definition: NERtcEngineEnum.h:1817
NERtcPayLoadType
Definition: NERtcEngineEnum.h:3201
NERtcVideoOutputOrientationMode
视频旋转方向模式。
Definition: NERtcEngineEnum.h:809
NERtcVideoProfileType
视频 profile 类型。
Definition: NERtcEngineEnum.h:386
NERtcNalFrameType
Definition: NERtcEngineEnum.h:3184
NERtcBlurDegree
自定义背景图的虚化程度。
Definition: NERtcEngineEnum.h:1159
NERtcAudioType
音频类型
Definition: NERtcEngineEnum.h:2684
NERtcVideoMirrorMode
视频镜像模式。
Definition: NERtcEngineEnum.h:771
NERtcAudioFrameOpMode
音频数据读写模式
Definition: NERtcEngineEnum.h:2704
NERtcEncryptionMode
加密模式
Definition: NERtcEngineEnum.h:3100
NERtcAudioRecordingCycleTime
Definition: NERtcEngineEnum.h:1826
NERtcDegradationPreference
带宽受限时视频编码适应性偏好
Definition: NERtcEngineEnum.h:539
NERtcLiveStreamAudioSampleRate
直播推流音频采样率。
Definition: NERtcEngineEnum.h:2518
#define NERTC_EXPORT
Definition: NERtcEngineEnum.h:12
NERtcVideoFrameRate
视频帧率。
Definition: NERtcEngineEnum.h:453
NERtcVideoRenderScaleMode
视频渲染缩放模式。
Definition: NERtcEngineEnum.h:703
NERtcAudioStreamType
音频流类型,目前同时支持音频两路流:主流和辅流
Definition: NERtcEngineEnum.h:1637
NERtcVideoRotationType
视频数据的旋转方向
Definition: NERtcEngineEnum.h:942
编码好的音频数据
Definition: NERtcEngineBase.h:3097
音频格式。
Definition: NERtcEngineBase.h:1415
音频帧。
Definition: NERtcEngineBase.h:1480
音频原始数据回调格式(默认不设置)。
Definition: NERtcEngineBase.h:1367
Definition: NERtcEngineBase.h:866
声音音量信息。
Definition: NERtcEngineBase.h:1525
本地视频基础发送配置。
Definition: NERtcEngineBase.h:350
摄像头采集配置。
Definition: NERtcEngineBase.h:473
画布水印设置。 同时设置文字、时间戳或图片水印时,如果不同类型的水印位置有重叠,会按照图片、文本、时间戳的顺序进行图层覆盖。
Definition: NERtcEngineBase.h:1969
Definition: NERtcEngineBase.h:1710
媒体流转发相关的数据结构。
Definition: NERtcEngineBase.h:1678
Options for creating audio effects
Definition: NERtcEngineBase.h:769
Options for creating mixing audios
Definition: NERtcEngineBase.h:651
配置媒体流加密模式和密钥。
Definition: NERtcEngineBase.h:2368
图片水印设置参数。 支持设置 4 个图片水印。
Definition: NERtcEngineBase.h:1915
joinChannel 回调时的一些可选信息
Definition: NERtcEngineBase.h:2928
joinChannel 时的一些可选信息
Definition: NERtcEngineBase.h:2909
Last mile 网络探测配置。
Definition: NERtcEngineBase.h:2538
单向 Last mile 网络质量探测结果报告。
Definition: NERtcEngineBase.h:2607
上下行 Last mile 网络质量探测结果。
Definition: NERtcEngineBase.h:2651
音视频流编码参数等设置
Definition: NERtcEngineBase.h:894
图片布局。
Definition: NERtcEngineBase.h:1115
直播布局。
Definition: NERtcEngineBase.h:1200
直播推流任务的配置。
Definition: NERtcEngineBase.h:1271
直播成员布局。
Definition: NERtcEngineBase.h:987
日志相关设置。
Definition: NERtcEngineBase.h:2705
编码完的视频帧数据
Definition: NERtcEngineBase.h:2989
编码完的媒体数据帧
Definition: NERtcEngineBase.h:3007
编码完的音频帧数据
Definition: NERtcEngineBase.h:2967
Definition: NERtcEngineBase.h:3175
混响参数
Definition: NERtcEngineBase.h:2840
私有化服务器配置项
Definition: NERtcEngineBase.h:2404
Definition: NERtcEngineBase.h:3149
文字水印设置参数。 最多可添加 10 个文字水印。
Definition: NERtcEngineBase.h:1790
时间戳水印。
Definition: NERtcEngineBase.h:1861
onUserJoined 回调时的一些可选信息
Definition: NERtcEngineBase.h:2941
onUserLeave 回调时的一些可选信息
Definition: NERtcEngineBase.h:2953
视频画布设置。
Definition: NERtcEngineBase.h:277
uint32_t backgroundColor
视频画布的背景颜色。格式为 0xRRGGBB,默认值为 0x000000,即黑色。
Definition: NERtcEngineBase.h:337
id< NERtcEngineVideoRenderSink > externalVideoRender
外部渲染器。
Definition: NERtcEngineBase.h:330
BOOL useExternalRender
是否使用外部渲染器,默认 NO 不使用,若使用SDK内部会根据externalVideoRender来进行绑定,若不使用SDK内部根据container来进行绑定。暂不支持在通话中切换内部渲染与外部渲染...
Definition: NERtcEngineBase.h:286
NERtcVideoRenderScaleMode renderMode
视频渲染模式。
Definition: NERtcEngineBase.h:306
VIEW_CLASS * container
视频窗口容器(SDK内部渲染)。
Definition: NERtcEngineBase.h:296
NERtcVideoMirrorMode mirrorMode
视频镜像模式。
Definition: NERtcEngineBase.h:320
视频图像畸变矫正相关设置。
Definition: NERtcEngineBase.h:2739
本地视频发送配置
Definition: NERtcEngineBase.h:527
Definition: NERtcEngineBase.h:3055
视频帧信息。
Definition: NERtcEngineBase.h:1570
本地辅流发送配置。
Definition: NERtcEngineBase.h:633
视频水印设置,目前支持三种类型的水印,但只能其中选择一种水印生效。
Definition: NERtcEngineBase.h:2314
视频图片水印配置。
Definition: NERtcEngineBase.h:2019
Definition: NERtcEngineBase.h:2105
Definition: NERtcEngineBase.h:2210
自定义背景图像。
Definition: NERtcEngineBase.h:2776
外部视频渲染。
Definition: NERtcEngineDelegate.h:571