// Copyright © 2022 BytePlusRTC All rights reserved. // SPDX-License-Identifier: MIT import { NSString, NSInteger, BOOL, CVPixelBufferRef, NSData, int, CMTime, NSArray, float, double, longlong, int64_t, CGFloat, NSObject, CMSampleBufferRef, intptr_t, CGRect, CGSize, NSNumber, NSUInteger, SInt64, id, uint32_t } from './types'; import { ByteRtcScreenCapturerExtDelegate, ByteRTCMediaPlayerCustomSourceProvider } from './callback'; import { RPSampleBufferType, ByteRTCView } from './external'; export declare enum ByteRTCASRAuthorizationType { ByteRTCASRAuthorizationTypeToken = 0, ByteRTCASRAuthorizationTypeSignature = 1 } export declare class ByteRTCLiveTranscoding { static defaultTranscoding(): ByteRTCLiveTranscoding; expectedMixingType: ByteRTCStreamMixingType; layout: ByteRTCVideoCompositingLayout; video: ByteRTCTranscodingVideoConfig; audio: ByteRTCTranscodingAudioConfig; clientMixParam: ByteRTCTranscodingClientMixParam; spatialConfig: ByteRTCTranscodingSpatialConfig; url: NSString; roomId: NSString; userId: NSString; init(): this; } export declare class ByteRTCAudioEffectPlayerConfig { type: ByteRTCAudioMixingType; pitch: NSInteger; playCount: NSInteger; startPos: NSInteger; init(): this; } export declare class ByteRTCRecordingInfo { filePath: NSString; codecType: ByteRTCVideoCodecType; width: NSInteger; height: NSInteger; init(): this; } export declare class ByteRTCSubscribeConfig { isScreen: BOOL; subscribeVideo: BOOL; subscribeAudio: BOOL; videoIndex: NSInteger; svcLayer: NSInteger; width: NSInteger; height: NSInteger; framerate: NSInteger; init(): this; } export declare class ByteRTCUserInfo { userId: NSString; extraInfo: NSString; init(): this; } export declare enum ByteRTCAudioPlaybackDevice { ByteRTCAudioPlaybackDeviceHeadset = 1, ByteRTCAudioPlaybackDeviceEarpiece = 2, ByteRTCAudioPlaybackDeviceSpeakerphone = 3, ByteRTCAudioPlaybackDeviceHeadsetBluetooth = 4, ByteRTCAudioPlaybackDeviceHeadsetUSB = 5 } export declare enum ByteRTCMessageConfig { ByteRTCMessageConfigReliableOrdered = 0, ByteRTCMessageConfigUnreliableOrdered = 1, ByteRTCMessageConfigUnreliableUnordered = 2 } export declare enum ByteRTCPublishStateChangeReason { /** {en} * @brief Requested to publish. * */ ByteRTCPublishStateChangeReasonPublish = 0, /** {en} * @brief Requested to remove. * */ ByteRTCPublishStateChangeReasonUnpublish = 1, /** {en} * @brief The token the user used was not permitted to publish. * */ ByteRTCPublishStateChangeReasonNoPublishPermission = 2, /** {en} * @brief The number of streams the user has published has exceeded the limit. * */ ByteRTCPublishStateChangeReasonOverStreamPublishLimit = 3, /** {en} * @brief The stream failed to remove from a room when you are publishing the stream in two or more rooms. * */ ByteRTCPublishStateChangeReasonMultiRoomUnpublishFailed = 4, /** {en} * @brief Failed to publish due to the server error. * */ ByteRTCPublishStateChangeReasonPublishStreamFailed = 5, /** {en} * @brief The user who tried to publish a stream is not a host. Call setUserVisibility{@link #IRTCRoom#setUserVisibility} to change the user role. * */ ByteRTCPublishStateChangeReasonPublishStreamForbidden = 6, /** {en} * @brief The user who tried to publish a stream has already published a stream in a room. * */ ByteRTCPublishStateChangeReasonUserInPublish = 7 } export declare enum ByteRTCPublishState { /** {en} * @brief Successfully published. * */ ByteRTCPublishStatePublish = 0, /** {en} * @brief Failed to publish. * */ ByteRTCPublishStateUnpublish = 1 } export declare enum ByteRTCSubscribeStateChangeReason { /** {en} * @brief Requested to subscribe. * */ ByteRTCSubscribeStateChangeReasonSubscribe = 0, /** {en} * @brief Requested to unsubscribe. * */ ByteRTCSubscribeStateChangeReasonUnsubscribe = 1, /** {en} * @brief The remote user published a stream. * */ ByteRTCSubscribeStateChangeReasonRemotePublish = 2, /** {en} * @brief The remote user removed a stream. * */ ByteRTCSubscribeStateChangeReasonRemoteUnpublish = 3, /** {en} * @brief Failed to subscribe due to the server error. The SDK will automatically retry. * */ ByteRTCSubscribeStateChangeReasonStreamFailed5xx = 4, /** {en} * @brief Failed to subscribe since the stream to be subscribe to was not found in the room. The SDK will automatically retry the subscription. If the subscription still fails, we recommend you exit and retry. * */ ByteRTCSubscribeStateChangeReasonStreamFailed404 = 5, /** {en} * @brief The number of streams the user has subscribed to has exceeded the limit. * */ ByteRTCSubscribeStateChangeReasonOverStreamSubscribeLimit = 6, /** {en} * @brief The user was not permitted to subscribe to the stream. * */ ByteRTCSubscribeStateChangeReasonNoSubscribePermission = 7 } export declare class ByteRTCVideoSinkDelegate { onFrame?(videoFrame: ByteRTCVideoFrame): void; renderPixelBuffer$rotation$contentType$extendedData?(pixelBuffer: CVPixelBufferRef, rotation: ByteRTCVideoRotation, contentType: ByteRTCVideoContentType, extendedData: NSData): void; } export declare class ByteRTCMixedStreamConfig { static defaultMixedStreamConfig(): ByteRTCMixedStreamConfig; expectedMixingType: ByteRTCMixedStreamType; layoutConfig: ByteRTCMixedStreamLayoutConfig; videoConfig: ByteRTCMixedStreamVideoConfig; audioConfig: ByteRTCMixedStreamAudioConfig; clientMixConfig: ByteRTCMixedStreamClientMixConfig; spatialAudioConfig: ByteRTCMixedStreamSpatialAudioConfig; serverControlConfig: ByteRTCMixedStreamServerControlConfig; pushURL: NSString; roomID: NSString; userID: NSString; init(): this; } export declare enum ByteRTCNetworkDetectionLinkType { ByteRTCNetworkDetectionLinkTypeUp = 0, ByteRTCNetworkDetectionLinkTypeDown = 1 } export declare class ByteRTCVirtualBackgroundSource { sourceType: ByteRTCVirtualBackgroundSourceType; sourceColor: int; sourcePath: NSString; init(): this; } export declare class ByteRTCLocalVideoSinkConfig { position: ByteRTCLocalVideoRenderPosition; requiredPixelFormat: ByteRTCVideoSinkPixelFormat; init(): this; } export declare enum ByteRTCDataMessageSourceType { ByteRTCDataMessageSourceTypeDefault = 0, ByteRTCDataMessageSourceTypeSystem = 1 } export declare enum ByteRTCVideoCapturePreference { ByteRTCVideoCapturePreferenceAuto = 0, ByteRTCVideoCapturePreferenceMannal = 1, ByteRTCVideoCapturePreferenceAutoPerformance = 2 } export declare enum ByteRTCProblemFeedbackOption { ByteRTCProblemFeedbackOptionNone = 0, ByteRTCProblemFeedbackOptionOtherMessage = 1, ByteRTCProblemFeedbackOptionDisconnected = 2, ByteRTCProblemFeedbackOptionEarBackDelay = 4, ByteRTCProblemFeedbackOptionLocalNoise = 1024, ByteRTCProblemFeedbackOptionLocalAudioLagging = 2048, ByteRTCProblemFeedbackOptionLocalNoAudio = 4096, ByteRTCProblemFeedbackOptionLocalAudioStrength = 8192, ByteRTCProblemFeedbackOptionLocalEcho = 16384, ByteRTCProblemFeedbackOptionLocalVideoFuzzy = 16777216, ByteRTCProblemFeedbackOptionLocalNotSync = 33554432, ByteRTCProblemFeedbackOptionLocalVideoLagging = 67108864, ByteRTCProblemFeedbackOptionLocalNoVideo = 134217728, ByteRTCProblemFeedbackOptionRemoteNoise = 32, ByteRTCProblemFeedbackOptionRemoteAudioLagging = 64, ByteRTCProblemFeedbackOptionRemoteNoAudio = 128, ByteRTCProblemFeedbackOptionRemoteAudioStrength = 256, ByteRTCProblemFeedbackOptionRemoteEcho = 512, ByteRTCProblemFeedbackOptionRemoteVideoFuzzy = 524288, ByteRTCProblemFeedbackOptionRemoteNotSync = 1048576, ByteRTCProblemFeedbackOptionRemoteVideoLagging = 2097152, ByteRTCProblemFeedbackOptionRemoteNoVideo = 4194304 } export declare class ByteRTCAudioFormat { sampleRate: ByteRTCAudioSampleRate; channel: ByteRTCAudioChannel; samplesPerCall: int; init(): this; } export declare enum ByteRTCNetworkType { ByteRTCNetworkTypeUnknown = -1, ByteRTCNetworkTypeDisconnected = 0, ByteRTCNetworkTypeLAN = 1, ByteRTCNetworkTypeWIFI = 2, ByteRTCNetworkTypeMobile2G = 3, ByteRTCNetworkTypeMobile3G = 4, ByteRTCNetworkTypeMobile4G = 5, ByteRTCNetworkTypeMobile5G = 6 } export declare class ByteRTCVideoFrame { format: int; contentType: ByteRTCVideoContentType; time: CMTime; strideInPixels: int; width: int; height: int; textureBuf: CVPixelBufferRef; dataBuf: NSData; rotation: ByteRTCVideoRotation; colorSpace: ByteRTCColorSpace; cameraId: ByteRTCCameraID; extendedData: NSData; supplementaryInfo: NSData; numberOfPlanes: int; planeDatas: NSArray; planeStrides: NSArray; stride: int; init(): this; } export declare enum ByteRTCPlayerError { ByteRTCPlayerErrorOK = 0, ByteRTCPlayerErrorFormatNotSupport = 1, ByteRTCPlayerErrorInvalidPath = 2, ByteRTCPlayerErrorInvalidState = 3, ByteRTCPlayerErrorInvalidPosition = 4, ByteRTCPlayerErrorInvalidVolume = 5, ByteRTCPlayerErrorInvalidPitch = 6, ByteRTCPlayerErrorInvalidAudioTrackIndex = 7, ByteRTCPlayerErrorInvalidPlaybackSpeed = 8, ByteRTCPlayerErrorInvalidEffectId = 9 } export declare class ByteRTCAudioEnhancementConfig { enhanceSignaling: BOOL; enhanceAudio: BOOL; init(): this; } export declare enum ByteRTCLocalAudioStreamState { ByteRTCLocalAudioStreamStateStopped = 0, ByteRTCLocalAudioStreamStateRecording = 1, ByteRTCLocalAudioStreamStateEncoding = 2, ByteRTCLocalAudioStreamStateFailed = 3 } export declare enum ByteRTCMixedStreamVideoType { ByteRTCMixedStreamVideoTypeMain = 0, ByteRTCMixedStreamVideoTypeScreen = 1 } export declare enum ByteRTCVoiceReverbType { ByteRTCVoiceReverbOriginal = 0, ByteRTCVoiceReverbEcho = 1, ByteRTCVoiceReverbConcert = 2, ByteRTCVoiceReverbEthereal = 3, ByteRTCVoiceReverbKTV = 4, ByteRTCVoiceReverbStudio = 5, ByteRTCVoiceReverbVirtualStereo = 6, ByteRTCVoiceReverbSpacious = 7, ByteRTCVoiceReverb3D = 8, ByteRTCVoiceReverbPop = 9, ByteRTCVoiceReverbDisco = 10, ByteRTCVoiceReverbOldRecord = 11, ByteRTCVoiceReverbHarmony = 12, ByteRTCVoiceReverbRock = 13, ByteRTCVoiceReverbBlues = 14, ByteRTCVoiceReverbJazz = 15, ByteRTCVoiceReverbElectronic = 16, ByteRTCVoiceReverbVinyl = 17, ByteRTCVoiceReverbChamber = 18 } export declare enum ByteRTCAudioFrameSource { ByteRTCAudioFrameSourceTypeMic = 0, ByteRTCAudioFrameSourceTypePlayback = 1, ByteRTCAudioFrameSourceTypeMixed = 2 } export declare enum ByteRTCLocalAudioStreamError { ByteRTCLocalAudioStreamErrorOk = 0, ByteRTCLocalAudioStreamErrorFailure = 1, ByteRTCLocalAudioStreamErrorDeviceNoPermission = 2, ByteRTCLocalAudioStreamErrorDeviceBusy = 3, ByteRTCLocalAudioStreamErrorRecordFailure = 4, ByteRTCLocalAudioStreamErrorEncodeFailure = 5, ByteRTCLocalAudioStreamErrorNoRecordingDevice = 6 } export declare enum ByteRTCUserOfflineReason { ByteRTCUserOfflineReasonQuit = 0, ByteRTCUserOfflineReasonDropped = 1, ByteRTCUserOfflineReasonSwitchToInvisible = 2, ByteRTCUserOfflineReasonKickedByAdmin = 3 } export declare class ByteRTCExpressionDetectInfo { age: float; boyProb: float; attractive: float; happyScore: float; sadScore: float; angryScore: float; surpriseScore: float; arousal: float; valence: float; init(): this; } export declare class ByteRTCForwardStreamConfiguration { roomId: NSString; token: NSString; init(): this; } export declare class ByteRTCVideoEncoderConfig { width: NSInteger; height: NSInteger; frameRate: NSInteger; maxBitrate: NSInteger; minBitrate: NSInteger; encoderPreference: ByteRTCVideoEncoderPreference; init(): this; } export declare enum ByteRTCUserVisibilityChangeError { ByteRTCUserVisibilityChangeErrorOk = 0, ByteRTCUserVisibilityChangeErrorUnknown = 1, ByteRTCUserVisibilityChangeErrorTooManyVisibleUser = 2 } export declare enum ByteRTCKTVPlayerErrorCode { ByteRTCKTVPlayerErrorCodeOK = 0, ByteRTCKTVPlayerErrorCodeFileNotExist = -3020, ByteRTCKTVPlayerErrorCodeFileError = -3021, ByteRTCKTVPlayerErrorCodeNotJoinRoom = -3022, ByteRTCKTVPlayerErrorCodeParam = -3023, ByteRTCKTVPlayerErrorCodeStartError = -3024, ByteRTCKTVPlayerErrorCodeMixIdError = -3025, ByteRTCKTVPlayerErrorCodePositionError = -3026, ByteRTCKTVPlayerErrorCodeAudioVolumeError = -3027, ByteRTCKTVPlayerErrorCodeTypeError = -3028, ByteRTCKTVPlayerErrorCodePitchError = -3029, ByteRTCKTVPlayerErrorCodeAudioTrackError = -3030, ByteRTCKTVPlayerErrorCodeStartingError = -3031 } export declare enum ByteRTCMusicFilterType { ByteRTCMusicFilterTypeNone = 0, ByteRTCMusicFilterTypeWithoutLyric = 1, ByteRTCMusicFilterTypeUnsupportedScore = 2, ByteRTCMusicFilterTypeUnsupportedAccopmay = 4, ByteRTCMusicFilterTypeUnsupportedClimx = 8 } export declare enum ByteRTCLocalProxyType { ByteRTCLocalProxyTypeSocks5 = 1, ByteRTCLocalProxyTypeHttpTunnel = 2 } export declare class ByteRTCForwardStreamEventInfo { roomId: NSString; event: ByteRTCForwardStreamEvent; init(): this; } export declare enum ByteRTCMixedStreamClientMixVideoFormat { ByteRTCMixedStreamClientMixVideoFormatI420 = 0, ByteRTCMixedStreamClientMixVideoFormatTexture2D = 1, ByteRTCMixedStreamClientMixVideoFormatCVPixelBufferBGRA = 2, ByteRTCMixedStreamClientMixVideoFormatNV12 = 3 } export declare enum ByteRTCLocalLogLevel { ByteRTCLocalLogLevelInfo = 0, ByteRTCLocalLogLevelWarning = 1, ByteRTCLocalLogLevelError = 2, ByteRTCLocalLogLevelNone = 3 } export declare enum ByteRTCLocalProxyState { ByteRTCLocalProxyStateInited = 0, ByteRTCLocalProxyStateConnected = 1, ByteRTCLocalProxyStateError = 2 } export declare enum ByteRTCStreamIndex { ByteRTCStreamIndexMain = 0, ByteRTCStreamIndexScreen = 1, ByteRTCStreamIndex3rd = 2, ByteRTCStreamIndex4th = 3, ByteRTCStreamIndex5th = 4, ByteRTCStreamIndex6th = 5, ByteRTCStreamIndex7th = 6, ByteRTCStreamIndexMax = 7 } export declare class ByteRTCScreenVideoEncoderConfig { width: NSInteger; height: NSInteger; frameRate: NSInteger; maxBitrate: NSInteger; minBitrate: NSInteger; encoderPreference: ByteRTCScreenVideoEncoderPreference; init(): this; } export declare class ByteRTCSysStats { cpuCores: int; cpuAppUsage: double; memoryUsage: double; fullMemory: longlong; totalMemoryUsage: longlong; freeMemory: longlong; memoryRatio: double; totalMemoryRatio: double; init(): this; } export declare enum ByteRTCVideoStreamState { ByteRTCVideoStreamStateSuccess = 0, ByteRTCVideoStreamStateInvalid = -2 } export declare class ByteRTCMixedStreamVideoConfig { videoCodec: ByteRTCMixedStreamVideoCodecType; width: NSInteger; height: NSInteger; fps: NSInteger; gop: NSInteger; bitrate: NSInteger; enableBFrame: BOOL; init(): this; } export declare enum ByteRTCVideoRenderMirrorType { ByteRTCVideoRenderMirrorTypeOn = 1, ByteRTCVideoRenderMirrorTypeOff = 2 } export declare enum ByteRTCVideoSourceType { ByteRTCVideoSourceTypeExternal = 0, ByteRTCVideoSourceTypeInternal = 1, ByteRTCVideoSourceTypeEncodedAutoSimulcast = 2, ByteRTCVideoSourceTypeEncodedManualSimulcast = 3 } export declare enum ByteRTCUserOnlineStatus { ByteRTCUserOnlineStatusOffline = 0, ByteRTCUserOnlineStatusOnline = 1, ByteRTCUserOnlineStatusUnreachable = 2 } export declare class ByteRTCMusicInfo { musicId: NSString; musicName: NSString; singer: NSString; vendorId: NSString; vendorName: NSString; updateTimestamp: int64_t; posterUrl: NSString; lyricStatus: ByteRTCLyricStatus; duration: int; enableScore: BOOL; climaxStartTime: int; climaxEndTime: int; init(): this; } export declare class ByteRTCMixedStreamLayoutRegionConfig { userID: NSString; roomID: NSString; locationX: NSInteger; locationY: NSInteger; width: NSInteger; height: NSInteger; zOrder: NSInteger; isLocalUser: BOOL; streamType: ByteRTCMixedStreamVideoType; alpha: CGFloat; cornerRadius: CGFloat; mediaType: ByteRTCMixedStreamMediaType; renderMode: ByteRTCMixedStreamRenderMode; regionContentType: ByteRTCMixedStreamLayoutRegionType; imageWaterMark: NSData; imageWaterMarkConfig: ByteRTCMixedStreamLayoutRegionImageWaterMarkConfig; spatialPosition: ByteRTCPosition; applySpatialAudio: BOOL; alternateImageFillMode: ByteRTCMixedStreamAlternateImageFillMode; alternateImageUrl: NSString; init(): this; } export declare class ByteRTCRoomStats { duration: NSInteger; txBytes: NSInteger; rxBytes: NSInteger; txKbitrate: NSInteger; rxKbitrate: NSInteger; txAudioKBitrate: NSInteger; rxAudioKBitrate: NSInteger; txVideoKBitrate: NSInteger; rxVideoKBitrate: NSInteger; txScreenKBitrate: NSInteger; rxScreenKBitrate: NSInteger; userCount: NSInteger; rxLostrate: float; txLostrate: float; rtt: NSInteger; txJitter: NSInteger; txCellularKBitrate: NSInteger; rxCellularKBitrate: NSInteger; init(): this; } export declare enum ByteRTCAudioRecordingState { ByteRTCAudioRecordingStateError = 0, ByteRTCAudioRecordingStateProcessing = 1, ByteRTCAudioRecordingStateSuccess = 2 } export declare enum ByteRTCMediaDeviceState { /** {en} * @brief On * */ ByteRTCMediaDeviceStateStarted = 1, /** {en} * @brief Off * */ ByteRTCMediaDeviceStateStopped = 2, /** {en} * @brief Runtime error
* For example, when the media device is expected to be working but no data is received. * */ ByteRTCMediaDeviceStateRuntimeError = 3, /** {en} * @brief Added
* Call enumerate-device api to update the device list when you get this notification. * */ ByteRTCMediaDeviceStateAdded = 10, /** {en} * @brief Removed
* Call enumerate-device api to update the device list when you get this notification. * */ ByteRTCMediaDeviceStateRemoved = 11, /** {en} * @brief Phone calls, locking screen or the other Apps interrupted the RTC call. RTC call will resume once the call ends or the other Apps release the media devices. * */ ByteRTCMediaDeviceStateInterruptionBegan = 12, /** {en} * @brief RTC call resumed from the interruption caused by the phone calls or the other Apps. * */ ByteRTCMediaDeviceStateInterruptionEnded = 13, /** {en} * @hidden(iOS) * @brief Notification of receiving the device list after time-out.
* Call enumerate-device api to update the device list when you get this notification. * */ ByteRTCMediaDeviceListUpdated = 16 } export declare enum ByteRTCAudioRoute { ByteRTCAudioRouteDefault = -1, ByteRTCAudioRouteHeadset = 1, ByteRTCAudioRouteEarpiece = 2, ByteRTCAudioRouteSpeakerphone = 3, ByteRTCAudioRouteHeadsetBluetooth = 4, ByteRTCAudioRouteHeadsetUSB = 5 } export declare class ByteRtcScreenCapturerExt { shared: ByteRtcScreenCapturerExt; delegate: NSObject; startWithDelegate(delegate: NSObject, groupId: NSString): void; stop(): void; processSampleBuffer(sampleBuffer: CMSampleBufferRef, sampleBufferType: RPSampleBufferType): void; init(): this; } export declare enum ByteRTCVideoDecoderConfig { ByteRTCVideoDecoderConfigRaw = 0, ByteRTCVideoDecoderConfigEncode = 1, ByteRTCVideoDecoderConfigBoth = 2 } export declare class ByteRTCMixedStreamLayoutRegionImageWaterMarkConfig { imageWidth: NSInteger; imageHeight: NSInteger; init(): this; } export declare enum ByteRTCVideoPixelFormat { ByteRTCVideoPixelFormatUnknown = 0, ByteRTCVideoPixelFormatI420 = 1, ByteRTCVideoPixelFormatBGRA = 2, ByteRTCVideoPixelFormatNV21 = 3, ByteRTCVideoPixelFormatRGBA = 4, ByteRTCVideoPixelFormatIMC2 = 5, ByteRTCVideoPixelFormatARGB = 7, ByteRTCVideoPixelFormatNV12 = 8, ByteRTCVideoPixelFormatGLTexture2D = 10, ByteRTCVideoPixelFormatGLTextureOES = 11, ByteRTCVideoPixelFormatCVPixelBuffer = 12 } export declare enum ByteRTCEncryptType { ByteRTCEncryptTypeCustomize = 0, ByteRTCEncryptTypeAES128CBC = 1, ByteRTCEncryptTypeAES256CBC = 2, ByteRTCEncryptTypeAES128ECB = 3, ByteRTCEncryptTypeAES256ECB = 4 } export declare enum ByteRTCMixedStreamSyncStrategy { ByteRTCMixedStreamSyncStrategyNoSync = 0, ByteRTCMixedStreamSyncStrategyAudioPreciseSync = 1, ByteRTCMixedStreamSyncStrategySimplexModeSync = 2 } export declare class ByteRTCDownloadResult { musicId: NSString; fileType: ByteRTCDownloadFileType; filePath: NSString; init(): this; } export declare class ByteRTCVideoCompositingRegion { uid: NSString; roomId: NSString; x: CGFloat; y: CGFloat; width: CGFloat; height: CGFloat; zOrder: NSInteger; localUser: BOOL; screenStream: BOOL; alpha: CGFloat; cornerRadius: CGFloat; contentControl: ByteRTCTranscoderContentControlType; renderMode: ByteRTCRenderMode; type: ByteRTCTranscoderLayoutRegionType; data: NSData; dataParam: ByteRTCTranscoderLayoutRegionDataParam; spatialPosition: ByteRTCPosition; applySpatialAudio: BOOL; init(): this; } export declare enum ByteRTCLocalProxyError { ByteRTCLocalProxyErrorOK = 0, ByteRTCLocalProxyErrorSocks5VersionError = 1, ByteRTCLocalProxyErrorSocks5FormatError = 2, ByteRTCLocalProxyErrorSocks5InvalidValue = 3, ByteRTCLocalProxyErrorSocks5UserPassNotGiven = 4, ByteRTCLocalProxyErrorSocks5TcpClosed = 5, ByteRTCLocalProxyErrorHttpTunnelFailed = 6 } export declare enum ByteRTCBluetoothMode { ByteRTCBluetoothModeAuto = 0, ByteRTCBluetoothModeA2DP = 1, ByteRTCBluetoothModeHFP = 2 } export declare enum ByteRTCVideoContentType { ByteRTCVideoContentTypeNormalFrame = 0, ByteRTCVideoContentTypeBlackFrame = 1 } export declare class ByteRTCRemoteVideoStats { width: NSInteger; height: NSInteger; videoLossRate: float; receivedKBitrate: float; receivedFrameRate: NSInteger; decoderOutputFrameRate: NSInteger; renderOutputFrameRate: NSInteger; stallCount: NSInteger; stallDuration: NSInteger; e2eDelay: NSInteger; isScreen: BOOL; statsInterval: NSInteger; rtt: NSInteger; frozenRate: NSInteger; codecType: ByteRTCVideoCodecType; videoIndex: NSInteger; jitter: NSInteger; superResolutionMode: ByteRTCVideoSuperResolutionMode; init(): this; } export declare enum ByteRTCDownloadLyricType { ByteRTCDownloadLyricTypeKRC = 0, ByteRTCDownloadLyricTypeLRC = 1 } export declare class ByteRTCFrameExtendedData { frameType: ByteRTCDataFrameType; extendedData: NSData; extendedDataLen: NSInteger; init(): this; } export declare class ByteRTCRoomConfig { /** {en} * @brief Room profile. See ByteRTCRoomProfile{@link #ByteRTCRoomProfile}. The default is `ByteRTCRoomProfileCommunication`. The setting cannot be changed after joining the room. */ profile: ByteRTCRoomProfile; /** {en} * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription. * + Changing the user role to audience via `setUserVisibility` will void this setting. * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only. * */ isPublishAudio: BOOL; /** {en} * @brief Whether to publish media streams automatically. The default is automatic publishing. * + Changing the user role to audience via setUserVisibility:{@link #ByteRTCRoom#setUserVisibility} will void this setting. * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only. * */ isPublishVideo: BOOL; /** {en} * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription.
* This setting affects both the main stream and the screen-sharing stream. */ isAutoSubscribeAudio: BOOL; /** {en} * @brief Whether to automatically subscribe to the video stream. The default is automatic subscription.
* This setting affects both the main stream and the screen-sharing stream. */ isAutoSubscribeVideo: BOOL; /** {en} * @brief Expected configuration of remote video stream, see ByteRTCRemoteVideoConfig{@link #ByteRTCRemoteVideoConfig}. */ remoteVideoConfig: ByteRTCRemoteVideoConfig; init(): this; } export declare class ByteRTCScreenCaptureSourceInfo { sourceType: ByteRTCScreenCaptureSourceType; sourceId: intptr_t; sourceName: NSString; application: NSString; pid: int; primaryMonitor: BOOL; regionRect: CGRect; init(): this; } export declare class ByteRTCVideoCompositingLayout { backgroundColor: NSString; regions: NSArray; appData: NSString; init(): this; } export declare enum ByteRTCBandFrequency { ByteRTCBandFrequency31 = 0, ByteRTCBandFrequency62 = 1, ByteRTCBandFrequency125 = 2, ByteRTCBandFrequency250 = 3, ByteRTCBandFrequency500 = 4, ByteRTCBandFrequency1k = 5, ByteRTCBandFrequency2k = 6, ByteRTCBandFrequency4k = 7, ByteRTCBandFrequency8k = 8, ByteRTCBandFrequency16k = 9 } export declare enum ByteRTCAudioDumpStatus { ByteRTCAudioDumpStartFailure = 0, ByteRTCAudioDumpStartSuccess = 1, ByteRTCAudioDumpStopFailure = 2, ByteRTCAudioDumpStopSuccess = 3, ByteRTCAudioDumpRunningFailure = 4, ByteRTCAudioDumpRunningSuccess = 5 } export declare enum ByteRTCAudioProfileType { ByteRTCAudioProfileDefault = 0, ByteRTCAudioProfileFluent = 1, ByteRTCAudioProfileStandard = 2, ByteRTCAudioProfileHD = 3, ByteRTCAudioProfileStandardStereo = 4, ByteRTCAudioProfileHDMono = 5 } export declare enum ByteRTCAggregationOption { ByteRTCAggregationOptionMin = 0, ByteRTCAggregationOptionMax = 1, ByteRTCAggregationOptionMajority = 2 } export declare enum ByteRTCMediaStreamType { ByteRTCMediaStreamTypeAudio = 1, ByteRTCMediaStreamTypeVideo = 2, ByteRTCMediaStreamTypeBoth = 3 } export declare enum ByteRTCEchoTestResult { ByteRTCEchoTestResultSuccess = 0, ByteRTCEchoTestResultTimeout = 1, ByteRTCEchoTestResultIntervalShort = 2, ByteRTCEchoTestResultAudioDeviceError = 3, ByteRTCEchoTestResultVideoDeviceError = 4, ByteRTCEchoTestResultAudioReceiveError = 5, ByteRTCEchoTestResultVideoReceiveError = 6, ByteRTCEchoTestResultInternalError = 7 } export declare enum ByteRTCRoomProfile { ByteRTCRoomProfileCommunication = 0, ByteRTCRoomProfileGame = 2, ByteRTCRoomProfileCloudGame = 3, ByteRTCRoomProfileLowLatency = 4, ByteRTCRoomProfileChat = 5, ByteRTCRoomProfileChatRoom = 6, ByteRTCRoomProfileLwTogether = 7, ByteRTCRoomProfileGameHD = 8, ByteRTCRoomProfileCoHost = 9, ByteRTCRoomProfileInteractivePodcast = 10, ByteRTCRoomProfileKTV = 11, ByteRTCRoomProfileChorus = 12, ByteRTCRoomProfileVRChat = 13, ByteRTCRoomProfileGameStreaming = 14, ByteRTCRoomProfileLanLiveStreaming = 15, ByteRTCRoomProfileMeeting = 16, ByteRTCRoomProfileMeetingRoom = 17, ByteRTCRoomProfileClassroom = 18, ByteRTCRoomProfileLiveBroadcasting = 1 } export declare class ByteRTCPositionInfo { position: ByteRTCPosition; orientation: ByteRTCHumanOrientation; init(): this; } export declare class ByteRTCScreenParam { frameRate: NSInteger; bitrate: NSInteger; init(): this; } export declare enum ByteRTCScreenCaptureSourceType { ByteRTCScreenCaptureSourceTypeUnknown = 0, ByteRTCScreenCaptureSourceTypeWindow = 1, ByteRTCScreenCaptureSourceTypeScreen = 2 } export declare enum ByteRTCTranscoderContentControlType { ByteRTCTranscoderContentControlTypeHasAudioAndVideo = 0, ByteRTCTranscoderContentControlTypeHasAudioOnly = 1, ByteRTCTranscoderContentControlTypeHasVideoOnly = 2 } export declare enum ByteRTCClientMixVideoFormat { ByteRTCClientMixVideoFormatI420 = 0, ByteRTCClientMixVideoFormatTexture2D = 1, ByteRTCClientMixVideoFormatCVPixelBufferBGRA = 2, ByteRTCClientMixVideoFormatNV12 = 3 } export declare enum ByteRTCForwardStreamState { ByteRTCForwardStreamStateIdle = 0, ByteRTCForwardStreamStateSuccess = 1, ByteRTCForwardStreamStateFailure = 2 } export declare enum ByteRTCMediaPlayerCustomSourceSeekWhence { ByteRTCMediaPlayerCustomSourceSeekWhenceSet = 0, ByteRTCMediaPlayerCustomSourceSeekWhenceCur = 1, ByteRTCMediaPlayerCustomSourceSeekWhenceEnd = 2, ByteRTCMediaPlayerCustomSourceSeekWhenceSize = 3 } export declare enum ByteRTCAudioMixingDualMonoMode { ByteRTCAudioMixingDualMonoModeAuto = 0, ByteRTCAudioMixingDualMonoModeL = 1, ByteRTCAudioMixingDualMonoModeR = 2, ByteRTCAudioMixingDualMonoModeMix = 3 } export declare enum ByteRTCRecordingType { ByteRTCRecordingTypeAudioOnly = 0, ByteRTCRecordingTypeVideoOnly = 1, ByteRTCRecordingTypeVideoAndAudio = 2 } export declare enum ByteRTCZoomDirectionType { ByteRTCZoomDirectionTypeMoveLeft = 0, ByteRTCZoomDirectionTypeMoveRight = 1, ByteRTCZoomDirectionTypeMoveUp = 2, ByteRTCZoomDirectionTypeMoveDown = 3, ByteRTCZoomDirectionTypeZoomOut = 4, ByteRTCZoomDirectionTypeZoomIn = 5, ByteRTCZoomDirectionTypeReset = 6 } export declare enum ByteRTCNetworkDetectionStopReason { ByteRTCNetworkDetectionStopReasonUser = 0, ByteRTCNetworkDetectionStopReasonTimeout = 1, ByteRTCNetworkDetectionStopReasonConnectionLost = 2, ByteRTCNetworkDetectionStopReasonStreaming = 3, ByteRTCNetworkDetectionStopReasonInnerErr = 4 } export declare enum ByteRTCAudioQuality { ByteRTCAudioQualityLow = 0, ByteRTCAudioQualityMedium = 1, ByteRTCAudioQualityHigh = 2, ByteRTCAudioQualityUltraHigh = 3 } export declare enum ByteRTCMediaPlayerCustomSourceMode { ByteRTCMediaPlayerCustomSourceModePush = 0, ByteRTCMediaPlayerCustomSourceModePull = 1 } export declare enum ByteRTCRenderMode { ByteRTCRenderModeHidden = 1, ByteRTCRenderModeFit = 2, ByteRTCRenderModeFill = 3 } export declare enum ByteRTCSEIStreamEventType { ByteRTCSEIStreamEventTypeStreamAdd = 0, ByteRTCSEIStreamEventTypeStreamRemove = 1 } export declare enum ByteRTCVideoDenoiseModeChangedReason { ByteRTCVideoDenoiseModeChangedReasonNull = -1, ByteRTCVideoDenoiseModeChangedReasonApiOff = 0, ByteRTCVideoDenoiseModeChangedReasonApiOn = 1, ByteRTCVideoDenoiseModeChangedReasonConfigDisabled = 2, ByteRTCVideoDenoiseModeChangedReasonConfigEnabled = 3, ByteRTCVideoDenoiseModeChangedReasonInternalException = 4, ByteRTCVideoDenoiseModeChangedReasonDynamicClose = 5, ByteRTCVideoDenoiseModeChangedReasonDynamicOpen = 6, ByteRTCVideoDenoiseModeChangedReasonResolution = 7 } export declare class ByteRTCRecordingConfig { dirPath: NSString; recordingFileType: ByteRTCRecordingFileType; init(): this; } export declare class ByteRTCRemoteVideoSinkConfig { position: ByteRTCRemoteVideoRenderPosition; requiredPixelFormat: ByteRTCVideoSinkPixelFormat; applyRotation: ByteRTCVideoApplyRotation; mirrorType: ByteRTCVideoRenderMirrorType; init(): this; } export declare enum ByteRTCVideoOutputOrientationMode { ByteRTCVideoOutputOrientationModeAdaptative = 0, ByteRTCVideoOutputOrientationModeFixedLandscape = 1, ByteRTCVideoOutputOrientationModeFixedPortrait = 2 } export declare enum ByteRTCVideoSuperResolutionMode { ByteRTCVideoSuperResolutionModeOff = 0, ByteRTCVideoSuperResolutionModeOn = 1 } export declare enum ByteRTCLocalVideoRenderPosition { ByteRTCLocalVideoRenderPositionAfterCapture = 0, ByteRTCLocalVideoRenderPositionAfterPreprocess = 1 } export declare enum ByteRTCRemoteVideoStateChangeReason { ByteRTCRemoteVideoStateChangeReasonInternal = 0, ByteRTCRemoteVideoStateChangeReasonNetworkCongestion = 1, ByteRTCRemoteVideoStateChangeReasonNetworkRecovery = 2, ByteRTCRemoteVideoStateChangeReasonLocalMuted = 3, ByteRTCRemoteVideoStateChangeReasonLocalUnmuted = 4, ByteRTCRemoteVideoStateChangeReasonRemoteMuted = 5, ByteRTCRemoteVideoStateChangeReasonRemoteUnmuted = 6, ByteRTCRemoteVideoStateChangeReasonRemoteOffline = 7 } export declare enum ByteRTCVideoStreamType { ByteRTCVideoStreamTypeHigh = 0, ByteRTCVideoStreamTypeLow = 1 } export declare enum ByteRTCMixedStreamVideoCodecType { ByteRTCMixedStreamVideoCodecTypeH264 = 0, ByteRTCMixedStreamVideoCodecTypeByteVC1 = 1 } export declare enum ByteRTCFirstFramePlayState { ByteRTCFirstFramePlayStatePlaying = 0, ByteRTCFirstFramePlayStatePlay = 1, ByteRTCFirstFramePlayStateEnd = 2 } export declare enum ByteRTCAVSyncState { ByteRTCAVSyncStateAVStreamSyncBegin = 0, ByteRTCAVSyncStateAudioStreamRemove = 1, ByteRTCAVSyncStateVideoStreamRemove = 2, ByteRTCAVSyncStateSetAVSyncStreamId = 3 } export declare enum ByteRTCPauseResumControlMediaType { ByteRTCControlMediaTypeAudio = 0, ByteRtcControlMediaTypeVideo = 1, ByteRtcControlMediaTypeAudioAndVideo = 2 } export declare class ByteRTCVideoCaptureConfig { preference: ByteRTCVideoCapturePreference; videoSize: CGSize; frameRate: NSInteger; init(): this; } export declare enum ByteRTCVideoSuperResolutionModeChangedReason { ByteRTCVideoSuperResolutionModeChangedReasonAPIOff = 0, ByteRTCVideoSuperResolutionModeChangedReasonAPIOn = 1, ByteRTCVideoSuperResolutionModeChangedReasonResolutionExceed = 2, ByteRTCVideoSuperResolutionModeChangedReasonOverUse = 3, ByteRTCVideoSuperResolutionModeChangedReasonDeviceNotSupport = 4, ByteRTCVideoSuperResolutionModeChangedReasonDynamicClose = 5, ByteRTCVideoSuperResolutionModeChangedReasonOtherSettingDisabled = 6, ByteRTCVideoSuperResolutionModeChangedReasonOtherSettingEnabled = 7, ByteRTCVideoSuperResolutionModeChangedReasonNoComponent = 8, ByteRTCVideoSuperResolutionModeChangedReasonStreamNotExist = 9 } export declare class ByteRTCUser { userId: NSString; metaData: NSString; init(): this; } export declare enum ByteRTCPerformanceAlarmMode { ByteRTCPerformanceAlarmModeNormal = 0, ByteRTCPerformanceAlarmModeSimulcast = 1 } export declare class ByteRTCRemoteStreamSwitchEvent { uid: NSString; isScreen: BOOL; beforeVideoIndex: NSInteger; afterVideoIndex: NSInteger; beforeVideoEnabled: BOOL; afterVideoEnabled: BOOL; reason: ByteRTCFallbackOrRecoverReason; init(): this; } export declare class ByteRTCLocalAudioStats { audioLossRate: float; sentKBitrate: float; recordSampleRate: NSInteger; statsInterval: NSInteger; rtt: NSInteger; numChannels: NSInteger; sentSampleRate: NSInteger; jitter: NSInteger; init(): this; } export declare enum ByteRTCAudioAlignmentMode { ByteRTCAudioAlignmentModeOff = 0, ByteRTCAudioAlignmentModeAudioMixing = 1 } export declare class ByteRTCReceiveRange { min: int; max: int; init(): this; } export declare enum ByteRTCRecordingState { ByteRTCRecordingStateError = 0, ByteRTCRecordingStateProcessing = 1, ByteRTCRecordingStateSuccess = 2 } export declare class ByteRTCFaceDetectionResult { detectResult: int; imageWidth: int; imageHeight: int; faces: NSArray; frameTimestamp: CMTime; init(): this; } export declare class ByteRTCVideoByteWatermark { x: float; y: float; width: float; height: float; init(): this; } export declare class ByteRTCStreamSycnInfoConfig { streamIndex: ByteRTCStreamIndex; repeatCount: int; streamType: ByteRTCSyncInfoStreamType; init(): this; } export declare class ByteRTCEchoTestConfig { view: ByteRTCView; roomId: NSString; userId: NSString; token: NSString; enableAudio: BOOL; enableVideo: BOOL; audioReportInterval: NSInteger; init(): this; } export declare enum ByteRTCFrameRateRatio { ByteRTCFrameRateRatioOrigin = 0, ByteRTCFrameRateRatioHalf = 1, ByteRTCFrameRateRatioQuater = 2 } export declare enum ByteRTCMixedStreamRenderMode { ByteRTCMixedStreamRenderModeHidden = 1, ByteRTCMixedStreamRenderModeFit = 2, ByteRTCMixedStreamRenderModeAdaptive = 3 } export declare enum ByteRTCMirrorType { ByteRTCMirrorTypeNone = 0, ByteRTCMirrorTypeRender = 1, ByteRTCMirrorTypeRenderAndEncoder = 3 } export declare enum ByteRTCForwardStreamError { ByteRTCForwardStreamErrorOK = 0, ByteRTCForwardStreamErrorInvalidArgument = 1201, ByteRTCForwardStreamErrorInvalidToken = 1202, ByteRTCForwardStreamErrorResponse = 1203, ByteRTCForwardStreamErrorRemoteKicked = 1204, ByteRTCForwardStreamErrorNotSupport = 1205 } export declare enum ByteRTCReturnStatus { ByteRTCReturnStatusSuccess = 0, ByteRTCReturnStatusFailure = -1, ByteRTCReturnStatusParameterErr = -2, ByteRTCReturnStatusWrongState = -3, ByteRTCReturnStatusHasInRoom = -4, ByteRTCReturnStatusHasInLogin = -5, ByteRTCReturnStatusHasInEchoTest = -6, ByteRTCReturnStatusNeitherVideoNorAudio = -7, ByteRTCReturnStatusRoomIdInUse = -8, ByteRTCReturnStatusScreenNotSupport = -9, ByteRTCReturnStatusNotSupport = -10, ByteRTCReturnStatusResourceOverflow = -11, ByteRTCReturnStatusAudioNoFrame = -101, ByteRTCReturnStatusAudioNotImplemented = -102, ByteRTCReturnStatusAudioNoPermission = -103, ByteRTCReturnStatusAudioDeviceNotExists = -104, ByteRTCReturnStatusAudioDeviceFormatNotSupport = -105, ByteRTCReturnStatusAudioDeviceNoDevice = -106, ByteRTCReturnStatusAudioDeviceCannotUse = -107, ByteRTCReturnStatusAudioDeviceInitFailed = -108, ByteRTCReturnStatusAudioDeviceStartFailed = -109, ByteRTCReturnStatusNativeInValid = -201 } export declare enum ByteRTCAudioMixingType { ByteRTCAudioMixingTypePlayout = 0, ByteRTCAudioMixingTypePublish = 1, ByteRTCAudioMixingTypePlayoutAndPublish = 2 } export declare enum ByteRTCVideoEnhancementMode { ByteRTCVideoEnhancementModeDisabled = 0, ByteRTCVideoEnhancementModeAuto = 1 } export declare enum ByteRTCSubscribeMediaType { ByteRTCSubscribeMediaTypeNone = 0, ByteRTCSubscribeMediaTypeAudioOnly = 1, ByteRTCSubscribeMediaTypeVideoOnly = 2, ByteRTCSubscribeMediaTypeAudioAndVideo = 3 } export declare class ByteRTCPushSingleStreamParam { url: NSString; roomId: NSString; userId: NSString; isScreen: BOOL; init(): this; } export declare enum ByteRTCMediaDeviceWarning { ByteRTCMediaDeviceWarningOK = 0, ByteRTCMediaDeviceWarningOperationDenied = 1, ByteRTCMediaDeviceWarningCaptureSilence = 2, ByteRTCMediaDeviceWarningDetectClipping = 10, ByteRTCMediaDeviceWarningDetectLeakEcho = 11, ByteRTCMediaDeviceWarningDetectLowSNR = 12, ByteRTCMediaDeviceWarningDetectInsertSilence = 13, ByteRTCMediaDeviceWarningCaptureDetectSilence = 14, ByteRTCMediaDeviceWarningCaptureDetectSilenceDisappear = 15, ByteRTCMediaDeviceWarningCaptureDetectHowling = 16, ByteRTCMediaDeviceWarningSetAudioRouteInvalidScenario = 20, ByteRTCMediaDeviceWarningSetAudioRouteNotExists = 21, ByteRTCMediaDeviceWarningSetAudioRouteFailedByPriority = 22, ByteRTCMediaDeviceWarningSetAudioRouteNotVoipMode = 23, ByteRTCMediaDeviceWarningSetAudioRouteDeviceNotStart = 24, ByteRTCMediaDeviceWarningSetBluetoothModeScenarioUnsupport = 25, ByteRTCMediaDeviceWarningSetBluetoothModeUnsupport = 26 } export declare enum ByteRTCVideoDenoiseMode { ByteRTCVideoDenoiseModeOff = 0, ByteRTCVideoDenoiseModeAuto = 1 } export declare class ByteRTCExpressionDetectConfig { enableAgeDetect: BOOL; enableGenderDetect: BOOL; enableEmotionDetect: BOOL; enableAttractivenessDetect: BOOL; enableHappinessDetect: BOOL; init(): this; } export declare enum ByteRTCAudioReportMode { ByteRTCAudioReportModeNormal = 0, ByteRTCAudioReportModeDisconnect = 1, ByteRTCAudioReportModeReset = 2 } export declare class ByteRTCTranscodingClientMixParam { clientMixUseOriginalFrame: BOOL; clientMixUseAudioMixer: BOOL; clientMixVideoFormat: ByteRTCClientMixVideoFormat; init(): this; } export declare class ByteRTCSourceWantedData { width: NSInteger; height: NSInteger; frameRate: NSInteger; init(): this; } export declare class ByteRTCLogConfig { logPath: NSString; logLevel: ByteRTCLocalLogLevel; logFileSize: int; logFilenamePrefix: NSString; init(): this; } export declare class ByteRTCPublicStreamRegion { userId: NSString; roomId: NSString; alternateImage: NSString; x: CGFloat; y: CGFloat; width: CGFloat; height: CGFloat; zOrder: NSInteger; alpha: CGFloat; mediaType: NSInteger; streamType: NSInteger; renderMode: ByteRTCRenderMode; sourceCrop: ByteRTCSourceCropInfo; init(): this; } export declare class ByteRTCSubscribeVideoConfig { videoIndex: NSInteger; priority: NSInteger; init(): this; } export declare enum ByteRTCAudioPlayType { ByteRTCAudioPlayTypeLocal = 0, ByteRTCAudioPlayTypeRemote = 1, ByteRTCAudioPlayTypeLocalAndRemote = 2 } export declare class ByteRTCNetworkTimeInfo { timestamp: int64_t; init(): this; } export declare class ByteRTCRemoteAudioPropertiesInfo { streamKey: ByteRTCRemoteStreamKey; audioPropertiesInfo: ByteRTCAudioPropertiesInfo; init(): this; } export declare enum ByteRTCTranscodingAudioCodec { ByteRTCTranscodingAudioCodecAAC = 0 } export declare class ByteRTCSubtitleMessage { userId: NSString; text: NSString; language: NSString; mode: NSInteger; sequence: NSInteger; definite: BOOL; init(): this; } export declare enum ByteRTCVirtualBackgroundSourceType { ByteRTCVirtualBackgroundSourceTypeColor = 0, ByteRTCVirtualBackgroundSourceTypeImage = 1 } export declare class ByteRTCAudioPropertiesInfo { linearVolume: NSInteger; nonlinearVolume: NSInteger; vad: NSInteger; spectrum: NSArray; voicePitch: NSInteger; init(): this; } export declare enum ByteRTCLogoutReason { ByteRTCLogoutReasonLogout = 0, ByteRTCLogoutReasonDuplicateLogin = 1 } export declare class ByteRTCMixedStreamLayoutConfig { backgroundColor: NSString; regions: NSArray; userConfigExtraInfo: NSString; backgroundImageUrl: NSString; init(): this; } export declare class ByteRTCVideoWatermarkConfig { visibleInPreview: BOOL; positionInLandscapeMode: ByteRTCVideoByteWatermark; positionInPortraitMode: ByteRTCVideoByteWatermark; init(): this; } export declare enum ByteRTCMixedStreamPushMode { ByteRTCMixedStreamPushModeOnStream = 0, ByteRTCMixedStreamPushModeOnStartRequest = 1 } export declare class ByteRTCLocalVideoStats { sentKBitrate: float; inputFrameRate: NSInteger; sentFrameRate: NSInteger; encoderOutputFrameRate: NSInteger; rendererOutputFrameRate: NSInteger; statsInterval: NSInteger; videoLossRate: float; rtt: NSInteger; encodedBitrate: NSInteger; encodedFrameWidth: NSInteger; encodedFrameHeight: NSInteger; encodedFrameCount: NSInteger; codecType: ByteRTCVideoCodecType; isScreen: BOOL; jitter: NSInteger; videoDenoiseMode: ByteRTCVideoDenoiseMode; init(): this; } export declare class ByteRTCStream { userId: NSString; isScreen: BOOL; hasVideo: BOOL; hasAudio: BOOL; videoStreamDescriptions: NSArray; maxVideoStreamDescription: ByteRTCVideoSolution; index: ByteRTCStreamIndex; init(): this; } export declare class ByteRTCPublicStreaming { static defaultPublicStreaming(): ByteRTCPublicStreaming; layout: ByteRTCPublicStreamLayout; video: ByteRTCPublicStreamVideoConfig; init(): this; } export declare enum ByteRTCScreenMediaType { ByteRTCScreenMediaTypeVideoOnly = 0, ByteRTCScreenMediaTypeAudioOnly = 1, ByteRTCScreenMediaTypeVideoAndAudio = 2 } export declare class ByteRTCAudioRecordingConfig { absoluteFileName: NSString; frameSource: ByteRTCAudioFrameSource; sampleRate: ByteRTCAudioSampleRate; channel: ByteRTCAudioChannel; quality: ByteRTCAudioQuality; init(): this; } export declare enum ByteRTCAudioFrameCallbackMethod { ByteRTCAudioFrameCallbackRecord = 0, ByteRTCAudioFrameCallbackPlayback = 1, ByteRTCAudioFrameCallbackMixed = 2, ByteRTCAudioFrameCallbackRemoteUser = 3 } export declare enum ByteRTCMixedStreamAlternateImageFillMode { ByteRTCMixedStreamAlternateImageFillModeFit = 0, ByteRTCMixedStreamAlternateImageFillModeFill = 1 } export declare enum ByteRTCTranscoderLayoutRegionType { ByteRTCTranscoderLayoutRegionTypeVideoStream = 0, ByteRTCTranscoderLayoutRegionTypeImage = 1 } export declare enum ByteRTCNetworkQuality { ByteRTCNetworkQualityUnknown = 0, ByteRTCNetworkQualityExcellent = 1, ByteRTCNetworkQualityGood = 2, ByteRTCNetworkQualityPoor = 3, ByteRTCNetworkQualityBad = 4, ByteRTCNetworkQualityVeryBad = 5, ByteRTCNetworkQualityDown = 6 } export declare enum ByteRTCStreamRemoveReason { ByteRTCStreamRemoveReasonUnpublish = 0, ByteRTCStreamRemoveReasonPublishFailed = 1, ByteRTCStreamRemoveReasonKeepLiveFailed = 2, ByteRTCStreamRemoveReasonClientDisconnected = 3, ByteRTCStreamRemoveReasonRepublish = 4, ByteRTCStreamRemoveReasonOther = 5, ByteRTCStreamRemoveReasonPublishPrivilegeExpired = 6 } export declare class ByteRTCForwardStreamStateInfo { roomId: NSString; state: ByteRTCForwardStreamState; error: ByteRTCForwardStreamError; init(): this; } export declare class ByteRTCSourceCropInfo { locationX: CGFloat; locationY: CGFloat; widthProportion: CGFloat; heightProportion: CGFloat; init(): this; } export declare enum ByteRTCMulDimSingScoringMode { ByteRTCMulDimSingScoringModeNote = 0 } export declare enum ByteRTCAttenuationType { ByteRTCAttenuationTypeNone = 0, ByteRTCAttenuationTypeLinear = 1, ByteRTCAttenuationTypeExponential = 2 } export declare enum ByteRTCASRErrorCode { ByteRTCASRErrorNetworkInterrupted = -1, ByteRTCASRErrorAlreadyStarted = -2, ByteRTCASRErrorTokenEmpty = -3, ByteRTCErrorSignatureKeyEmpty = -4, ByteRTCASRErrorUserIdNull = -5, ByteRTCASRErrorAPPIDNull = -6, ByteRTCASRErrorClusterNull = -7, ByteRTCASRErrorOperationDenied = -8 } export declare class ByteRTCHotMusicInfo { hotType: ByteRTCMusicHotType; hotName: NSString; musics: NSArray; init(): this; } export declare enum ByteRTCLogLevel { ByteRTCLogLevelTrace = 0, ByteRTCLogLevelDebug = 1, ByteRTCLogLevelInfo = 2, ByteRTCLogLevelWarning = 3, ByteRTCLogLevelError = 4 } export declare class ByteRTCRemoteVideoRenderConfig { renderMode: ByteRTCRenderMode; backgroundColor: NSInteger; renderRotation: ByteRTCVideoRotation; init(): this; } export declare enum ByteRTCAudioRenderType { ByteRTCAudioRenderTypeExternal = 0, ByteRTCAudioRenderTypeInternal = 1 } export declare enum ByteRTCVideoDeviceType { ByteRTCVideoDeviceTypeUnknown = -1, ByteRTCVideoDeviceTypeRenderDevice = 0, ByteRTCVideoDeviceTypeCaptureDevice = 1, ByteRTCVideoDeviceTypeScreenCaptureDevice = 2 } export declare enum ByteRTCVideoOrientation { ByteRTCVideoOrientationAdaptive = 0, ByteRTCVideoOrientationPortrait = 1, ByteRTCVideoOrientationLandscape = 2 } export declare class ByteRTCSingScoringRealtimeInfo { currentPosition: int; userPitch: int; standardPitch: int; sentenceIndex: int; sentenceScore: int; totalScore: int; averageScore: int; init(): this; } export declare enum ByteRTCAlphaLayout { ByteRTCAlphaLayoutTop = 0, ByteRTCAlphaLayoutBottom = 1, ByteRTCAlphaLayoutLeft = 2, ByteRTCAlphaLayoutRight = 3 } export declare class ByteRTCVideoFrameInfo { width: NSInteger; height: NSInteger; rotation: ByteRTCVideoRotation; init(): this; } export declare class ByteRTCProblemFeedbackRoomInfo { roomId: NSString; userId: NSString; init(): this; } export declare enum ByteRTCSetRoomExtraInfoResult { ByteRTCSetRoomExtraInfoResultSuccess = 0, ByteRTCSetRoomExtraInfoResultNotJoinRoom = -1, ByteRTCSetRoomExtraInfoResultKeyIsNull = -2, ByteRTCSetRoomExtraInfoResultValueIsNull = -3, ByteRTCSetRoomExtraInfoResultUnknow = -99, ByteRTCSetRoomExtraInfoResultKeyIsEmpty = -400, ByteRTCSetRoomExtraInfoResultTooOften = -406, ByteRTCSetRoomExtraInfoResultSilentUser = -412, ByteRTCSetRoomExtraInfoResultKeyTooLong = -413, ByteRTCSetRoomExtraInfoResultValueTooLong = -414, ByteRTCSetRoomExtraInfoResultServerError = -500 } export declare class ByteRTCAudioVolumeInfo { uid: NSString; linearVolume: NSUInteger; nonlinearVolume: NSUInteger; init(): this; } export declare class ByteRTCLocalProxyInfo { localProxyType: ByteRTCLocalProxyType; localProxyIp: NSString; localProxyPort: int; localProxyUsername: NSString; localProxyPassword: NSString; init(): this; } export declare class ByteRTCASRConfig { appId: NSString; userId: NSString; accessToken: NSString; secretKey: NSString; cluster: NSString; authorizationType: ByteRTCASRAuthorizationType; init(): this; } export declare enum ByteRTCMixedStreamMediaType { ByteRTCMixedStreamMediaTypeAudioAndVideo = 0, ByteRTCMixedStreamMediaTypeAudioOnly = 1, ByteRTCMixedStreamMediaTypeVideoOnly = 2 } export declare class ByteRTCTranscodingAudioConfig { static toStringWithProfile(aacProfile: ByteRTCAACProfile): NSString; codec: ByteRTCTranscodingAudioCodec; sampleRate: NSInteger; channels: NSInteger; kBitRate: NSInteger; profile: ByteRTCAACProfile; init(): this; } export declare enum ByteRTCMusicHotType { ByteRTCMusicHotTypeContentCenter = 1, ByteRTCMusicHotTypeProject = 2 } export declare class ByteRTCRecordingProgress { duration: longlong; fileSize: longlong; init(): this; } export declare enum ByteRTCAudioSelectionPriority { ByteRTCAudioSelectionPriorityNormal = 0, ByteRTCAudioSelectionPriorityHigh = 1 } export declare enum ByteRTCStreamMixingEvent { ByteRTCStreamMixingEventBase = 0, ByteRTCStreamMixingEventStart = 1, ByteRTCStreamMixingEventStartSuccess = 2, ByteRTCStreamMixingEventStartFailed = 3, ByteRTCStreamMixingEventUpdate = 4, ByteRTCStreamMixingEventUpdateSuccess = 5, ByteRTCStreamMixingEventUpdateFailed = 6, ByteRTCStreamMixingEventStop = 7, ByteRTCStreamMixingEventStopSuccess = 8, ByteRTCStreamMixingEventStopFailed = 9, ByteRTCStreamMixingEventChangeMixType = 10, ByteRTCStreamMixingEventFirstAudioFrameByClientMixer = 11, ByteRTCStreamMixingEventFirstVideoFrameByClientMixer = 12, ByteRTCStreamMixingEventUpdateTimeout = 13, ByteRTCStreamMixingEventStartTimeout = 14, ByteRTCStreamMixingEventRequestParamError = 15, ByteRTCStreamMixingEventMixImage = 16, ByteRTCStreamMixingEventSingleWayChorus = 17 } export declare enum ByteRTCAudioSampleRate { ByteRTCAudioSampleRateAuto = -1, ByteRTCAudioSampleRate8000 = 8000, ByteRTCAudioSampleRate16000 = 16000, ByteRTCAudioSampleRate32000 = 32000, ByteRTCAudioSampleRate44100 = 44100, ByteRTCAudioSampleRate48000 = 48000 } export declare enum ByteRTCAudioChannel { ByteRTCAudioChannelAuto = -1, ByteRTCAudioChannelMono = 1, ByteRTCAudioChannelStereo = 2 } export declare enum ByteRTCHardwareEchoDetectionResult { ByteRTCHardwareEchoDetectionCanceled = 0, ByteRTCHardwareEchoDetectionUnknown = 1, ByteRTCHardwareEchoDetectionNormal = 2, ByteRTCHardwareEchoDetectionPoor = 3 } export declare enum ByteRTCEffectBeautyMode { ByteRTCEffectBeautyModeWhite = 0, ByteRTCEffectBeautyModeSmooth = 1, ByteRTCEffectBeautyModeSharpen = 2, ByteRTCEffectBeautyModeClear = 3 } export declare class ByteRTCVideoCanvas { view: ByteRTCView; renderMode: ByteRTCRenderMode; backgroundColor: NSInteger; renderRotation: ByteRTCVideoRotation; init(): this; } export declare enum ByteRTCRemoteAudioState { ByteRTCRemoteAudioStateStopped = 0, ByteRTCRemoteAudioStateStarting = 1, ByteRTCRemoteAudioStateDecoding = 2, ByteRTCRemoteAudioStateFrozen = 3, ByteRTCRemoteAudioStateFailed = 4 } export declare enum ByteRTCMuteState { ByteRTCMuteStateOff = 0, ByteRTCMuteStateOn = 1 } export declare class ByteRTCTranscodingVideoConfig { codec: ByteRTCTranscodingVideoCodec; width: NSInteger; height: NSInteger; fps: NSInteger; gop: NSInteger; kBitRate: NSInteger; bFrame: BOOL; lowLatency: BOOL; init(): this; } export declare class ByteRTCVideoPreprocessorConfig { requiredPixelFormat: ByteRTCVideoPixelFormat; init(): this; } export declare enum ByteRTCRemoteAudioStateChangeReason { ByteRTCRemoteAudioStateChangeReasonInternal = 0, ByteRTCRemoteAudioStateChangeReasonNetworkCongestion = 1, ByteRTCRemoteAudioStateChangeReasonNetworkRecovery = 2, ByteRTCRemoteAudioStateChangeReasonLocalMuted = 3, ByteRTCRemoteAudioStateChangeReasonLocalUnmuted = 4, ByteRTCRemoteAudioStateChangeReasonRemoteMuted = 5, ByteRTCRemoteAudioStateChangeReasonRemoteUnmuted = 6, ByteRTCRemoteAudioStateChangeReasonRemoteOffline = 7 } export declare class ByteRTCPublicStreamLayout { layoutMode: NSInteger; interpolationMode: NSInteger; backgroundColor: NSString; backgroundImage: NSString; regions: NSArray; init(): this; } export declare enum ByteRTCLocalVideoStreamState { ByteRTCLocalVideoStreamStateStopped = 0, ByteRTCLocalVideoStreamStateRecording = 1, ByteRTCLocalVideoStreamStateEncoding = 2, ByteRTCLocalVideoStreamStateFailed = 3 } export declare class ByteRTCSingScoringConfig { mode: ByteRTCMulDimSingScoringMode; sampleRate: ByteRTCAudioSampleRate; lyricsFilepath: NSString; midiFilepath: NSString; init(): this; } export declare enum ByteRTCFirstFrameSendState { ByteRTCFirstFrameSendStateSending = 0, ByteRTCFirstFrameSendStateSent = 1, ByteRTCFirstFrameSendStateEnd = 2 } export declare enum ByteRTCRemoteMirrorType { ByteRTCRemoteMirrorTypeNone = 0, ByteRTCRemoteMirrorTypeRender = 1 } export declare class ByteRTCVoiceEqualizationConfig { frequency: ByteRTCBandFrequency; gain: int; init(): this; } export declare enum ByteRTCConnectionState { ByteRTCConnectionStateDisconnected = 1, ByteRTCConnectionStateConnecting = 2, ByteRTCConnectionStateConnected = 3, ByteRTCConnectionStateReconnecting = 4, ByteRTCConnectionStateReconnected = 5, ByteRTCConnectionStateLost = 6, ByteRTCConnectionStateFailed = 7 } export declare enum ByteRTCLyricStatus { ByteRTCLyricStatusNone = 0, ByteRTCLyricStatusKRC = 1, ByteRTCLyricStatusLRC = 2, ByteRTCLyricStatusKRCAndLRC = 3 } export declare enum ByteRTCFallbackOrRecoverReason { ByteRTCFallbackOrRecoverReasonUnknown = -1, ByteRTCFallbackOrRecoverReasonSubscribeFallbackByBandwidth = 0, ByteRTCFallbackOrRecoverReasonSubscribeFallbackByPerformance = 1, ByteRTCFallbackOrRecoverReasonSubscribeRecoverByBandwidth = 2, ByteRTCFallbackOrRecoverReasonSubscribeRecoverByPerformance = 3, ByteRTCFallbackOrRecoverReasonPublishFallbackByBandwidth = 4, ByteRTCFallbackOrRecoverReasonPublishFallbackByPerformance = 5, ByteRTCFallbackOrRecoverReasonPublishRecoverByBandwidth = 6, ByteRTCFallbackOrRecoverReasonPublishRecoverByPerformance = 7 } export declare enum ByteRTCRecordingFileType { ByteRTCRecordingFileTypeAAC = 0, ByteRTCRecordingFileTypeMP4 = 1 } export declare enum ByteRTCVideoPictureType { ByteRTCVideoPictureTypeUnknown = 0, ByteRTCVideoPictureTypeI = 1, ByteRTCVideoPictureTypeP = 2, ByteRTCVideoPictureTypeB = 3 } export declare enum ByteRTCVideoStreamScaleMode { ByteRTCVideoStreamScaleModeAuto = 0, ByteRTCVideoStreamScaleModeStretch = 1, ByteRTCVideoStreamScaleModeFitWithCropping = 2, ByteRTCVideoStreamScaleModeFitWithFilling = 3 } export declare class ByteRTCSubtitleConfig { mode: ByteRTCSubtitleMode; targetLanguage: NSString; init(): this; } export declare class ByteRTCAudioMixingConfig { type: ByteRTCAudioMixingType; playCount: NSInteger; position: NSInteger; callbackOnProgressInterval: NSInteger; syncProgressToRecordFrame: BOOL; init(): this; } export declare enum ByteRTCVideoSinkPixelFormat { ByteRTCVideoSinkPixelFormatOriginal = 0, ByteRTCVideoSinkPixelFormatI420 = 1, ByteRTCVideoSinkPixelFormatBGRA = 2, ByteRTCVideoSinkPixelFormatRGBA = 5, ByteRTCVideoSinkPixelFormatNV12 = 8 } export declare enum ByteRTCAudioMixingError { ByteRTCAudioMixingErrorOk = 0, ByteRTCAudioMixingErrorPreloadFailed = 1, ByteRTCAudioMixingErrorStartFailed = 2, ByteRTCAudioMixingErrorIdNotFound = 3, ByteRTCAudioMixingErrorSetPositionFailed = 4, ByteRTCAudioMixingErrorInValidVolume = 5, ByteRTCAudioMixingErrorLoadConflict = 6, ByteRTCAudioMixingErrorIdTypeNotMatch = 7, ByteRTCAudioMixingErrorInValidPitch = 8, ByteRTCAudioMixingErrorInValidAudioTrack = 9, ByteRTCAudioMixingErrorIsStarting = 10, ByteRTCAudioMixingErrorInValidPlaybackSpeed = 11 } export declare enum ByteRTCAudioTrackType { ByteRTCAudioTrackTypeOriginal = 1, ByteRTCAudioTrackTypeAccompy = 2 } export declare class ByteRTCMixedStreamSpatialAudioConfig { enableSpatialRender: BOOL; audienceSpatialPosition: ByteRTCPosition; audienceSpatialOrientation: ByteRTCHumanOrientation; init(): this; } export declare class ByteRTCTranscodingSpatialConfig { enableSpatialRender: BOOL; audienceSpatialPosition: ByteRTCPosition; audienceSpatialOrientation: ByteRTCHumanOrientation; init(): this; } export declare class ByteRTCProblemFeedbackInfo { problemDesc: NSString; roomInfo: NSArray; init(): this; } export declare class ByteRTCRectangle { x: int; y: int; width: int; height: int; init(): this; } export declare enum ByteRTCColorSpace { ByteRTCColorSpaceUnknown = 0, ByteRTCColorSpaceYCbCrBT601LimitedRange = 1, ByteRTCColorSpaceYCbCrBT601FullRange = 2, ByteRTCColorSpaceYCbCrBT709LimitedRange = 3, ByteRTCColorSpaceYCbCrBT709FullRange = 4 } export declare class ByteRTCExpressionDetectResult { detectResult: int; faceCount: int; detectInfo: NSArray; init(): this; } export declare class ByteRTCEncodedVideoFrame { codecType: ByteRTCVideoCodecType; pictureType: ByteRTCVideoPictureType; timestampUs: SInt64; timestampDtsUs: SInt64; width: int; height: int; rotation: ByteRTCVideoRotation; data: NSData; init(): this; } export declare enum ByteRTCMediaDeviceType { ByteRTCMediaDeviceTypeAudioUnknown = -1, ByteRTCMediaDeviceTypeAudioRenderDevice = 0, ByteRTCMediaDeviceTypeAudioCaptureDevice = 1, ByteRTCMediaDeviceTypeVideoRenderDevice = 2, ByteRTCMediaDeviceTypeVideoCaptureDevice = 3, ByteRTCMediaDeviceTypeScreenVideoCaptureDevice = 4, ByteRTCMediaDeviceTypeScreenAudioCaptureDevice = 5 } export declare class ByteRTCFrameUpdateInfo { pixel: int; framerate: int; init(): this; } export declare enum ByteRTCAnsMode { ByteRTCAnsModeDisable = 0, ByteRTCAnsModeLow = 1, ByteRTCAnsModeMedium = 2, ByteRTCAnsModeHigh = 3, ByteRTCAnsModeAutomatic = 4 } export declare class ByteRTCMixedStreamClientMixConfig { useAudioMixer: BOOL; videoFormat: ByteRTCMixedStreamClientMixVideoFormat; init(): this; } export declare enum ByteRTCRemoteUserPriority { ByteRTCRemoteUserPriorityLow = 0, ByteRTCRemoteUserPriorityMedium = 100, ByteRTCRemoteUserPriorityHigh = 200 } export declare class ByteRTCHumanOrientation { forward: ByteRTCOrientation; right: ByteRTCOrientation; up: ByteRTCOrientation; init(): this; } export declare enum ByteRTCRecordingErrorCode { ByteRTCRecordingErrorCodeOk = 0, ByteRTCRecordingErrorCodeNoPermission = -1, ByteRTCRecordingErrorCodeNotSupport = -2, ByteRTCRecordingErrorCodeOther = -3 } export declare enum ByteRTCTorchState { ByteRTCTorchStateOff = 0, ByteRTCTorchStateOn = 1 } export declare class ByteRTCAudioFrame { buffer: NSData; samples: int; channel: ByteRTCAudioChannel; sampleRate: ByteRTCAudioSampleRate; init(): this; } export declare class ByteRTCRemoteAudioStats { audioLossRate: float; receivedKBitrate: float; stallCount: NSInteger; stallDuration: NSInteger; playoutSampleRate: NSInteger; e2eDelay: NSInteger; statsInterval: NSInteger; rtt: NSInteger; totalRtt: NSInteger; quality: NSInteger; jitterBufferDelay: NSInteger; numChannels: NSInteger; receivedSampleRate: NSInteger; frozenRate: NSInteger; concealedSamples: NSInteger; concealmentEvent: NSInteger; decSampleRate: NSInteger; decDuration: NSInteger; jitter: NSInteger; init(): this; } export declare class ByteRTCOrientation { x: float; y: float; z: float; init(): this; } export declare enum ByteRTCPerformanceAlarmReason { ByteRTCPerformanceAlarmReasonBandwidthFallback = 0, ByteRTCPerformanceAlarmReasonBandwidthResumed = 1, ByteRTCPerformanceAlarmReasonFallback = 2, ByteRTCPerformanceAlarmReasonResumed = 3 } export declare enum ByteRTCVideoApplyRotation { ByteRTCVideoApplyRotationDefault = -1, ByteRTCVideoApplyRotation0 = 0 } export declare enum ByteRTCAACProfile { ByteRTCAACProfileLC = 0, ByteRTCAACProfileHEv1 = 1, ByteRTCAACProfileHEv2 = 2 } export declare class ByteRTCStreamEx { userId: NSString; isScreen: BOOL; hasVideo: BOOL; hasAudio: BOOL; videoStreamDescriptions: NSArray; maxVideoStreamDescription: ByteRTCVideoSolution; index: ByteRTCStreamIndex; init(): this; } export declare enum ByteRTCSyncInfoStreamType { ByteRTCSyncInfoStreamTypeAudio = 0 } export declare enum ByteRTCMixedStreamType { ByteRTCMixedStreamByServer = 0, ByteRTCMixedStreamByClient = 1 } export declare class ByteRTCPublicStreamVideoConfig { width: NSInteger; height: NSInteger; fps: NSInteger; bitrate: NSInteger; init(): this; } export declare enum ByteRTCVoiceChangerType { ByteRTCVoiceChangerOriginal = 0, ByteRTCVoiceChangerGiant = 1, ByteRTCVoiceChangerChipmunk = 2, ByteRTCVoiceChangerMinionst = 3, ByteRTCVoiceChangerVibrato = 4, ByteRTCVoiceChangerRobot = 5 } export declare class ByteRTCStandardPitchInfo { startTime: int; duration: int; pitch: int; init(): this; } export declare enum ByteRTCPlayState { ByteRTCPlayStatePlaying = 1, ByteRTCPlayStatePaused = 2, ByteRTCPlayStateStoped = 3, ByteRTCPlayStateFailed = 4, ByteRTCPlayStateFinished = 5 } export declare enum ByteRTCMixedStreamAudioProfile { ByteRTCMixedStreamAudioProfileLC = 0, ByteRTCMixedStreamAudioProfileHEv1 = 1, ByteRTCMixedStreamAudioProfileHEv2 = 2 } export declare class ByteRTCVoiceReverbConfig { roomSize: float; decayTime: float; damping: float; wetGain: float; dryGain: float; preDelay: float; init(): this; } export declare enum ByteRTCSEICountPerFrame { ByteRTCSEICountPerFrameSingle = 0, ByteRTCSEICountPerFrameMulti = 1 } export declare enum ByteRTCSubtitleMode { ByteRTCSubtitleModeRecognition = 0, ByteRTCSubtitleModeTranslation = 1 } export declare enum ByteRTCPublishFallbackOption { ByteRTCPublishFallbackOptionDisabled = 0, ByteRTCPublishFallbackOptionSimulcast = 1 } export declare class ByteRTCPosition { x: float; y: float; z: float; init(): this; } export declare class ByteRTCVideoSolution { videoSize: CGSize; frameRate: NSInteger; maxKbps: NSInteger; minKbps: NSInteger; encoderPreference: ByteRTCVideoEncoderPreference; init(): this; } export declare class ByteRTCRemoteVideoConfig { framerate: int; width: int; height: int; init(): this; } export declare enum ByteRTCLocalVideoStreamError { ByteRTCLocalVideoStreamErrorOk = 0, ByteRTCLocalVideoStreamErrorFailure = 1, ByteRTCLocalVideoStreamErrorDeviceNoPermission = 2, ByteRTCLocalVideoStreamErrorDeviceBusy = 3, ByteRTCLocalVideoStreamErrorDeviceNotFound = 4, ByteRTCLocalVideoStreamErrorCaptureFailure = 5, ByteRTCLocalVideoStreamErrorEncodeFailure = 6, ByteRTCLocalVideoStreamErrorDeviceDisconnected = 7 } export declare enum ByteRTCRemoteVideoRenderPosition { ByteRTCRemoteVideoRenderPositionAfterDecoder = 0, ByteRTCRemoteVideoRenderPositionAfterPostprocess = 1 } export declare enum ByteRTCAudioScenarioType { ByteRTCAudioScenarioMusic = 0, ByteRTCAudioScenarioHighqualityCommunication = 1, ByteRTCAudioScenarioCommunication = 2, ByteRTCAudioScenarioMedia = 3, ByteRTCAudioScenarioGameStreaming = 4, ByteRTCAudioScenarioHighqualityChat = 5 } export declare enum ByteRTCZoomConfigType { ByteRTCZoomConfigTypeFocusOffset = 0, ByteRTCZoomConfigTypeMoveOffset = 1 } export declare class ByteRTCMediaPlayerCustomSource { provider: id; mode: ByteRTCMediaPlayerCustomSourceMode; type: ByteRTCMediaPlayerCustomSourceStreamType; init(): this; } export declare class ByteRTCNetworkQualityStats { uid: NSString; lossRatio: double; rtt: int; totalBandwidth: int; txQuality: ByteRTCNetworkQuality; rxQuality: ByteRTCNetworkQuality; init(): this; } export declare enum ByteRTCStreamMixingType { ByteRTCStreamMixingTypeByServer = 0, ByteRTCStreamMixingTypeByClient = 1 } export declare enum ByteRTCMixedStreamLayoutRegionType { ByteRTCMixedStreamLayoutRegionTypeVideoStream = 0, ByteRTCMixedStreamLayoutRegionTypeImage = 1 } export declare enum ByteRTCAudioFrameMethod { ByteRTCAudioFrameProcessorRecord = 0, ByteRTCAudioFrameProcessorPlayback = 1, ByteRTCAudioFrameProcessorRemoteUser = 2, ByteRTCAudioFrameProcessorEarMonitor = 3, ByteRTCAudioFrameProcessorScreen = 4 } export declare enum ByteRTCEarMonitorMode { ByteRTCEarMonitorModeOff = 0, ByteRTCEarMonitorModeOn = 1 } export declare enum ByteRTCVideoCodecType { ByteRTCVideoCodecTypeUnknown = 0, ByteRTCVideoCodecTypeH264 = 1, ByteRTCVideoCodecTypeByteVC1 = 2 } export declare class ByteRTCLocalStreamStats { audioStats: ByteRTCLocalAudioStats; videoStats: ByteRTCLocalVideoStats; isScreen: BOOL; txQuality: ByteRTCNetworkQuality; rxQuality: ByteRTCNetworkQuality; init(): this; } export declare enum ByteRTCVideoRotation { ByteRTCVideoRotation0 = 0, ByteRTCVideoRotation90 = 90, ByteRTCVideoRotation180 = 180, ByteRTCVideoRotation270 = 270 } export declare enum ByteRTCDataFrameType { ByteRTCDataFrameTypeSei = 0, ByteRTCDataFrameTypeRoi = 1, ByteRTCDataFrameTypeOther = 2 } export declare enum ByteRTCTranscodingVideoCodec { ByteRTCTranscodingVideoCodecH264 = 0, ByteRTCTranscodingVideoCodecH265 = 1 } export declare enum ByteRTCMouseCursorCaptureState { ByteRTCMouseCursorCaptureStateOn = 0, ByteRTCMouseCursorCaptureStateOff = 1 } export declare enum ByteRTCSubscribeFallbackOption { ByteRTCSubscribeFallbackOptionDisabled = 0, ByteRTCSubscribeFallbackOptionVideoStreamLow = 1, ByteRTCSubscribeFallbackOptionAudioOnly = 2 } export declare enum ByteRTCAudioSourceType { ByteRTCAudioSourceTypeExternal = 0, ByteRTCAudioSourceTypeInternal = 1 } export declare class ByteRTCRemoteStreamKey { userId: NSString; roomId: NSString; streamIndex: ByteRTCStreamIndex; init(): this; } export declare enum ByteRTCPlayerState { ByteRTCPlayerStateIdle = 0, ByteRTCPlayerStatePreloaded = 1, ByteRTCPlayerStateOpened = 2, ByteRTCPlayerStatePlaying = 3, ByteRTCPlayerStatePaused = 4, ByteRTCPlayerStateStopped = 5, ByteRTCPlayerStateFailed = 6, ByteRTCPlayerStateFinished = 7 } export declare class ByteRTCMediaPlayerConfig { type: ByteRTCAudioMixingType; playCount: NSInteger; startPos: NSInteger; callbackOnProgressInterval: NSInteger; syncProgressToRecordFrame: BOOL; autoPlay: BOOL; init(): this; } export declare enum ByteRTCVideoRotationMode { ByteRTCVideoRotationModeFollowApp = 0, ByteRTCVideoRotationModeFollowGSensor = 1 } export declare enum ByteRTCForwardStreamEvent { ByteRTCForwardStreamEventDisconnected = 0, ByteRTCForwardStreamEventConnected = 1, ByteRTCForwardStreamEventInterrupt = 2, ByteRTCForwardStreamEventDstRoomUpdated = 3, ByteRTCForwardStreamEventUnExpectAPICall = 4 } export declare enum ByteRTCVideoFrameType { ByteRTCVideoFrameTypeRawMemory = 0, ByteRTCVideoFrameTypePixelBuffer = 1 } export declare class ByteRTCLocalAudioPropertiesInfo { streamIndex: ByteRTCStreamIndex; audioPropertiesInfo: ByteRTCAudioPropertiesInfo; init(): this; } export declare enum ByteRTCCameraID { ByteRTCCameraIDFront = 0, ByteRTCCameraIDBack = 1, ByteRTCCameraIDExternal = 2, ByteRTCCameraIDInvalid = 3 } export declare class ByteRTCCloudProxyInfo { cloudProxyIp: NSString; cloudProxyPort: int; init(): this; } export declare class ByteRTCMixedStreamAudioConfig { audioCodec: ByteRTCMixedStreamAudioCodecType; sampleRate: NSInteger; channels: NSInteger; bitrate: NSInteger; audioProfile: ByteRTCMixedStreamAudioProfile; init(): this; } export declare enum ByteRTCSubscribeState { /** {en} * @brief Successfully subscribed. * */ ByteRTCSubscribeStateSubscribe = 0, /** {en} * @brief Failed to subscribe. * */ ByteRTCSubscribeStateUnsubscribe = 1 } export declare enum ByteRTCVideoEncoderPreference { ByteRTCVideoEncoderPreferenceDisabled = 0, ByteRTCVideoEncoderPreferenceMaintainFramerate = 1, ByteRTCVideoEncoderPreferenceMaintainQuality = 2, ByteRTCVideoEncoderPreferenceBalance = 3 } export declare enum ByteRTCAudioMixingState { ByteRTCAudioMixingStatePreloaded = 0, ByteRTCAudioMixingStatePlaying = 1, ByteRTCAudioMixingStatePaused = 2, ByteRTCAudioMixingStateStopped = 3, ByteRTCAudioMixingStateFailed = 4, ByteRTCAudioMixingStateFinished = 5, ByteRTCAudioMixingStatePCMEnabled = 6, ByteRTCAudioMixingStatePCMDisabled = 7 } export declare enum ByteRTCMixedStreamAudioCodecType { ByteRTCMixedStreamAudioCodecTypeAAC = 0 } export declare enum ByteRTCSubtitleState { ByteRTCSubtitleStateStarted = 0, ByteRTCSubtitleStateStoped = 1, ByteRTCSubtitleStateError = 2 } export declare class ByteRTCMixedStreamServerControlConfig { enableVolumeIndication: BOOL; volumeIndicationInterval: CGFloat; talkVolume: NSInteger; isAddVolumeValue: BOOL; seiContentMode: ByteRTCMixedStreamSEIContentMode; seiPayloadType: NSInteger; seiPayloadUUID: NSString; mediaType: ByteRTCMixedStreamMediaType; pushStreamMode: ByteRTCMixedStreamPushMode; init(): this; } export declare enum ByteRTCScreenVideoEncoderPreference { ByteRTCScreenVideoEncodePreferenceAuto = 0, ByteRTCScreenVideoEncodePreferenceFramerate = 1, ByteRTCScreenVideoEncodePreferenceQuality = 2 } export declare class ByteRTCRemoteStreamStats { uid: NSString; audioStats: ByteRTCRemoteAudioStats; videoStats: ByteRTCRemoteVideoStats; isScreen: BOOL; txQuality: ByteRTCNetworkQuality; rxQuality: ByteRTCNetworkQuality; init(): this; } export declare class ByteRTCHighlightConfig { enableHighlight: BOOL; borderColor: uint32_t; borderWidth: int; init(): this; } export declare enum ByteRTCRemoteVideoState { ByteRTCRemoteVideoStateStopped = 0, ByteRTCRemoteVideoStateStarting = 1, ByteRTCRemoteVideoStateDecoding = 2, ByteRTCRemoteVideoStateFrozen = 3, ByteRTCRemoteVideoStateFailed = 4 } export declare enum ByteRTCMediaDeviceError { ByteRTCMediaDeviceErrorOK = 0, ByteRTCMediaDeviceErrorDeviceNoPermission = 1, ByteRTCMediaDeviceErrorDeviceBusy = 2, ByteRTCMediaDeviceErrorDeviceFailure = 3, ByteRTCMediaDeviceErrorDeviceNotFound = 4, ByteRTCMediaDeviceErrorDeviceDisconnected = 5, ByteRTCMediaDeviceErrorDeviceNoCallback = 6, ByteRTCMediaDeviceErrorUNSupportFormat = 7, ByteRTCMediaDeviceErrorNotFindGroupId = 8, ByteRTCMediaDeviceErrorNotAvailableInBackground = 9, ByteRTCMediaDeviceErrorVideoInUseByAnotherClient = 10, ByteRTCMediaDeviceErrorNotAvailableWithMultipleForegroundApps = 11, ByteRTCMediaDeviceErrorNotAvailableDueToSystemPressure = 12 } export declare enum ByteRTCMixedStreamSEIContentMode { ByteRTCMixedStreamSEIContentModeDefault = 0, ByteRTCMixedStreamSEIContentModeEnableVolumeIndication = 1 } export declare class ByteRTCMediaTypeEnhancementConfig { enhanceSignaling: BOOL; enhanceAudio: BOOL; enhanceVideo: BOOL; enhanceScreenAudio: BOOL; enhanceScreenVideo: BOOL; init(): this; } export declare enum ByteRTCDownloadFileType { ByteRTCDownloadFileTypeMusic = 1, ByteRTCDownloadFileTypeKRC = 2, ByteRTCDownloadFileTypeLRC = 3, ByteRTCDownloadFileTypeMIDI = 4 } export declare enum ByteRTCAudioPropertiesMode { ByteRTCAudioPropertiesModeMicrohone = 0, ByteRTCAudioPropertiesModeAudioMixing = 1 } export declare class ByteRTCTranscoderLayoutRegionDataParam { imageWidth: NSInteger; imageHeight: NSInteger; init(): this; } export declare enum ByteRTCAudioDeviceType { ByteRTCAudioDeviceTypeUnknown = -1, ByteRTCAudioDeviceTypeRenderDevice = 0, ByteRTCAudioDeviceTypeCaptureDevice = 1, ByteRTCAudioDeviceTypeScreenCaptureDevice = 2 } export declare enum ByteRTCMediaPlayerCustomSourceStreamType { ByteRTCMediaPlayerCustomSourceStreamTypeRaw = 0, ByteRTCMediaPlayerCustomSourceStreamTypeEncoded = 1 } export declare class ByteRTCAudioPropertiesConfig { interval: NSInteger; enableSpectrum: BOOL; enableVad: BOOL; localMainReportMode: ByteRTCAudioReportMode; smooth: float; audioReportMode: ByteRTCAudioPropertiesMode; enableVoicePitch: BOOL; init(): this; }