NERtc Windows SDK
Classes | Namespaces | Macros | Typedefs | Enumerations
nertc_engine_defines.h File Reference

NERtc SDK的一些定义 More...

#include "nertc_base_types.h"

Go to the source code of this file.

Classes

struct  nertc::NERtcLiveStreamTaskOption
 
struct  nertc::NERtcLiveStreamUserTranscoding
 
struct  nertc::NERtcLiveStreamImageInfo
 
struct  nertc::NERtcLiveStreamLayout
 
struct  nertc::NERtcLiveConfig
 
struct  nertc::NERtcLiveStreamTaskInfo
 
struct  nertc::NERtcDeviceInfo
 
struct  nertc::NERtcAudioVolumeInfo
 
struct  nertc::NERtcStats
 
struct  nertc::NERtcVideoLayerSendStats
 
struct  nertc::NERtcVideoSendStats
 
struct  nertc::NERtcVideoLayerRecvStats
 
struct  nertc::NERtcVideoRecvStats
 
struct  nertc::NERtcAudioSendStats
 
struct  nertc::NERtcAudioRecvStats
 
struct  nertc::NERtcNetworkQualityInfo
 
struct  nertc::NERtcVideoConfig
 
struct  nertc::NERtcRectangle
 
struct  nertc::NERtcVideoDimensions
 
struct  nertc::NERtcScreenCaptureParameters
 
struct  nertc::NERtcVideoCanvas
 
struct  nertc::NERtcAudioFrameRequestFormat
 
struct  nertc::NERtcAudioFormat
 
struct  nertc::NERtcAudioFrame
 
class  nertc::INERtcAudioFrameObserver
 
struct  nertc::NERtcVideoFrame
 
struct  nertc::NERtcCreateAudioMixingOption
 
struct  nertc::NERtcCreateAudioEffectOption
 

Namespaces

 nertc
 namespace nertc
 

Macros

#define kNERtcMaxPlaneCount   4
 
#define kNERtcMaxDeviceIDLength   256
 
#define kNERtcMaxDeviceNameLength   256
 
#define kNERtcMaxURILength   256
 
#define kNERtcMaxTaskIDLength   64
 
#define kNERtcMaxBuffLength   1024
 
#define kNERtcMacSEIBufferLength   4096
 
#define kNERtcExternalVideoDeviceID   "nertc-video-external-device"
 
#define kNERtcAudioDeviceAutoID   "nertc-audio-device-auto"
 
#define kNERtcKeyRecordHostEnabled   "record_host_enabled"
 
#define kNERtcKeyRecordAudioEnabled   "record_audio_enabled"
 
#define kNERtcKeyRecordVideoEnabled   "record_video_enabled"
 
#define kNERtcKeyRecordType   "record_type"
 
#define kNERtcKeyAutoSubscribeAudio   "auto_subscribe_audio"
 
#define kNERtcKeyPublishSelfStreamEnabled   "publish_self_stream_enabled"
 
#define kNERtcKeyLogLevel   "log_level"
 
#define kNERtcKeyAudioProcessingAECEnable   "audio_processing_aec_enable"
 
#define kNERtcKeyAudioAECLowLevelEnable   "audio_aec_low_level_enable"
 
#define kNERtcKeyAudioProcessingAGCEnable   "audio_processing_agc_enable"
 
#define kNERtcKeyAudioProcessingNSEnable   "audio_processing_ns_enable"
 
#define kNERtcKeyAudioProcessingAINSEnable   "audio_processing_ai_ns_enable"
 
#define kNERtcKeyAudioProcessingExternalAudioMixEnable   "audio_processing_external_audiomix_enable"
 
#define kNERtcKeyAudioProcessingEarphone   "audio_processing_earphone"
 
#define kNERtcKeyVideoSendOnPubType   "video_sendonpub_type"
 
#define kNERtcKeyTest1v1   "test_1v1"
 

Typedefs

typedef uint64_t nertc::uid_t
 
typedef uint64_t nertc::channel_id_t
 
typedef void(* nertc::onFrameDataCallback) (uid_t uid, void *data, uint32_t type, uint32_t width, uint32_t height, uint32_t count, uint32_t offset[4], uint32_t stride[4], uint32_t rotation, void *user_data)
 

Enumerations

enum  nertc::NERtcInterfaceIdType { nertc::kNERtcIIDAudioDeviceManager = 1, nertc::kNERtcIIDVideoDeviceManager = 2 }
 
enum  nertc::NERtcClientRole { nertc::kNERtcClientRoleBroadcaster = 0, nertc::kNERtcClientRoleAudience = 1 }
 
enum  nertc::NERtcChannelProfileType { nertc::kNERtcChannelProfileCommunication = 0, nertc::kNERtcChannelProfileLiveBroadcasting = 1 }
 
enum  nertc::NERtcLiveStreamLayoutMode {
  kNERtcLayoutFloatingRightVertical = 0, kNERtcLayoutFloatingLeftVertical, kNERtcLayoutSplitScreen, kNERtcLayoutSplitScreenScaling,
  kNERtcLayoutCustom, kNERtcLayoutAudioOnly
}
 
enum  nertc::NERtcLiveStreamMode { nertc::kNERtcLsModeVideo = 0, nertc::kNERtcLsModeAudio = 1 }
 
enum  nertc::NERtcLiveStreamVideoScaleMode { nertc::kNERtcLsModeVideoScaleFit = 0, nertc::kNERtcLsModeVideoScaleCropFill = 1 }
 
enum  nertc::NERtcLiveStreamAudioSampleRate { nertc::kNERtcLiveStreamAudioSampleRate32000 = 32000, nertc::kNERtcLiveStreamAudioSampleRate44100 = 44100, nertc::kNERtcLiveStreamAudioSampleRate48000 = 48000 }
 
enum  nertc::NERtcLiveStreamAudioCodecProfile { nertc::kNERtcLiveStreamAudioCodecProfileLCAAC = 0, nertc::kNERtcLiveStreamAudioCodecProfileHEAAC = 1 }
 
enum  nertc::NERtcLiveStreamStateCode { nertc::kNERtcLsStatePushing = 505, nertc::kNERtcLsStatePushFail = 506, nertc::kNERtcLsStatePushStopped = 511, nertc::kNERtcLsStateImageError = 512 }
 
enum  nertc::NERtcOSCategory { nertc::kNERtcOSiOS = 1, nertc::kNERtcOSAndroid = 2, nertc::kNERtcOSPC = 3, nertc::kNERtcOSWebRTC = 4 }
 
enum  nertc::NERtcAudioProfileType {
  nertc::kNERtcAudioProfileDefault = 0, nertc::kNERtcAudioProfileStandard = 1, nertc::kNERtcAudioProfileStandardExtend = 2, nertc::kNERtcAudioProfileMiddleQuality = 3,
  nertc::kNERtcAudioProfileMiddleQualityStereo = 4, nertc::kNERtcAudioProfileHighQuality = 5, nertc::kNERtcAudioProfileHighQualityStereo = 6
}
 
enum  nertc::NERtcAudioScenarioType { nertc::kNERtcAudioScenarioDefault = 0, nertc::kNERtcAudioScenarioSpeech = 1, nertc::kNERtcAudioScenarioMusic = 2 }
 
enum  nertc::NERtcVoiceChangerType {
  nertc::kNERtcVoiceChangerOff = 0, nertc::kNERtcVoiceChangerRobot = 1, nertc::kNERtcVoiceChangerGaint = 2, nertc::kNERtcVoiceChangerHorror = 3,
  nertc::kNERtcVoiceChangerMature = 4, nertc::kNERtcVoiceChangerManToWoman = 5, nertc::kNERtcVoiceChangerWomanToMan = 6, nertc::kNERtcVoiceChangerManToLoli = 7,
  nertc::kNERtcVoiceChangerWomanToLoli = 8
}
 
enum  nertc::NERtcVoiceBeautifierType {
  nertc::kNERtcVoiceBeautifierOff = 0, nertc::kNERtcVoiceBeautifierMuffled = 1, nertc::kNERtcVoiceBeautifierMellow = 2, nertc::kNERtcVoiceBeautifierClear = 3,
  nertc::kNERtcVoiceBeautifierMagnetic = 4, nertc::kNERtcVoiceBeautifierRecordingstudio = 5, nertc::kNERtcVoiceBeautifierNature = 6, nertc::kNERtcVoiceBeautifierKTV = 7,
  nertc::kNERtcVoiceBeautifierRemote = 8, nertc::kNERtcVoiceBeautifierChurch = 9, nertc::kNERtcVoiceBeautifierBedroom = 10, nertc::kNERtcVoiceBeautifierLive = 11
}
 
enum  nertc::NERtcVoiceEqualizationBand {
  nertc::kNERtcVoiceEqualizationBand_31 = 0, nertc::kNERtcVoiceEqualizationBand_62 = 1, nertc::kNERtcVoiceEqualizationBand_125 = 2, nertc::kNERtcVoiceEqualizationBand_250 = 3,
  nertc::kNERtcVoiceEqualizationBand_500 = 4, nertc::kNERtcVoiceEqualizationBand_1K = 5, nertc::kNERtcVoiceEqualizationBand_2K = 6, nertc::kNERtcVoiceEqualizationBand_4K = 7,
  nertc::kNERtcVoiceEqualizationBand_8K = 8, nertc::kNERtcVoiceEqualizationBand_16K = 9
}
 
enum  nertc::NERtcVideoProfileType {
  nertc::kNERtcVideoProfileLowest = 0, nertc::kNERtcVideoProfileLow = 1, nertc::kNERtcVideoProfileStandard = 2, nertc::kNERtcVideoProfileHD720P = 3,
  nertc::kNERtcVideoProfileHD1080P = 4, kNERtcVideoProfileNone = 5, kNERtcVideoProfileMAX = kNERtcVideoProfileHD1080P, nertc::kNERtcVideoProfileFake = 6
}
 
enum  nertc::NERtcRemoteVideoStreamType { nertc::kNERtcRemoteVideoStreamTypeHigh = 0, nertc::kNERtcRemoteVideoStreamTypeLow = 1, nertc::kNERtcRemoteVideoStreamTypeNone = 2 }
 
enum  nertc::NERtcAudioDeviceType { nertc::kNERtcAudioDeviceUnknown = 0, nertc::kNERtcAudioDeviceRecord, nertc::kNERtcAudioDevicePlayout }
 
enum  nertc::NERtcAudioDeviceState { nertc::kNERtcAudioDeviceActive = 0, nertc::kNERtcAudioDeviceUnactive }
 
enum  nertc::NERtcAudioDeviceTransportType {
  nertc::kNERtcAudioDeviceTransportTypeUnknown = 0, nertc::kNERtcAudioDeviceTransportTypeBluetooth = 1, nertc::kNERtcAudioDeviceTransportTypeBluetoothA2DP = 2, nertc::kNERtcAudioDeviceTransportTypeBluetoothLE = 3,
  nertc::kNERtcAudioDeviceTransportTypeUSB = 4, nertc::kNERtcAudioDeviceTransportTypeHDMI = 5, nertc::kNERtcAudioDeviceTransportTypeBuiltIn = 6, nertc::kNERtcAudioDeviceTransportTypeThunderbolt = 7,
  nertc::kNERtcAudioDeviceTransportTypeAirPlay = 8, nertc::kNERtcAudioDeviceTransportTypeVirtual = 9, nertc::kNERtcAudioDeviceTransportTypeOther = 10
}
 
enum  nertc::NERtcVideoDeviceTransportType { nertc::kNERtcVideoDeviceTransportTypeUnknown = 0, nertc::kNERtcVideoDeviceTransportTypeUSB = 1, nertc::kNERtcVideoDeviceTransportTypeVirtual = 2, nertc::kNERtcVideoDeviceTransportTypeOther = 3 }
 
enum  nertc::NERtcVideoDeviceType { nertc::kNERtcVideoDeviceUnknown = 0, nertc::kNERtcVideoDeviceCapture }
 
enum  nertc::NERtcVideoDeviceState { nertc::kNERtcVideoDeviceAdded = 0, nertc::kNERtcVideoDeviceRemoved }
 
enum  nertc::NERtcVideoScalingMode { nertc::kNERtcVideoScaleFit = 0, nertc::kNERtcVideoScaleFullFill = 1, nertc::kNERtcVideoScaleCropFill = 2 }
 
enum  nertc::NERtcVideoMirrorMode { nertc::kNERtcVideoMirrorModeAuto = 0, nertc::kNERtcVideoMirrorModeEnabled = 1, nertc::kNERtcVideoMirrorModeDisabled = 2 }
 
enum  nertc::NERtcConnectionStateType {
  nertc::kNERtcConnectionStateDisconnected = 1, nertc::kNERtcConnectionStateConnecting = 2, nertc::kNERtcConnectionStateConnected = 3, nertc::kNERtcConnectionStateReconnecting = 4,
  nertc::kNERtcConnectionStateFailed = 5
}
 
enum  nertc::NERtcReasonConnectionChangedType {
  nertc::kNERtcReasonConnectionChangedLeaveChannel = 1, nertc::kNERtcReasonConnectionChangedChannelClosed = 2, nertc::kNERtcReasonConnectionChangedBeKicked = 3, nertc::kNERtcReasonConnectionChangedTimeOut = 4,
  nertc::kNERtcReasonConnectionChangedJoinChannel = 5, nertc::kNERtcReasonConnectionChangedJoinSucceed = 6, nertc::kNERtcReasonConnectionChangedReJoinSucceed = 7, nertc::kNERtcReasonConnectionChangedMediaConnectionDisconnected = 8,
  nertc::kNERtcReasonConnectionChangedSignalDisconnected = 9, nertc::kNERtcReasonConnectionChangedRequestChannelFailed = 10, nertc::kNERtcReasonConnectionChangedJoinChannelFailed = 11
}
 
enum  nertc::NERtcNetworkQualityType {
  nertc::kNERtcNetworkQualityUnknown = 0, nertc::kNERtcNetworkQualityExcellent = 1, nertc::kNERtcNetworkQualityGood = 2, nertc::kNERtcNetworkQualityPoor = 3,
  nertc::kNERtcNetworkQualityBad = 4, nertc::kNERtcNetworkQualityVeryBad = 5, nertc::kNERtcNetworkQualityDown = 6
}
 
enum  nertc::NERtcVideoCropMode { nertc::kNERtcVideoCropModeDefault = 0, nertc::kNERtcVideoCropMode16x9 = 1, nertc::kNERtcVideoCropMode4x3 = 2, nertc::kNERtcVideoCropMode1x1 = 3 }
 
enum  nertc::NERtcVideoFramerateType {
  nertc::kNERtcVideoFramerateFpsDefault = 0, nertc::kNERtcVideoFramerateFps_7 = 7, nertc::kNERtcVideoFramerateFps_10 = 10, nertc::kNERtcVideoFramerateFps_15 = 15,
  nertc::kNERtcVideoFramerateFps_24 = 24, nertc::kNERtcVideoFramerateFps_30 = 30, nertc::kNERtcVideoFramerateFps_60 = 60
}
 
enum  nertc::NERtcDegradationPreference { nertc::kNERtcDegradationDefault = 0, nertc::kNERtcDegradationMaintainFramerate = 1, nertc::kNERtcDegradationMaintainQuality = 2, nertc::kNERtcDegradationBalanced = 3 }
 
enum  nertc::NERtcScreenProfileType {
  nertc::kNERtcScreenProfile480P = 0, nertc::kNERtcScreenProfileHD720P = 1, nertc::kNERtcScreenProfileHD1080P = 2, nertc::kNERtcScreenProfileCustom = 3,
  kNERtcScreenProfileNone = 4, kNERtcScreenProfileMAX = kNERtcScreenProfileHD1080P
}
 
enum  nertc::NERtcSubStreamContentPrefer { nertc::kNERtcSubStreamContentPreferMotion = 0, nertc::kNERtcSubStreamContentPreferDetails = 1 }
 
enum  nertc::NERtcRecordType { nertc::kNERtcRecordTypeAll = 0, nertc::kNERtcRecordTypeMix = 1, nertc::kNERtcRecordTypeSingle = 2 }
 
enum  nertc::NERtcAudioType { nertc::kNERtcAudioTypePCM16 = 0 }
 
enum  nertc::NERtcRawAudioFrameOpModeType { nertc::kNERtcRawAudioFrameOpModeReadOnly = 0, nertc::kNERtcRawAudioFrameOpModeReadWrite }
 
enum  nertc::NERtcVideoType {
  nertc::kNERtcVideoTypeI420 = 0, nertc::kNERtcVideoTypeNV12 = 1, nertc::kNERtcVideoTypeNV21 = 2, nertc::kNERtcVideoTypeBGRA = 3,
  nertc::kNERtcVideoTypeCVPixelBuffer = 4
}
 
enum  nertc::NERtcVideoRotation { nertc::kNERtcVideoRotation_0 = 0, nertc::kNERtcVideoRotation_90 = 90, nertc::kNERtcVideoRotation_180 = 180, nertc::kNERtcVideoRotation_270 = 270 }
 
enum  nertc::NERtcSessionLeaveReason {
  nertc::kNERtcSessionLeaveNormal = 0, nertc::kNERtcSessionLeaveForFailOver = 1, nertc::kNERtcSessionLeaveUpdate = 2, nertc::kNERtcSessionLeaveForKick = 3,
  nertc::kNERtcSessionLeaveTimeOut = 4
}
 
enum  nertc::NERtcAudioMixingState { nertc::kNERtcAudioMixingStateFinished = 0, nertc::kNERtcAudioMixingStateFailed = 1 }
 
enum  nertc::NERtcLogLevel {
  nertc::kNERtcLogLevelFatal = 0, nertc::kNERtcLogLevelError = 1, nertc::kNERtcLogLevelWarning = 2, nertc::kNERtcLogLevelInfo = 3,
  nertc::kNERtcLogLevelDetailInfo = 4, nertc::kNERtcLogLevelVerbos = 5, nertc::kNERtcLogLevelDebug = 6, nertc::kNERtcLogLevelOff = 7
}
 
enum  nertc::NERtcSendOnPubType { nertc::kNERtcSendOnPubNone = 0, nertc::kNERtcSendOnPubHigh = 1, nertc::kNERtcSendOnPubLow = 1 << 1, nertc::kNERtcSendOnPubAll = kNERtcSendOnPubLow | kNERtcSendOnPubHigh }
 
enum  nertc::NERtcStreamChannelType { nertc::kNERtcStreamChannelTypeMainStream = 0, nertc::kNERtcStreamChannelTypeSubStream = 1 }
 

Detailed Description

NERtc SDK的一些定义

Author
Harrison
Date
2018/11/23

Macro Definition Documentation

#define kNERtcAudioDeviceAutoID   "nertc-audio-device-auto"

音频设备自动选择ID,设置该ID为设备时,SDK会根据设备插拔系统设置等自动选择合适音频设备。

#define kNERtcExternalVideoDeviceID   "nertc-video-external-device"

外部视频输入源设备ID,开启外部输入之后,需要通过setDevice设置此设备ID。

#define kNERtcKeyAudioAECLowLevelEnable   "audio_aec_low_level_enable"

bool value. low level AEC开关,默认值 false,需要kNERtcKeyAudioProcessingAECEnable打开才生效

#define kNERtcKeyAudioProcessingAECEnable   "audio_processing_aec_enable"

bool value. AEC开关,默认值 true

#define kNERtcKeyAudioProcessingAGCEnable   "audio_processing_agc_enable"

bool value. AGC开关,默认值 true

#define kNERtcKeyAudioProcessingAINSEnable   "audio_processing_ai_ns_enable"

bool value.AI NS开关,建议通话前修改,默认值 false

#define kNERtcKeyAudioProcessingEarphone   "audio_processing_earphone"

bool value. 通知SDK是否使用耳机, true: 使用耳机, false: 不使用耳机,默认值 false

#define kNERtcKeyAudioProcessingExternalAudioMixEnable   "audio_processing_external_audiomix_enable"

bool value. 输入混音开关,默认值 false

#define kNERtcKeyAudioProcessingNSEnable   "audio_processing_ns_enable"

bool value. NS开关,默认值 true

#define kNERtcKeyAutoSubscribeAudio   "auto_subscribe_audio"

bool value,其他用户打开音频时,自动订阅。默认值 true。通话前设置有效

#define kNERtcKeyLogLevel   "log_level"

int value, NERtcLogLevel,SDK 输出小于或等于该级别的log,默认为 kNERtcLogLevelInfo

#define kNERtcKeyPublishSelfStreamEnabled   "publish_self_stream_enabled"

bool value,开启旁路直播。默认值 false。通话前设置有效

#define kNERtcKeyRecordAudioEnabled   "record_audio_enabled"

bool value,启用服务器音频录制。默认值 false。通话前设置有效

#define kNERtcKeyRecordHostEnabled   "record_host_enabled"

通过 JSON 配置 SDK 提供技术预览或特别定制功能。以标准化方式公开 JSON 选项。详见API setParameters bool value. true: 录制主讲人, false: 不是录制主讲人。通话前设置有效

#define kNERtcKeyRecordType   "record_type"

int value, NERtcRecordType。通话前设置有效

#define kNERtcKeyRecordVideoEnabled   "record_video_enabled"

bool value,启用服务器视频录制。默认值 false。通话前设置有效

#define kNERtcKeyTest1v1   "test_1v1"

bool value. 1v1模式开关,默认关闭。通话前设置有效

#define kNERtcKeyVideoSendOnPubType   "video_sendonpub_type"

int value. NERtcSendOnPubType;设置视频发送策略,默认发送大流 kNERtcSendOnPubHigh。通话前设置有效

#define kNERtcMacSEIBufferLength   4096

直播推流中用到的SEI信息最大长度,单位:字节

#define kNERtcMaxBuffLength   1024

字符串缓存区最大长度。

#define kNERtcMaxDeviceIDLength   256

设备ID最大长度。

#define kNERtcMaxDeviceNameLength   256

设备名最大长度。

#define kNERtcMaxPlaneCount   4

Video max plane count。

#define kNERtcMaxTaskIDLength   64

任务ID最大长度。

#define kNERtcMaxURILength   256

URI最大长度。