1 line
131 KiB
Plaintext
1 line
131 KiB
Plaintext
{"version":3,"names":["AreaCode","exports","AudioCodecProfileType","AudioEqualizationBandFrequency","AudioLocalError","AudioLocalState","AudioMixingReason","AudioMixingStateCode","AudioOutputRouting","AudioProfile","AudioRecordingQuality","AudioRecordingPosition","AudioRemoteState","AudioRemoteStateReason","AudioReverbPreset","AudioReverbType","AudioSampleRateType","AudioScenario","AudioVoiceChanger","CameraCaptureOutputPreference","CameraDirection","ChannelMediaRelayError","ChannelMediaRelayEvent","ChannelMediaRelayState","ChannelProfile","ClientRole","ConnectionChangedReason","ConnectionStateType","DegradationPreference","EncryptionMode","ErrorCode","InjectStreamStatus","LastmileProbeResultState","LighteningContrastLevel","LocalVideoStreamError","LocalVideoStreamState","LogFilter","NetworkQuality","NetworkType","RtmpStreamingErrorCode","RtmpStreamingState","StreamFallbackOptions","UserOfflineReason","UserPriority","VideoCodecProfileType","VideoFrameRate","BitRate","VideoMirrorMode","VideoOutputOrientationMode","VideoQualityAdaptIndication","VideoRemoteState","VideoRemoteStateReason","VideoRenderMode","VideoStreamType","WarningCode","AudioChannel","VideoCodecType","StreamPublishState","StreamSubscribeState","RtmpStreamingEvent","AudioSessionOperationRestriction","AudioEffectPreset","VoiceBeautifierPreset","AudienceLatencyLevelType","LogLevel","CaptureBrightnessLevelType","SuperResolutionStateReason","UploadErrorReason","CloudProxyType","ExperienceQualityType","ExperiencePoorReason","VoiceConversionPreset","VirtualBackgroundSourceType","VirtualBackgroundSourceStateReason","AudioFileInfoError","AudioMixingDualMonoMode","VirtualBackgroundBlurDegree","VideoCodecTypeForStream","ProxyType","ContentInspectResult","WlAccReason","WlAccAction","ClientRoleChangeFailedReason","VideoContentHint"],"sources":["Enums.ts"],"sourcesContent":["/**\r\n * Regions for connection.\r\n */\r\nexport enum AreaCode {\r\n /**\r\n * Mainland China\r\n */\r\n CN = 0x00000001,\r\n /**\r\n * North America\r\n */\r\n NA = 0x00000002,\r\n /**\r\n * Europe\r\n */\r\n EU = 0x00000004,\r\n /**\r\n * Asia, excluding Mainland China\r\n */\r\n AS = 0x00000008,\r\n /**\r\n * Japan\r\n */\r\n JP = 0x00000010,\r\n /**\r\n * India\r\n */\r\n IN = 0x00000020,\r\n /**\r\n * (Default) Global\r\n */\r\n GLOB = -1,\r\n}\r\n\r\n/**\r\n * Audio codec profile.\r\n */\r\nexport enum AudioCodecProfileType {\r\n /**\r\n * 0: (Default) LC-AAC.\r\n */\r\n LCAAC = 0,\r\n /**\r\n * 1: HE-AAC.\r\n */\r\n HEAAC = 1,\r\n /**\r\n * 2: HE-AAC v2.\r\n *\r\n * @since v3.6.2\r\n */\r\n HE_AAC_V2 = 2,\r\n}\r\n\r\n/**\r\n * Audio equalization band frequency.\r\n */\r\nexport enum AudioEqualizationBandFrequency {\r\n /**\r\n * 0: 31 Hz.\r\n */\r\n Band31 = 0,\r\n /**\r\n * 1: 62 Hz.\r\n */\r\n Band62 = 1,\r\n /**\r\n * 2: 125 Hz.\r\n */\r\n Band125 = 2,\r\n /**\r\n * 3: 250 Hz.\r\n */\r\n Band250 = 3,\r\n /**\r\n * 4: 500 Hz.\r\n */\r\n Band500 = 4,\r\n /**\r\n * 5: 1 kHz.\r\n */\r\n Band1K = 5,\r\n /**\r\n * 6: 2 kHz.\r\n */\r\n Band2K = 6,\r\n /**\r\n * 7: 4 kHz.\r\n */\r\n Band4K = 7,\r\n /**\r\n * 8: 8 kHz.\r\n */\r\n Band8K = 8,\r\n /**\r\n * 9: 16 kHz.\r\n */\r\n Band16K = 9,\r\n}\r\n\r\n/**\r\n * The error information of the local audio.\r\n */\r\nexport enum AudioLocalError {\r\n /**\r\n * 0: The local audio is normal.\r\n */\r\n Ok = 0,\r\n /**\r\n * 1: No specified reason for the local audio failure.\r\n */\r\n Failure = 1,\r\n /**\r\n * 2: No permission to use the local audio device.\r\n */\r\n DeviceNoPermission = 2,\r\n /**\r\n * 3: The microphone is in use.\r\n */\r\n DeviceBusy = 3,\r\n /**\r\n * 4: The local audio recording fails. Check whether the recording device is working properly.\r\n */\r\n RecordFailure = 4,\r\n /**\r\n * 5: The local audio encoding fails.\r\n */\r\n EncodeFailure = 5,\r\n /**\r\n * 8: The local audio capturing is interrupted by the system call.\r\n */\r\n Interrupted = 8,\r\n}\r\n\r\n/**\r\n * The state of the local audio.\r\n */\r\nexport enum AudioLocalState {\r\n /**\r\n * 0: The local audio is in the initial state.\r\n */\r\n Stopped = 0,\r\n /**\r\n * 1: The recording device starts successfully.\r\n */\r\n Recording = 1,\r\n /**\r\n * 2: The first audio frame encodes successfully.\r\n */\r\n Encoding = 2,\r\n /**\r\n * 3: The local audio fails to start.\r\n */\r\n Failed = 3,\r\n}\r\n\r\n/**\r\n * The reason for the change of the music file playback state.\r\n */\r\nexport enum AudioMixingReason {\r\n /**\r\n * 701: The SDK cannot open the music file.\r\n * Possible causes include the local music file does not exist, the SDK does not support the file format, or the SDK cannot access the music file URL.\r\n */\r\n CanNotOpen = 701,\r\n /**\r\n * 702: The SDK opens the music file too frequently. If you need to call `startAudioMixing` multiple times, ensure that the call interval is longer than 500 ms.\r\n */\r\n TooFrequentCall = 702,\r\n /**\r\n * 703: The music file playback is interrupted.\r\n */\r\n InterruptedEOF = 703,\r\n /**\r\n * 720: Successfully calls `startAudioMixing` to play a music file.\r\n */\r\n StartedByUser = 720,\r\n /**\r\n * 721: The music file completes a loop playback.\r\n */\r\n OneLoopCompleted = 721,\r\n /**\r\n * 722: The music file starts a new loop playback.\r\n */\r\n StartNewLoop = 722,\r\n /**\r\n * 723: The music file completes all loop playback.\r\n */\r\n AllLoopsCompleted = 723,\r\n /**\r\n * 724: Successfully calls [`stopAudioMixing`]{@link stopAudioMixing} to stop playing the music file.\r\n */\r\n StoppedByUser = 724,\r\n /**\r\n * 725: Successfully calls [`pauseAudioMixing`]{@link pauseAudioMixing} to pause playing the music file.\r\n */\r\n PausedByUser = 725,\r\n /**\r\n * 726: Successfully calls [`resumeAudioMixing`]{@link resumeAudioMixing} to resume playing the music file.\r\n */\r\n ResumedByUser = 726,\r\n /**\r\n * 0: No error.\r\n */\r\n OK = 0,\r\n}\r\n\r\n/**\r\n * The state of the audio mixing file.\r\n */\r\nexport enum AudioMixingStateCode {\r\n /**\r\n * 710: The audio mixing file is playing. This state comes with one of the following associated reasons:\r\n * - [`StartedByUser(720)`]{@link StartedByUser}: Successfully calls [`startAudioMixing`]{@link startAudioMixing} to play a music file.\r\n * - [`OneLoopCompleted(721)`]{@link OneLoopCompleted}: The music file completes a loop playback.\r\n * - [`StartNewLoop(722)`]{@link StartNewLoop}: The music file starts a new loop playback.\r\n * - [`ResumedByUser(726)`]{@link ResumedByUser}: Successfully calls [`resumeAudioMixing`]{@link resumeAudioMixing} to resume playing the music file.\r\n */\r\n Playing = 710,\r\n /**\r\n * 711: The audio mixing file pauses playing. This state comes with [`PausedByUser(725)`]{@link PausedByUser}.\r\n */\r\n Paused = 711,\r\n /**\r\n * @ignore\r\n */\r\n Restart = 712,\r\n /**\r\n * 713: The audio mixing file stops playing. This state comes with one of the following associated reasons:\r\n * - [`AllLoopsCompleted(723)`]{@link AllLoopsCompleted}: The music file completes all loop playback.\r\n * - [`StoppedByUser(724)`]{@link StoppedByUser}: Successfully calls [`stopAudioMixing`]{@link stopAudioMixing} to stop playing the music file.\r\n */\r\n Stopped = 713,\r\n /**\r\n * 714: An exception occurs when playing the audio mixing file. This state comes with one of the following associated reasons:\r\n * - [`CanNotOpen(701)`]{@link CanNotOpen}: The SDK cannot open the music file. Possible causes include the\r\n * local music file does not exist, the SDK does not support the file format, or the SDK cannot access the music file URL.\r\n * - [`TooFrequentCall(702)`]{@link TooFrequentCall}: The SDK opens the music file too frequently.\r\n * If you need to call [`startAudioMixing`]{@link startAudioMixing} multiple times, ensure that the call interval is longer than 500 ms.\r\n * - [`InterruptedEOF(703)`]{@link InterruptedEOF}: The music file playback is interrupted.\r\n */\r\n Failed = 714,\r\n}\r\n\r\n/**\r\n * Audio output routing.\r\n */\r\nexport enum AudioOutputRouting {\r\n /**\r\n * -1: Default.\r\n */\r\n Default = -1,\r\n /**\r\n * 0: Headset.\r\n */\r\n Headset = 0,\r\n /**\r\n * 1: Earpiece.\r\n */\r\n Earpiece = 1,\r\n /**\r\n * 2: Headset with no microphone.\r\n */\r\n HeadsetNoMic = 2,\r\n /**\r\n * 3: Speakerphone.\r\n */\r\n Speakerphone = 3,\r\n /**\r\n * 4: Loudspeaker.\r\n */\r\n Loudspeaker = 4,\r\n /**\r\n * 5: Bluetooth headset.\r\n */\r\n HeadsetBluetooth = 5,\r\n /**\r\n * 9: Apple AirPlay.\r\n */\r\n AirPlay = 9,\r\n}\r\n\r\n/**\r\n * Audio profile.\r\n */\r\nexport enum AudioProfile {\r\n /**\r\n * 0: Default audio profile.\r\n * - In the `Communication` profile: A sample rate of 32 KHz, audio encoding, mono, and a bitrate of up to 18 Kbps.\r\n * - In the `LiveBroadcasting` profile: A sample rate of 48 KHz, music encoding, mono, and a bitrate of up to 64 Kbps.\r\n */\r\n Default = 0,\r\n /**\r\n * 1: A sample rate of 32 KHz, audio encoding, mono, and a bitrate of up to 18 Kbps.\r\n */\r\n SpeechStandard = 1,\r\n /**\r\n * 2: A sample rate of 48 KHz, music encoding, mono, and a bitrate of up to 64 Kbps.\r\n */\r\n MusicStandard = 2,\r\n /**\r\n * 3: A sample rate of 48 KHz, music encoding, stereo, and a bitrate of up to 80 Kbps.\r\n */\r\n MusicStandardStereo = 3,\r\n /**\r\n * 4: A sample rate of 48 KHz, music encoding, mono, and a bitrate of up to 96 Kbps.\r\n */\r\n MusicHighQuality = 4,\r\n /**\r\n * 5: A sample rate of 48 KHz, music encoding, stereo, and a bitrate of up to 128 Kbps.\r\n */\r\n MusicHighQualityStereo = 5,\r\n}\r\n\r\n/**\r\n * Audio recording quality.\r\n */\r\nexport enum AudioRecordingQuality {\r\n /**\r\n * 0: Low quality. For example, the size of an AAC file with a sample rate of 32,000 Hz and a 10-minute recording is approximately 1.2 MB.\r\n */\r\n Low = 0,\r\n /**\r\n * 1: (Default) Medium quality. For example, the size of an AAC file with a sample rate of 32,000 Hz and a 10-minute recording is approximately 2 MB.\r\n */\r\n Medium = 1,\r\n /**\r\n * 2: High quality. For example, the size of an AAC file with a sample rate of 32,000 Hz and a 10-minute recording is approximately 3.75 MB.\r\n */\r\n High = 2,\r\n /**\r\n * 3: Ultra-high quality. For example, the size of an AAC file with a sample rate of 32,000 Hz and a 10-minute recording is approximately 7.5 MB.\r\n *\r\n * **since** v3.6.2\r\n */\r\n UltraHigh = 3,\r\n}\r\n\r\n/**\r\n * Recording content.\r\n */\r\nexport enum AudioRecordingPosition {\r\n /**\r\n * 0: (Default) Records the mixed audio of the local user and all remote users.\r\n */\r\n PositionMixedRecordingAndPlayback = 0,\r\n /**\r\n * 1: Records the audio of the local user only.\r\n */\r\n PositionRecording = 1,\r\n /**\r\n * 2: Records the audio of all remote users only.\r\n */\r\n PositionMixedPlayback = 2,\r\n}\r\n\r\n/**\r\n * The state of the remote audio.\r\n */\r\nexport enum AudioRemoteState {\r\n /**\r\n * 0: The remote audio is in the default state, probably due to:\r\n * - [`LocalMuted`]{@link AudioRemoteStateReason.LocalMuted}\r\n * - [`RemoteMuted`]{@link AudioRemoteStateReason.RemoteMuted}\r\n * - [`RemoteOffline`]{@link AudioRemoteStateReason.RemoteOffline}\r\n */\r\n Stopped = 0,\r\n /**\r\n * 1: The first remote audio packet is received.\r\n */\r\n Starting = 1,\r\n /**\r\n * 2: The remote audio stream is decoded and plays normally, probably due to:\r\n * - [`NetworkRecovery`]{@link AudioRemoteStateReason.NetworkRecovery}\r\n * - [`LocalUnmuted`]{@link AudioRemoteStateReason.LocalUnmuted}\r\n * - [`RemoteUnmuted`]{@link AudioRemoteStateReason.RemoteUnmuted}\r\n */\r\n Decoding = 2,\r\n /**\r\n * 3: The remote audio is frozen, probably due to:\r\n * [`NetworkCongestion`]{@link AudioRemoteStateReason.NetworkCongestion}\r\n */\r\n Frozen = 3,\r\n /**\r\n * 4: The remote audio fails to start, probably due to:\r\n * [`Internal`]{@link AudioRemoteStateReason.Internal}\r\n */\r\n Failed = 4,\r\n}\r\n\r\n/**\r\n * The reason of the remote audio state change.\r\n */\r\nexport enum AudioRemoteStateReason {\r\n /**\r\n * 0: Internal reasons.\r\n */\r\n Internal = 0,\r\n /**\r\n * 1: Network congestion.\r\n */\r\n NetworkCongestion = 1,\r\n /**\r\n * 2: Network recovery.\r\n */\r\n NetworkRecovery = 2,\r\n /**\r\n * 3: The local user stops receiving the remote audio stream or disables the audio module.\r\n */\r\n LocalMuted = 3,\r\n /**\r\n * 4: The local user resumes receiving the remote audio stream or enables the audio module.\r\n */\r\n LocalUnmuted = 4,\r\n /**\r\n * 5: The remote user stops sending the audio stream or disables the audio module.\r\n */\r\n RemoteMuted = 5,\r\n /**\r\n * 6: The remote user resumes sending the audio stream or enables the audio module.\r\n */\r\n RemoteUnmuted = 6,\r\n /**\r\n * 7: The remote user leaves the channel.\r\n */\r\n RemoteOffline = 7,\r\n}\r\n\r\n/**\r\n * The preset local voice reverberation option.\r\n */\r\nexport enum AudioReverbPreset {\r\n /**\r\n * The original voice (no local voice reverberation).\r\n */\r\n Off = 0x00000000,\r\n /**\r\n * Pop music.\r\n */\r\n Popular = 0x00000001,\r\n /**\r\n * R&B.\r\n */\r\n RnB = 0x00000002,\r\n /**\r\n * Rock music.\r\n */\r\n Rock = 0x00000003,\r\n /**\r\n * Hip-hop music.\r\n */\r\n HipHop = 0x00000004,\r\n /**\r\n * Pop concert.\r\n */\r\n VocalConcert = 0x00000005,\r\n /**\r\n * Karaoke.\r\n */\r\n KTV = 0x00000006,\r\n /**\r\n * Recording studio.\r\n */\r\n Studio = 0x00000007,\r\n /**\r\n * The reverberation style typical of a KTV venue (enhanced).\r\n */\r\n FX_KTV = 0x00100001,\r\n /**\r\n * The reverberation style typical of a concert hall (enhanced).\r\n */\r\n FX_VOCAL_CONCERT = 0x00100002,\r\n /**\r\n * The reverberation style typical of a middle-aged man’s voice.\r\n */\r\n FX_UNCLE = 0x00100003,\r\n /**\r\n * The reverberation style typical of a sister’s voice.\r\n */\r\n FX_SISTER = 0x00100004,\r\n /**\r\n * The reverberation style typical of a recording studio (enhanced).\r\n */\r\n FX_STUDIO = 0x00100005,\r\n /**\r\n * The reverberation style typical of popular music (enhanced).\r\n */\r\n FX_POPULAR = 0x00100006,\r\n /**\r\n * The reverberation style typical of R&B music (enhanced).\r\n */\r\n FX_RNB = 0x00100007,\r\n /**\r\n * The reverberation style typical of the vintage phonograph.\r\n */\r\n FX_PHONOGRAPH = 0x00100008,\r\n /**\r\n * The reverberation of the virtual stereo. The virtual stereo is an effect that renders\r\n * the monophonic audio as the stereo audio, so that all users in the channel can hear the stereo voice effect.\r\n * To achieve better virtual stereo reverberation, Agora recommends setting the profile\r\n * parameter in [`RtcEngine#setAudioProfile`]{@link RtcEngine#setAudioProfile} as [`MusicHighQualityStereo(5)`]{@link AudioProfile.MusicHighQualityStereo}.\r\n */\r\n VIRTUAL_STEREO = 0x00200001,\r\n}\r\n\r\n/**\r\n * Audio reverberation type.\r\n */\r\nexport enum AudioReverbType {\r\n /**\r\n * 0: The level of the dry signal (dB). The value ranges between -20 and 10.\r\n */\r\n DryLevel = 0,\r\n /**\r\n * 1: The level of the early reflection signal (wet signal) in dB. The value ranges between -20 and 10.\r\n */\r\n WetLevel = 1,\r\n /**\r\n * 2: The room size of the reverberation. A larger room size means a stronger reverberation. The value ranges between 0 and 100.\r\n */\r\n RoomSize = 2,\r\n /**\r\n * 3: The length of the initial delay of the wet signal (ms). The value ranges between 0 and 200.\r\n */\r\n WetDelay = 3,\r\n /**\r\n * 4: The reverberation strength. The value ranges between 0 and 100.\r\n */\r\n Strength = 4,\r\n}\r\n\r\n/**\r\n * Audio sample rate.\r\n */\r\nexport enum AudioSampleRateType {\r\n /**\r\n * 32000: (Default) 32000 Hz.\r\n */\r\n Type32000 = 32000,\r\n /**\r\n * 44100: 44100 Hz.\r\n */\r\n Type44100 = 44100,\r\n /**\r\n * 48000: 48000 Hz.\r\n */\r\n Type48000 = 48000,\r\n}\r\n\r\n/**\r\n * Audio scenario.\r\n */\r\nexport enum AudioScenario {\r\n /**\r\n * 0: Default audio scenario.\r\n *\r\n * **Note**\r\n * If you run the iOS app on an M1 Mac, due to the hardware differences between M1 Macs, iPhones, and iPads,\r\n * the default audio scenario of the Agora iOS SDK is the same as that of the Agora macOS SDK.\r\n */\r\n Default = 0,\r\n /**\r\n * 1: Entertainment scenario where users need to frequently switch the user role.\r\n */\r\n ChatRoomEntertainment = 1,\r\n /**\r\n * 2: Education scenario where users want smoothness and stability.\r\n */\r\n Education = 2,\r\n /**\r\n * 3: High-quality audio chatroom scenario where hosts mainly play music.\r\n */\r\n GameStreaming = 3,\r\n /**\r\n * 4: Showroom scenario where a single host wants high-quality audio.\r\n */\r\n ShowRoom = 4,\r\n /**\r\n * 5: Gaming scenario for group chat that only contains the human voice.\r\n */\r\n ChatRoomGaming = 5,\r\n /**\r\n * IoT (Internet of Things) scenario where users use IoT devices with low power consumption.\r\n *\r\n * @since v3.2.0.\r\n */\r\n IOT = 6,\r\n /**\r\n * Meeting scenario that mainly contains the human voice.\r\n *\r\n * @since v3.2.0.\r\n */\r\n MEETING = 8,\r\n}\r\n\r\n/**\r\n * The preset audio voice configuration used to change the voice effect.\r\n */\r\nexport enum AudioVoiceChanger {\r\n /**\r\n * The original voice (no local voice change).\r\n */\r\n Off = 0x00000000,\r\n /**\r\n * An old man’s voice.\r\n */\r\n OldMan = 0x00000001,\r\n /**\r\n * A little boy’s voice.\r\n */\r\n BabyBoy = 0x00000002,\r\n /**\r\n * A little girl’s voice.\r\n */\r\n BabyGirl = 0x00000003,\r\n /**\r\n * The voice of a growling bear.\r\n */\r\n ZhuBaJie = 0x00000004,\r\n /**\r\n * Ethereal vocal effects.\r\n */\r\n Ethereal = 0x00000005,\r\n /**\r\n * Hulk’s voice.\r\n */\r\n Hulk = 0x00000006,\r\n /**\r\n * A more vigorous voice.\r\n */\r\n BEAUTY_VIGOROUS = 0x00100001,\r\n /**\r\n * A deeper voice.\r\n */\r\n BEAUTY_DEEP = 0x00100002,\r\n /**\r\n * A mellower voice.\r\n */\r\n BEAUTY_MELLOW = 0x00100003,\r\n /**\r\n * Falsetto.\r\n */\r\n BEAUTY_FALSETTO = 0x00100004,\r\n /**\r\n * A fuller voice.\r\n */\r\n BEAUTY_FULL = 0x00100005,\r\n /**\r\n * A clearer voice.\r\n */\r\n BEAUTY_CLEAR = 0x00100006,\r\n /**\r\n * A more resounding voice.\r\n */\r\n BEAUTY_RESOUNDING = 0x00100007,\r\n /**\r\n * A more ringing voice.\r\n */\r\n BEAUTY_RINGING = 0x00100008,\r\n /**\r\n * A more spatially resonant voice.\r\n */\r\n BEAUTY_SPACIAL = 0x00100009,\r\n /**\r\n * (For male only) A more magnetic voice. Do not use it when the speaker is a female; otherwise, voice distortion occurs.\r\n */\r\n GENERAL_BEAUTY_VOICE_MALE_MAGNETIC = 0x00200001,\r\n /**\r\n * (For female only) A fresher voice. Do not use it when the speaker is a male; otherwise, voice distortion occurs.\r\n */\r\n GENERAL_BEAUTY_VOICE_FEMALE_FRESH = 0x00200002,\r\n /**\r\n * (For female only) A more vital voice. Do not use it when the speaker is a male; otherwise, voice distortion occurs.\r\n */\r\n GENERAL_BEAUTY_VOICE_FEMALE_VITALITY = 0x00200003,\r\n}\r\n\r\n/**\r\n * The camera capture preference.\r\n */\r\nexport enum CameraCaptureOutputPreference {\r\n /**\r\n * 0: (default) Self-adapts the camera output parameters to the system performance and network conditions to balance CPU consumption and video preview quality.\r\n */\r\n Auto = 0,\r\n /**\r\n * 1: Prioritizes the system performance. The SDK chooses the dimension and frame rate of the local camera capture closest to those set by [`setVideoEncoderConfiguration`]{@link RtcEngine.setVideoEncoderConfiguration}.\r\n */\r\n Performance = 1,\r\n /**\r\n * 2: Prioritizes the local preview quality. The SDK chooses higher camera output parameters to improve the local video preview quality. This option requires extra CPU and RAM usage for video pre-processing.\r\n */\r\n Preview = 2,\r\n /**\r\n * 3: Allows you to customize the width and height of the video image captured by the local camera.\r\n *\r\n * @since v3.3.1\r\n */\r\n Manual = 3,\r\n}\r\n\r\n/**\r\n * The camera direction.\r\n */\r\nexport enum CameraDirection {\r\n /**\r\n * 0: The rear camera.\r\n */\r\n Rear = 0,\r\n /**\r\n * 1: The front camera.\r\n */\r\n Front = 1,\r\n}\r\n\r\n/**\r\n * The error code in AgoraChannelMediaRelayError.\r\n */\r\nexport enum ChannelMediaRelayError {\r\n /**\r\n * 0: The state is normal.\r\n */\r\n None = 0,\r\n /**\r\n * 1: An error occurs in the server response.\r\n */\r\n ServerErrorResponse = 1,\r\n /**\r\n * 2: No server response. You can call the leaveChannel method to leave the channel.\r\n * [`leaveChannel`]{@link RtcEngine.leaveChannel}\r\n */\r\n ServerNoResponse = 2,\r\n /**\r\n * 3: The SDK fails to access the service, probably due to limited resources of the server.\r\n */\r\n NoResourceAvailable = 3,\r\n /**\r\n * 4: Fails to send the relay request.\r\n */\r\n FailedJoinSourceChannel = 4,\r\n /**\r\n * 5: Fails to accept the relay request.\r\n */\r\n FailedJoinDestinationChannel = 5,\r\n /**\r\n * 6: The server fails to receive the media stream.\r\n */\r\n FailedPacketReceivedFromSource = 6,\r\n /**\r\n * 7: The server fails to send the media stream.\r\n */\r\n FailedPacketSentToDestination = 7,\r\n /**\r\n * 8: The SDK disconnects from the server due to poor network connections. You can call [`leaveChannel`]{@link RtcEngine.leaveChannel} to leave the channel.\r\n */\r\n ServerConnectionLost = 8,\r\n /**\r\n * 9: An internal error occurs in the server.\r\n */\r\n InternalError = 9,\r\n /**\r\n * 10: The token of the source channel has expired.\r\n */\r\n SourceTokenExpired = 10,\r\n /**\r\n * 11: The token of the destination channel has expired.\r\n */\r\n DestinationTokenExpired = 11,\r\n}\r\n\r\n/**\r\n * The event code in `ChannelMediaRelayEvent`.\r\n */\r\nexport enum ChannelMediaRelayEvent {\r\n /**\r\n * 0: The user disconnects from the server due to poor network connections.\r\n */\r\n Disconnect = 0,\r\n /**\r\n * 1: The network reconnects.\r\n */\r\n Connected = 1,\r\n /**\r\n * 2: The user joins the source channel.\r\n */\r\n JoinedSourceChannel = 2,\r\n /**\r\n * 3: The user joins the destination channel.\r\n */\r\n JoinedDestinationChannel = 3,\r\n /**\r\n * 4: The SDK starts relaying the media stream to the destination channel.\r\n */\r\n SentToDestinationChannel = 4,\r\n /**\r\n * 5: The server receives the video stream from the source channel.\r\n */\r\n ReceivedVideoPacketFromSource = 5,\r\n /**\r\n * 6: The server receives the audio stream from the source channel.\r\n */\r\n ReceivedAudioPacketFromSource = 6,\r\n /**\r\n * 7: The destination channel is updated.\r\n */\r\n UpdateDestinationChannel = 7,\r\n /**\r\n * 8: The destination channel update fails due to internal reasons.\r\n */\r\n UpdateDestinationChannelRefused = 8,\r\n /**\r\n * 9: The destination channel does not change, which means that the destination channel fails to be updated.\r\n */\r\n UpdateDestinationChannelNotChange = 9,\r\n /**\r\n * 10: The destination channel name is null.\r\n */\r\n UpdateDestinationChannelIsNil = 10,\r\n /**\r\n * 11: The video profile is sent to the server.\r\n */\r\n VideoProfileUpdate = 11,\r\n /**\r\n * 12: The SDK successfully pauses relaying the media stream to destination channels.\r\n *\r\n * @since v3.5.2\r\n */\r\n PauseSendPacketToDestChannelSuccess = 12,\r\n /**\r\n * 13: The SDK fails to pause relaying the media stream to destination channels.\r\n *\r\n * @since v3.5.2\r\n */\r\n PauseSendPacketToDestChannelFailed = 13,\r\n /**\r\n * 14: The SDK successfully resumes relaying the media stream to destination channels.\r\n *\r\n * @since v3.5.2\r\n */\r\n ResumeSendPacketToDestChannelSuccess = 14,\r\n /**\r\n * 15: The SDK fails to resume relaying the media stream to destination channels.\r\n *\r\n * @since v3.5.2\r\n */\r\n ResumeSendPacketToDestChannelFailed = 15,\r\n}\r\n\r\n/**\r\n * The state code in [`ChannelMediaRelayState`]{@link ChannelMediaRelayState}.\r\n */\r\nexport enum ChannelMediaRelayState {\r\n /**\r\n * 0: The SDK is initializing.\r\n */\r\n Idle = 0,\r\n /**\r\n * 1: The SDK tries to relay the media stream to the destination channel.\r\n */\r\n Connecting = 1,\r\n /**\r\n * 2: The SDK successfully relays the media stream to the destination channel.\r\n */\r\n Running = 2,\r\n /**\r\n * 3: A failure occurs. See the details in error.\r\n */\r\n Failure = 3,\r\n}\r\n\r\n/**\r\n * Channel profile.\r\n */\r\nexport enum ChannelProfile {\r\n /**\r\n * 0: The Communication profile.\r\n * Use this profile in one-on-one calls or group calls, where all users can talk freely.\r\n */\r\n Communication = 0,\r\n /**\r\n * 1: The Live-Broadcast profile.\r\n * Users in a live-broadcast channel have a role as either host or audience. A host can both send and receive streams; an audience can only receive streams.\r\n */\r\n LiveBroadcasting = 1,\r\n /**\r\n * 2: The Gaming profile.\r\n * This profile uses a codec with a lower bitrate and consumes less power. Applies to the gaming scenario, where all game players can talk freely.\r\n */\r\n Game = 2,\r\n}\r\n\r\n/**\r\n * Client role in the `LiveBroadcasting` profile.\r\n */\r\nexport enum ClientRole {\r\n /**\r\n * 1: Host.\r\n *\r\n * A host can both send and receive streams. If you set this user role in the channel, the SDK automatically\r\n * calls [`muteLocalAudioStream(false)`]{@link muteLocalAudioStream} and [`muteLocalVideoStream(false)`]{@link muteLocalVideoStream}.\r\n */\r\n Broadcaster = 1,\r\n /**\r\n * 2: Audience.\r\n *\r\n * An audience member can only receive streams. If you set this user role in the channel, the SDK automatically\r\n * calls [`muteLocalAudioStream(true)`]{@link muteLocalAudioStream} and [`muteLocalVideoStream(true)`]{@link muteLocalVideoStream}.\r\n */\r\n Audience = 2,\r\n}\r\n\r\n/**\r\n * Reasons for the connection state change.\r\n */\r\nexport enum ConnectionChangedReason {\r\n /**\r\n * 0: The SDK is connecting to Agora’s edge server.\r\n */\r\n Connecting = 0,\r\n /**\r\n * 1: The SDK has joined the channel successfully.\r\n */\r\n JoinSuccess = 1,\r\n /**\r\n * 2: The connection between the SDK and Agora’s edge server is interrupted.\r\n */\r\n Interrupted = 2,\r\n /**\r\n * 3: The connection between the SDK and Agora’s edge server is banned by Agora’s edge server.\r\n */\r\n BannedByServer = 3,\r\n /**\r\n * 4: The SDK fails to join the channel for more than 20 minutes and stops reconnecting to the channel.\r\n */\r\n JoinFailed = 4,\r\n /**\r\n * 5: The SDK has left the channel.\r\n */\r\n LeaveChannel = 5,\r\n /**\r\n * 6: The specified App ID is invalid. Try to rejoin the channel with a valid App ID.\r\n */\r\n InvalidAppId = 6,\r\n /**\r\n * 7: The specified channel name is invalid. Try to rejoin the channel with a valid channel name.\r\n */\r\n InvalidChannelName = 7,\r\n /**\r\n * 8: The generated token is invalid probably due to the following reasons:\r\n * - The App Certificate for the project is enabled in Console, but you do not use Token when joining the channel. If you enable the App Certificate, you must use a token to join the channel.\r\n * - The uid that you specify in the [`joinChannel`]{@link RtcEngine.joinChannel} method is different from the uid that you pass for generating the token.\r\n */\r\n InvalidToken = 8,\r\n /**\r\n * 9: The token has expired. Generate a new token from your server.\r\n */\r\n TokenExpired = 9,\r\n /**\r\n * 10: The user is banned by the server.\r\n */\r\n RejectedByServer = 10,\r\n /**\r\n * 11: The SDK tries to reconnect after setting a proxy server.\r\n */\r\n SettingProxyServer = 11,\r\n /**\r\n * 12: The token renews.\r\n */\r\n RenewToken = 12,\r\n /**\r\n * 13: The client IP address has changed, probably due to a change of the network type, IP address, or network port.\r\n */\r\n ClientIpAddressChanged = 13,\r\n /**\r\n * 14: Timeout for the keep-alive of the connection between the SDK and Agora’s edge server. The connection state changes to:\r\n * [`Reconnecting`]{@link ConnectionStateType.Reconnecting}\r\n */\r\n KeepAliveTimeout = 14,\r\n /**\r\n * @ignore\r\n * 15: In cloud proxy mode, the proxy server connection is interrupted.\r\n */\r\n ProxyServerInterrupted = 15,\r\n /**\r\n * 19: Join the same channel from different devices using the same user ID.\r\n *\r\n * @since v3.7.0\r\n */\r\n SameUidLogin = 19,\r\n /**\r\n * 20: The number of hosts in the channel is already at the upper limit.\r\n *\r\n * @since v3.7.0\r\n *\r\n * **Note**\r\n * This enumerator is reported only when the support for 128 users is enabled.\r\n * The maximum number of hosts is based on the actual number of hosts configured when you\r\n * enable the 128-user feature.\r\n */\r\n TooManyBroadcasters = 20,\r\n}\r\n\r\n/**\r\n * Connection states.\r\n */\r\nexport enum ConnectionStateType {\r\n /**\r\n * 1: The SDK is disconnected from Agora's edge server.\r\n * - This is the initial state before [`joinChannel`]{@link RtcEngine.joinChannel}.\r\n * - The SDK also enters this state when the app calls [`leaveChannel`]{@link RtcEngine.leaveChannel}.\r\n */\r\n Disconnected = 1,\r\n /**\r\n * 2: The SDK is connecting to Agora's edge server.\r\n * - When the app calls [`joinChannel`]{@link RtcEngine.joinChannel}, the SDK starts to establish a connection to the specified channel, triggers the [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged} callback, and switches to the [`Connecting`]{@link ConnectionStateType.Connecting} state.\r\n * - When the SDK successfully joins the channel, the SDK triggers the [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged} callback and switches to the [`Connected`]{@link ConnectionStateType.Connected} state.\r\n * - After the SDK joins the channel and when it finishes initializing the media engine, the SDK triggers the [`JoinChannelSuccess`]{@link RtcEngineEvents.JoinChannelSuccess} callback.\r\n */\r\n Connecting = 2,\r\n /**\r\n * 3: The SDK is connected to Agora's edge server and joins a channel. You can now publish or subscribe to a media stream in the channel.\r\n * If the connection to the channel is lost because, for example, the network is down or switched, the SDK automatically tries to reconnect and triggers:\r\n * - The [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged} callback, and switches to the [`Reconnecting`]{@link ConnectionStateType.Reconnecting} state.\r\n */\r\n Connected = 3,\r\n /**\r\n * 4: The SDK keeps rejoining the channel after being disconnected from a joined channel because of network issues.\r\n * - If the SDK cannot rejoin the channel within 10 seconds after being disconnected from Agora’s edge server, the SDK triggers the [`ConnectionLost`]{@link RtcEngineEvents.ConnectionLost} callback, stays in the [`Reconnecting`]{@link ConnectionStateType.Reconnecting} state, and keeps rejoining the channel.\r\n *\r\n * - If the SDK fails to rejoin the channel 20 minutes after being disconnected from Agora’s edge server, the SDK triggers the [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged} callback, switches to the [`Failed`]{@link ConnectionStateType.Failed} state, and stops rejoining the channel.\r\n * [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged}\r\n */\r\n Reconnecting = 4,\r\n /**\r\n * 5: The SDK fails to connect to Agora's edge server or join the channel.\r\n * You must call [`leaveChannel`]{@link RtcEngine.leaveChannel} to leave this state, and call [`joinChannel`]{@link RtcEngine.joinChannel} again to rejoin the channel.\r\n *\r\n * If the SDK is banned from joining the channel by Agora’s edge server (through the RESTful API), the SDK triggers the [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged} callbacks.\r\n */\r\n Failed = 5,\r\n}\r\n\r\n/**\r\n * The video encoding degradation preference under limited bandwidth.\r\n */\r\nexport enum DegradationPreference {\r\n /**\r\n * 0: (Default) Prefers to reduce the video frame rate while maintaining video quality during video encoding under limited bandwidth.\r\n * This degradation preference is suitable for scenarios where video quality is prioritized.\r\n *\r\n * **Note** In the `Communication` channel profile, the resolution of the video sent may change, so remote users need to handle this issue.\r\n * See [`VideoSizeChanged`]{@link VideoSizeChanged}.\r\n */\r\n MaintainQuality = 0,\r\n /**\r\n * 1: Prefers to reduce the video quality while maintaining the video frame rate during video encoding under limited bandwidth.\r\n * This degradation preference is suitable for scenarios where smoothness is prioritized and video quality is allowed to be reduced.\r\n */\r\n MaintainFramerate = 1,\r\n\r\n /**\r\n * 2: Reduces the video frame rate and video quality simultaneously during video encoding under limited bandwidth.\r\n * `MaintainBalanced` has a lower reduction than `MaintainQuality` and `MaintainFramerate`, and this preference is suitable for scenarios where\r\n * both smoothness and video quality are a priority.\r\n *\r\n * @since v3.4.2\r\n *\r\n * **Note** The resolution of the video sent may change, so remote users need to handle this issue. See [`VideoSizeChanged`]{@link VideoSizeChanged}.\r\n */\r\n MaintainBalanced = 2,\r\n}\r\n\r\n/**\r\n * Encryption mode.\r\n *\r\n * Agora recommends using either the `AES128GCM2` or `AES256GCM2` encryption mode,\r\n * both of which support adding a salt and are more secure.\r\n */\r\nexport enum EncryptionMode {\r\n /**\r\n * @deprecated\r\n * 0: This mode is deprecated.\r\n */\r\n None = 0,\r\n /**\r\n * 1: 128-bit AES encryption, XTS mode.\r\n */\r\n AES128XTS = 1,\r\n /**\r\n * 2: 128-bit AES encryption, ECB mode.\r\n */\r\n AES128ECB = 2,\r\n /**\r\n * 3: 256-bit AES encryption, XTS mode.\r\n */\r\n AES256XTS = 3,\r\n /**\r\n * 4: 128-bit SM4 encryption, ECB mode.\r\n *\r\n * @since v3.1.2\r\n */\r\n SM4128ECB = 4,\r\n /**\r\n * 5: 128-bit AES encryption, GCM mode.\r\n *\r\n * @since v3.3.1\r\n */\r\n AES128GCM = 5,\r\n /**\r\n * 6: 256-bit AES encryption, GCM mode.\r\n *\r\n * @since v3.3.1\r\n */\r\n AES256GCM = 6,\r\n /**\r\n * 7: (Default) 128-bit GCM encryption, GCM mode.\r\n *\r\n * @since v3.4.5\r\n *\r\n * Compared to `AES128GCM` encryption mode, the `AES128GCM2` encryption mode is more secure and requires you to set the salt (`encryptionKdfSalt`).\r\n *\r\n */\r\n AES128GCM2 = 7,\r\n /**\r\n * 8: 256-bit GCM encryption, GCM mode.\r\n *\r\n * @since v3.4.5\r\n *\r\n * Compared to `AES256GCM` encryption mode, `AES256GCM2` encryption mode is more secure and requires you\r\n * to set the salt (`encryptionKdfSalt`).\r\n */\r\n AES256GCM2 = 8,\r\n}\r\n\r\n/**\r\n * Error codes occur when the SDK encounters an error that cannot be recovered automatically without any app intervention.\r\n */\r\nexport enum ErrorCode {\r\n /**\r\n * 0: No error occurs.\r\n */\r\n NoError = 0,\r\n /**\r\n * 1: A general error occurs (no specified reason).\r\n */\r\n Failed = 1,\r\n /**\r\n * 2: An invalid parameter is used. For example, the specific channel name includes illegal characters.\r\n */\r\n InvalidArgument = 2,\r\n /**\r\n * 3: The SDK module is not ready.\r\n * Possible solutions:\r\n * - Check the audio device.\r\n * - Check the completeness of the app.\r\n * - Re-initialize the SDK.\r\n */\r\n NotReady = 3,\r\n /**\r\n * 4: The current state of the SDK does not support this function.\r\n */\r\n NotSupported = 4,\r\n /**\r\n * 5: The request is rejected. This is for internal SDK use only, and is not returned to the app through any method or callback.\r\n */\r\n Refused = 5,\r\n /**\r\n * 6: The buffer size is not big enough to store the returned data.\r\n */\r\n BufferTooSmall = 6,\r\n /**\r\n * 7: The SDK is not initialized before calling this method.\r\n */\r\n NotInitialized = 7,\r\n /**\r\n * 9: No permission exists. Check if the user has granted access to the audio or video device.\r\n */\r\n NoPermission = 9,\r\n /**\r\n * 10: An API method timeout occurs. Some API methods require the SDK to return the execution result, and this error occurs if the request takes too long (over 10 seconds) for the SDK to process.\r\n */\r\n TimedOut = 10,\r\n /**\r\n * 11: The request is canceled. This is for internal SDK use only, and is not returned to the app through any method or callback.\r\n */\r\n Canceled = 11,\r\n /**\r\n * 12: The method is called too often. This is for internal SDK use only, and is not returned to the app through any method or callback.\r\n */\r\n TooOften = 12,\r\n /**\r\n * 13: The SDK fails to bind to the network socket. This is for internal SDK use only, and is not returned to the app through any method or callback.\r\n */\r\n BindSocket = 13,\r\n /**\r\n * 14: The network is unavailable. This is for internal SDK use only, and is not returned to the app through any method or callback.\r\n */\r\n NetDown = 14,\r\n /**\r\n * 15: No network buffers are available. This is for internal SDK use only, and is not returned to the app through any method or callback.\r\n */\r\n NoBufs = 15,\r\n /**\r\n * 17: The request to join the channel is rejected.\r\n * Possible reasons are:\r\n * - The user is already in the channel, and still calls the API method to join the channel, for example, [`joinChannel`]{@link RtcEngine.joinChannel}\r\n * - The user tries joining the channel during the echo test. Please join the channel after the echo test ends.\r\n */\r\n JoinChannelRejected = 17,\r\n /**\r\n * 18: The request to leave the channel is rejected.\r\n * Possible reasons are:\r\n * - The user left the channel and still calls the API method to leave the channel, for example, [`leaveChannel`]{@link RtcEngine.leaveChannel}.\r\n * - The user has not joined the channel and calls the API method to leave the channel.\r\n */\r\n LeaveChannelRejected = 18,\r\n /**\r\n * 19: The resources are occupied and cannot be used.\r\n */\r\n AlreadyInUse = 19,\r\n /**\r\n * @ignore\r\n * 20: The SDK gave up the request due to too many requests.\r\n */\r\n Abort = 20,\r\n /**\r\n * 21: In Windows, specific firewall settings cause the SDK to fail to initialize and crash.\r\n */\r\n InitNetEngine = 21,\r\n /**\r\n * @ignore\r\n * 22: The app uses too much of the system resources and the SDK fails to allocate the resources.\r\n */\r\n ResourceLimited = 22,\r\n /**\r\n * 101: The specified App ID is invalid. Please try to rejoin the channel with a valid App ID.\r\n */\r\n InvalidAppId = 101,\r\n /**\r\n * 102: The specified channel name is invalid. Please try to rejoin the channel with a valid channel name.\r\n */\r\n InvalidChannelId = 102,\r\n /**\r\n * 103: Fails to get server resources in the specified region. Please try to specify another region.\r\n *\r\n * @since v3.1.2.\r\n */\r\n NoServerResources = 103,\r\n /**\r\n * 109: The token expired.\r\n * @deprecated Use [`TokenExpired`]{@link ConnectionChangedReason.TokenExpired} in the reason parameter of [`onConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged}.\r\n *\r\n * Possible reasons are:\r\n * - Authorized Timestamp expired: The timestamp is represented by the number of seconds elapsed since 1/1/1970. The user can use the token to access the Agora service within five minutes after the token is generated. If the user does not access the Agora service after five minutes, this token is no longer valid.\r\n * - Call Expiration Timestamp expired: The timestamp is the exact time when a user can no longer use the Agora service (for example, when a user is forced to leave an ongoing call). When a value is set for the Call Expiration Timestamp, it does not mean that the token will expire, but that the user will be banned from the channel.\r\n */\r\n TokenExpired = 109,\r\n /**\r\n * 110: The token is invalid.\r\n * @deprecated Use [`InvalidToken`]{@link ConnectionChangedReason.InvalidToken} in the reason parameter of [`onConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged}.\r\n *\r\n * Possible reasons are:\r\n * - The App Certificate for the project is enabled in Console, but the user is using the App ID. Once the App Certificate is enabled, the user must use a token.\r\n * - The uid is mandatory, and users must set the same uid as the one set in the [`joinChannel`]{@link RtcEngine.joinChannel} method.\r\n */\r\n InvalidToken = 110,\r\n /**\r\n * 111: The Internet connection is interrupted. This applies to the Agora Web SDK only.\r\n */\r\n ConnectionInterrupted = 111,\r\n /**\r\n * 112: The Internet connection is lost. This applies to the Agora Web SDK only.\r\n */\r\n ConnectionLost = 112,\r\n /**\r\n * 113: The user is not in the channel when calling the [`sendStreamMessage`]{@link RtcEngine.sendStreamMessage} or [`getUserInfoByUserAccount`]{@link RtcEngine.getUserInfoByUserAccount} method.\r\n */\r\n NotInChannel = 113,\r\n /**\r\n * 114: The size of the sent data is over 1024 bytes when the user calls the [`sendStreamMessage`]{@link RtcEngine.sendStreamMessage} method.\r\n */\r\n SizeTooLarge = 114,\r\n /**\r\n * 115: The bitrate of the sent data exceeds the limit of 6 Kbps when the user calls the [`sendStreamMessage`]{@link RtcEngine.sendStreamMessage} method.\r\n */\r\n BitrateLimit = 115,\r\n /**\r\n * 116: Too many data streams (over five streams) are created when the user calls the [`createDataStream`]{@link RtcEngine.createDataStream} method.\r\n */\r\n TooManyDataStreams = 116,\r\n /**\r\n * 120: Decryption fails. The user may have used a different encryption password to join the channel. Check your settings or try rejoining the channel.\r\n */\r\n DecryptionFailed = 120,\r\n /**\r\n * 123: The client is banned by the server.\r\n */\r\n ClientIsBannedByServer = 123,\r\n /**\r\n * 124: Incorrect watermark file parameter.\r\n */\r\n WatermarkParam = 124,\r\n /**\r\n * 125: Incorrect watermark file path.\r\n */\r\n WatermarkPath = 125,\r\n /**\r\n * 126: Incorrect watermark file format.\r\n */\r\n WatermarkPng = 126,\r\n /**\r\n * 127: Incorrect watermark file information.\r\n */\r\n WatermarkInfo = 127,\r\n /**\r\n * 128: Incorrect watermark file data format.\r\n */\r\n WatermarkAGRB = 128,\r\n /**\r\n * 129: An error occurs in reading the watermark file.\r\n */\r\n WatermarkRead = 129,\r\n /**\r\n * 130: The encrypted stream is not allowed to publish.\r\n */\r\n EncryptedStreamNotAllowedPublish = 130,\r\n /**\r\n * 134: The user account is invalid.\r\n */\r\n InvalidUserAccount = 134,\r\n /**\r\n * 151: CDN related errors. Remove the original URL address and add a new one by calling the [`removePublishStreamUrl`]{@link RtcEngine.removePublishStreamUrl} and [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} methods.\r\n */\r\n PublishStreamCDNError = 151,\r\n /**\r\n * 152: The host publishes more than 10 URLs. Delete the unnecessary URLs before adding new ones.\r\n */\r\n PublishStreamNumReachLimit = 152,\r\n /**\r\n * 153: The host manipulates other hosts' URLs. Check your app logic.\r\n */\r\n PublishStreamNotAuthorized = 153,\r\n /**\r\n * 154: An error occurs in Agora’s streaming server. Call the [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} method to publish the stream again.\r\n */\r\n PublishStreamInternalServerError = 154,\r\n /**\r\n * 155: The server fails to find the stream.\r\n */\r\n PublishStreamNotFound = 155,\r\n /**\r\n * 156: The format of the RTMP or RTMPS stream URL is not supported. Check whether the URL format is correct.\r\n */\r\n PublishStreamFormatNotSuppported = 156,\r\n /**\r\n * 157: The extension library is not integrated, such as the library for enabling deep-learning noise reduction.\r\n *\r\n * @since v3.3.1\r\n */\r\n ModuleNotFound = 157,\r\n /**\r\n * 160: The client is already recording audio. To start a new recording, call [`stopAudioRecording`]{@link stopAudioRecording} to stop the current recording first, and then call [`startAudioRecordingWithConfig`]{@link startAudioRecordingWithConfig}.\r\n */\r\n AlreadyInRecording = 160,\r\n /**\r\n * 1001: Fails to load the media engine.\r\n */\r\n LoadMediaEngine = 1001,\r\n /**\r\n * 1002: Fails to start the call after enabling the media engine.\r\n */\r\n StartCall = 1002,\r\n /**\r\n * 1003: Fails to start the camera.\r\n *\r\n * @deprecated Use [`CaptureFailure`]{@link LocalVideoStreamError.CaptureFailure} in the error parameter of [`LocalVideoStateChanged`]{@link RtcEngineEvents.LocalVideoStateChanged}.\r\n */\r\n StartCamera = 1003,\r\n /**\r\n * 1004: Fails to start the video rendering module.\r\n */\r\n StartVideoRender = 1004,\r\n /**\r\n * 1005: Audio Device Module: A general error occurs in the Audio Device Module (the reason is not classified specifically). Check if the audio device is used by another app, or try rejoining the channel.\r\n */\r\n AdmGeneralError = 1005,\r\n /**\r\n * 1006: Audio Device Module: An error occurs in using the Java resources.\r\n */\r\n AdmJavaResource = 1006,\r\n /**\r\n * 1007: Audio Device Module: An error occurs in setting the sampling frequency.\r\n */\r\n AdmSampleRate = 1007,\r\n /**\r\n * 1008: Audio Device Module: An error occurs in initializing the playback device.\r\n */\r\n AdmInitPlayout = 1008,\r\n /**\r\n * 1009: Audio Device Module: An error occurs in starting the playback device.\r\n */\r\n AdmStartPlayout = 1009,\r\n /**\r\n * 1010: Audio Device Module: An error occurs in stopping the playback device.\r\n */\r\n AdmStopPlayout = 1010,\r\n /**\r\n * 1011: Audio Device Module: An error occurs in initializing the recording device.\r\n */\r\n AdmInitRecording = 1011,\r\n /**\r\n * 1012: Audio Device Module: An error occurs in starting the recording device.\r\n */\r\n AdmStartRecording = 1012,\r\n /**\r\n * 1013: Audio Device Module: An error occurs in stopping the recording device.\r\n */\r\n AdmStopRecording = 1013,\r\n /**\r\n * 1015: Audio Device Module: A playback error occurs. Check your playback device, or try rejoining the channel.\r\n */\r\n AdmRuntimePlayoutError = 1015,\r\n /**\r\n * 1017: Audio Device Module: A recording error occurs.\r\n */\r\n AdmRuntimeRecordingError = 1017,\r\n /**\r\n * 1018: Audio Device Module: Fails to record.\r\n */\r\n AdmRecordAudioFailed = 1018,\r\n /**\r\n * 1020: Audio device module: The audio playback frequency is abnormal, which may cause audio freezes. This abnormality is caused by high CPU usage. Agora recommends stopping other apps.\r\n */\r\n AdmPlayAbnormalFrequency = 1020,\r\n /**\r\n * 1021: Audio device module: The audio recording frequency is abnormal, which may cause audio freezes. This abnormality is caused by high CPU usage. Agora recommends stopping other apps.\r\n */\r\n AdmRecordAbnormalFrequency = 1021,\r\n /**\r\n * 1022: Audio Device Module: An error occurs in initializing the loopback device.\r\n */\r\n AdmInitLoopback = 1022,\r\n /**\r\n * 1023: Audio Device Module: An error occurs in starting the loopback device.\r\n */\r\n AdmStartLoopback = 1023,\r\n /**\r\n * 1027: Audio Device Module: No recording permission.\r\n */\r\n AdmNoPermission = 1027,\r\n /**\r\n * 1030: Audio Routing: Fails to route the audio to the connected Bluetooth device. The default route is used.\r\n */\r\n AudioBtScoFailed = 1030,\r\n /**\r\n * 1359: Audio Device Module: No recording device exists.\r\n */\r\n AdmNoRecordingDevice = 1359,\r\n /**\r\n * 1360: No playback device exists.\r\n */\r\n AdmNoPlayoutDevice = 1360,\r\n /**\r\n * 1501: Video Device Module: The camera is unauthorized.\r\n */\r\n VdmCameraNotAuthorized = 1501,\r\n /**\r\n * 1600: Video Device Module: An unknown error occurs.\r\n */\r\n VcmUnknownError = 1600,\r\n /**\r\n * 1601: Video Device Module: An error occurs in initializing the video encoder.\r\n */\r\n VcmEncoderInitError = 1601,\r\n /**\r\n * 1602: Video Device Module: An error occurs in video encoding.\r\n */\r\n VcmEncoderEncodeError = 1602,\r\n /**\r\n * 1603: Video Device Module: An error occurs in setting the video encoder.\r\n *\r\n * @deprecated\r\n * This error code is deprecated.\r\n */\r\n VcmEncoderSetError = 1603,\r\n /**\r\n * @ignore\r\n */\r\n AudioBtNoRoute = 1800,\r\n}\r\n\r\n/**\r\n * State of importing an external video stream in a live broadcast.\r\n */\r\nexport enum InjectStreamStatus {\r\n /**\r\n * 0: The external video stream imported successfully.\r\n */\r\n StartSuccess = 0,\r\n /**\r\n * 1: The external video stream already exists.\r\n */\r\n StartAlreadyExists = 1,\r\n /**\r\n * 2: The external video stream import is unauthorized.\r\n */\r\n StartUnauthorized = 2,\r\n /**\r\n * 3: Import external video stream timeout.\r\n */\r\n StartTimedout = 3,\r\n /**\r\n * 4: The external video stream failed to import.\r\n */\r\n StartFailed = 4,\r\n /**\r\n * 5: The external video stream stops importing successfully.\r\n */\r\n StopSuccess = 5,\r\n /**\r\n * 6: No external video stream is found.\r\n */\r\n StopNotFound = 6,\r\n /**\r\n * 7: The external video stream to be stopped importing is unauthorized.\r\n */\r\n StopUnauthorized = 7,\r\n /**\r\n * 8: Stopping importing the external video stream timed out.\r\n */\r\n StopTimedout = 8,\r\n /**\r\n * 9: Stopping Importing the external video stream failed.\r\n */\r\n StopFailed = 9,\r\n /**\r\n * 10: The external video stream import is corrupted.\r\n */\r\n Broken = 10,\r\n}\r\n\r\n/**\r\n * The state of the probe test result.\r\n */\r\nexport enum LastmileProbeResultState {\r\n /**\r\n * 1: the last-mile network probe test is complete.\r\n */\r\n Complete = 1,\r\n /**\r\n * 2: the last-mile network probe test is incomplete and the bandwidth estimation is not available, probably due to limited test resources.\r\n */\r\n IncompleteNoBwe = 2,\r\n /**\r\n * 3: The last-mile network probe test is not carried out, probably due to poor network conditions.\r\n */\r\n Unavailable = 3,\r\n}\r\n\r\n/**\r\n * The lightening contrast level.\r\n */\r\nexport enum LighteningContrastLevel {\r\n /**\r\n * 0: Low contrast level.\r\n */\r\n Low = 0,\r\n /**\r\n * 1: (Default) Normal contrast level.\r\n */\r\n Normal = 1,\r\n /**\r\n * 2: High contrast level.\r\n */\r\n High = 2,\r\n}\r\n\r\n/**\r\n * The detailed error information of the local video.\r\n */\r\nexport enum LocalVideoStreamError {\r\n /**\r\n * 0: The local video is normal.\r\n */\r\n OK = 0,\r\n /**\r\n * 1: No specified reason for the local video failure.\r\n */\r\n Failure = 1,\r\n /**\r\n * 2: No permission to use the local video device.\r\n */\r\n DeviceNoPermission = 2,\r\n /**\r\n * 3: The local video capturer is in use.\r\n */\r\n DeviceBusy = 3,\r\n /**\r\n * 4: The local video capture fails. Check whether the capturer is working properly.\r\n */\r\n CaptureFailure = 4,\r\n /**\r\n * 5: The local video encoding fails.\r\n */\r\n EncodeFailure = 5,\r\n /**\r\n * 6: (iOS only) The application is in the background.\r\n *\r\n * @since v3.3.1\r\n */\r\n CaptureInBackground = 6,\r\n /**\r\n * 7: (iOS only) The application is running in Slide Over, Split View, or Picture in Picture mode.\r\n *\r\n * @since v3.3.1\r\n */\r\n CaptureMultipleForegroundApps = 7,\r\n /**\r\n * 8: The SDK cannot find the local video capture device.\r\n *\r\n * @since v3.4.2\r\n */\r\n DeviceNotFound = 8,\r\n /**\r\n * 13: (iOS only) The screen sharing extension process starts.\r\n *\r\n * @since v3.7.0\r\n */\r\n ExtensionCaptureStarted = 13,\r\n /**\r\n * 14: (iOS only) The screen sharing extension process ends.\r\n *\r\n * @since v3.7.0\r\n */\r\n ExtensionCaptureStoped = 14,\r\n /**\r\n * 15: (iOS only) The screen sharing extension process quits unexpectedly.\r\n *\r\n * @since v3.7.0\r\n */\r\n ExtensionCaptureDisconnected = 15,\r\n /**\r\n * 16: (Android only) The user refuses to grant screen capture permission to the application.\r\n *\r\n * @since v3.7.0\r\n */\r\n ScreenCapturePermissionDenied = 16,\r\n}\r\n\r\n/**\r\n * The state of the local video stream.\r\n */\r\nexport enum LocalVideoStreamState {\r\n /**\r\n * 0: The local video is in the initial state.\r\n */\r\n Stopped = 0,\r\n /**\r\n * 1: The local video capturer starts successfully.\r\n */\r\n Capturing = 1,\r\n /**\r\n * 2: The first local video frame encodes successfully.\r\n */\r\n Encoding = 2,\r\n /**\r\n * 3: The local video fails to start.\r\n */\r\n Failed = 3,\r\n}\r\n\r\n/**\r\n * Output log filter level.\r\n */\r\nexport enum LogFilter {\r\n /**\r\n * 0: Do not output any log information.\r\n */\r\n Off = 0,\r\n /**\r\n * 0x080f: Output all log information. Set your log filter as debug if you want to get the most complete log file.\r\n */\r\n Debug = 0x080f,\r\n /**\r\n * 0x000f: Output CRITICAL, ERROR, WARNING, and INFO level log information. We recommend setting your log filter as this level.\r\n */\r\n Info = 0x000f,\r\n /**\r\n * 0x000e: Outputs CRITICAL, ERROR, and WARNING level log information.\r\n */\r\n Warning = 0x000e,\r\n /**\r\n * 0x000c: Outputs CRITICAL and ERROR level log information.\r\n */\r\n Error = 0x000c,\r\n /**\r\n * 0x0008: Outputs CRITICAL level log information.\r\n */\r\n Critical = 0x0008,\r\n}\r\n\r\n/**\r\n * Network quality.\r\n */\r\nexport enum NetworkQuality {\r\n /**\r\n * 0: The network quality is unknown.\r\n */\r\n Unknown = 0,\r\n /**\r\n * 1: The network quality is excellent.\r\n */\r\n Excellent = 1,\r\n /**\r\n * 2: The network quality is quite good, but the bitrate may be slightly lower than excellent.\r\n */\r\n Good = 2,\r\n /**\r\n * 3: Users can feel the communication slightly impaired.\r\n */\r\n Poor = 3,\r\n /**\r\n * 4: Users can communicate only not very smoothly.\r\n */\r\n Bad = 4,\r\n /**\r\n * 5: The network quality is so bad that users can hardly communicate.\r\n */\r\n VBad = 5,\r\n /**\r\n * 6: The network is disconnected and users cannot communicate at all.\r\n */\r\n Down = 6,\r\n /**\r\n * 7: Users cannot detect the network quality. (Not in use.)\r\n */\r\n Unsupported = 7,\r\n /**\r\n * 8: Detecting the network quality.\r\n */\r\n Detecting = 8,\r\n}\r\n\r\n/**\r\n * Network type.\r\n */\r\nexport enum NetworkType {\r\n /**\r\n * -1: The network type is unknown.\r\n */\r\n Unknown = -1,\r\n /**\r\n * 0: The SDK disconnects from the network.\r\n */\r\n Disconnected = 0,\r\n /**\r\n * 1: The network type is LAN.\r\n */\r\n LAN = 1,\r\n /**\r\n * 2: The network type is Wi-Fi (including hotspots).\r\n */\r\n WIFI = 2,\r\n /**\r\n * 3: The network type is mobile 2G.\r\n */\r\n Mobile2G = 3,\r\n /**\r\n * 4: The network type is mobile 3G.\r\n */\r\n Mobile3G = 4,\r\n /**\r\n * 5: The network type is mobile 4G.\r\n */\r\n Mobile4G = 5,\r\n /**\r\n * 6: The network type is mobile 5G.\r\n */\r\n Mobile5G = 6,\r\n}\r\n\r\n/**\r\n * The detailed error information for streaming.\r\n */\r\nexport enum RtmpStreamingErrorCode {\r\n /**\r\n * 0: The RTMP or RTMPS streaming publishes successfully.\r\n */\r\n OK = 0,\r\n /**\r\n * 1: Invalid argument used. If, for example, you do not call the [`setLiveTranscoding`]{@link RtcEngine.setLiveTranscoding} method to configure\r\n * the `LiveTranscoding` parameters before calling the [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} method, the SDK returns this error.\r\n * Check whether you set the parameters in the [`setLiveTranscoding`]{@link RtcEngine.setLiveTranscoding} method properly.\r\n */\r\n InvalidParameters = 1,\r\n /**\r\n * 2: The RTMP or RTMPS streaming is encrypted and cannot be published.\r\n */\r\n EncryptedStreamNotAllowed = 2,\r\n /**\r\n * 3: Timeout for the RTMP or RTMPS streaming. Call the [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} method to publish the streaming again.\r\n */\r\n ConnectionTimeout = 3,\r\n /**\r\n * 4: An error occurs in Agora’s streaming server. Call the [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} method to publish the streaming again.\r\n */\r\n InternalServerError = 4,\r\n /**\r\n * 5: An error occurs in the CDN server.\r\n */\r\n RtmpServerError = 5,\r\n /**\r\n * 6: The RTMP or RTMPS streaming publishes too frequently.\r\n */\r\n TooOften = 6,\r\n /**\r\n * 7: The host publishes more than 10 URLs. Delete the unnecessary URLs before adding new ones.\r\n */\r\n ReachLimit = 7,\r\n /**\r\n * 8: The host manipulates other hosts' URLs. Check your app logic.\r\n */\r\n NotAuthorized = 8,\r\n /**\r\n * 9: Agora’s server fails to find the RTMP or RTMPS streaming.\r\n */\r\n StreamNotFound = 9,\r\n /**\r\n * 10: The format of the RTMP or RTMPS streaming URL is not supported. Check whether the URL format is correct.\r\n */\r\n FormatNotSupported = 10,\r\n /**\r\n * 11: The user role is not host, so the user cannot use the CDN live streaming function.\r\n * Check your application code logic.\r\n *\r\n * @since v3.6.2\r\n */\r\n NotBroadcaster = 11,\r\n /**\r\n * 13: The `updateRtmpTranscoding` or `setLiveTranscoding` method is called to update the transcoding\r\n * configuration in a scenario where there is streaming without transcoding.\r\n * Check your application code logic.\r\n *\r\n * @since v3.6.2\r\n */\r\n TranscodingNoMixStream = 13,\r\n /**\r\n * 14: Errors occurred in the host's network.\r\n */\r\n NetDown = 14,\r\n /**\r\n * 15: Your App ID does not have permission to use the CDN live streaming function.\r\n * Refer to [Prerequisites in Media Push](https://docs.agora.io/en/Interactive%20Broadcast/cdn_streaming_android?platform=Android) to\r\n * enable the CDN live streaming permission.\r\n *\r\n * @since v3.6.2\r\n */\r\n InvalidAppid = 15,\r\n /**\r\n * The streaming has been stopped normally. After you call [`removePublishStreamUrl`]{@link RtcEngine.removePublishStreamUrl} to stop streaming, the SDK returns this value.\r\n *\r\n * @since v3.4.5\r\n */\r\n UnPublishOK = 100,\r\n}\r\n\r\n/**\r\n * The RTMP or RTMPS streaming state.\r\n */\r\nexport enum RtmpStreamingState {\r\n /**\r\n * 0: The RTMP or RTMPS streaming has not started or has ended. This state is also triggered after you\r\n * remove an RTMP or RTMPS stream* from the CDN by calling [`removePublishStreamUrl`]{@link RtcEngine.removePublishStreamUrl}.\r\n */\r\n Idle = 0,\r\n /**\r\n * 1: The SDK is connecting to Agora’s streaming server and the CDN server.\r\n * This state is triggered after you call the [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} method.\r\n */\r\n Connecting = 1,\r\n /**\r\n * 2: The RTMP or RTMPS streaming is being published. The SDK successfully publishes the RTMP or RTMPS streaming and returns this state.\r\n */\r\n Running = 2,\r\n /**\r\n * 3: The RTMP or RTMPS streaming is recovering. When exceptions occur to the CDN, or the streaming is interrupted,\r\n * the SDK attempts to resume RTMP or RTMPS streaming and returns this state.\r\n *\r\n * - If the SDK successfully resumes the streaming, [`Running`]{@link RtmpStreamingState.Running} returns.\r\n * - If the streaming does not resume within 60 seconds or server errors occur,\r\n * [`Failure`]{@link RtmpStreamingState.Failure} returns.\r\n *\r\n * You can also reconnect to the server by calling the [`removePublishStreamUrl`]{@link RtcEngine.removePublishStreamUrl} and [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} methods.\r\n */\r\n Recovering = 3,\r\n /**\r\n * 4: The RTMP or RTMPS streaming fails. See the errorCode parameter for the detailed error information.\r\n * You can also call the [`addPublishStreamUrl`]{@link RtcEngine.addPublishStreamUrl} method to publish the RTMP or RTMPS streaming again.\r\n */\r\n Failure = 4,\r\n /**\r\n * 5: The SDK is disconnecting from the Agora streaming server and CDN.\r\n * When you call remove or stop to stop the streaming normally, the SDK reports the streaming state\r\n * as `Disconnecting`, `Idle` in sequence.\r\n *\r\n * @since v3.6.2\r\n */\r\n Disconnecting = 5,\r\n}\r\n\r\n/**\r\n * Stream fallback option.\r\n */\r\nexport enum StreamFallbackOptions {\r\n /**\r\n * 0: No fallback behavior for the local/remote video stream when the uplink/downlink network condition is unreliable. The quality of the stream is not guaranteed.\r\n */\r\n Disabled = 0,\r\n /**\r\n * 1: Under unreliable downlink network conditions, the remote video stream falls back to the\r\n * low-stream (low resolution and low bitrate) video. You can only set this option\r\n * in the [`setRemoteSubscribeFallbackOption`]{@link RtcEngine.setRemoteSubscribeFallbackOption} method.\r\n * Nothing happens when you set this in the [`setLocalPublishFallbackOption`]{@link RtcEngine.setLocalPublishFallbackOption} method.\r\n */\r\n VideoStreamLow = 1,\r\n /**\r\n * 2: Under unreliable uplink network conditions, the published video stream falls back to audio only. Under unreliable downlink network conditions, the remote video stream first falls back to the low-stream (low resolution and low bitrate) video; and then to an audio-only stream if the network condition deteriorates.\r\n */\r\n AudioOnly = 2,\r\n}\r\n\r\n/**\r\n * Reason for the user being offline.\r\n */\r\nexport enum UserOfflineReason {\r\n /**\r\n * 0: The user left the current channel.\r\n */\r\n Quit = 0,\r\n /**\r\n * 1: The SDK timed out and the user dropped offline because no data packet is received within a certain period of time. If a user quits the call and the message is not passed to the SDK (due to an unreliable channel), the SDK assumes the user dropped offline.\r\n */\r\n Dropped = 1,\r\n /**\r\n * 2: (Live broadcast only.) The client role switched from the host to the audience.\r\n */\r\n BecomeAudience = 2,\r\n}\r\n\r\n/**\r\n * The priority of the remote user.\r\n */\r\nexport enum UserPriority {\r\n /**\r\n * 50: The user’s priority is high.\r\n */\r\n High = 50,\r\n /**\r\n * 100: (Default) The user’s priority is normal.\r\n */\r\n Normal = 100,\r\n}\r\n\r\n/**\r\n * Self-defined video codec profile.\r\n */\r\nexport enum VideoCodecProfileType {\r\n /**\r\n * 66: Baseline video codec profile. Generally used in video calls on mobile phones.\r\n */\r\n BaseLine = 66,\r\n /**\r\n * 77: Main video codec profile. Generally used in mainstream electronics, such as MP4 players, portable video players, PSP, and iPads.\r\n */\r\n Main = 77,\r\n /**\r\n * 100: (Default) High video codec profile. Generally used in high-resolution broadcasts or television.\r\n */\r\n High = 100,\r\n}\r\n\r\n/**\r\n * Video frame rate.\r\n */\r\nexport enum VideoFrameRate {\r\n /**\r\n * -1: The minimum frame rate of the video.\r\n */\r\n Min = -1,\r\n /**\r\n * 1: 1 fps.\r\n */\r\n Fps1 = 1,\r\n /**\r\n * 7: 7 fps.\r\n */\r\n Fps7 = 7,\r\n /**\r\n * 10: 10 fps.\r\n */\r\n Fps10 = 10,\r\n /**\r\n * 15: 15 fps.\r\n */\r\n Fps15 = 15,\r\n /**\r\n * 24: 24 fps.\r\n */\r\n Fps24 = 24,\r\n /**\r\n * 30: 30 fps.\r\n */\r\n Fps30 = 30,\r\n /**\r\n * 60: 60 fps (macOS only).\r\n */\r\n Fps60 = 60,\r\n}\r\n\r\n/**\r\n * Bitrate of the video (Kbps). Refer to the table below and set your bitrate.\r\n * If you set a bitrate beyond the proper range, the SDK automatically adjusts it to a value within the range.\r\n *\r\n * **Video Bitrate Table**\r\n * <table>\r\n * <tr>\r\n * <th>Resolution</th>\r\n * <th>Frame rate<p>(fps)</th>\r\n * <th>Base Bitrate<p>(Kbps, for Communication)</th>\r\n * <th>Live Bitrate<p>(Kbps, for Live Broadcasting)</th>\r\n * </tr>\r\n * <tr>\r\n * <td>160*120</td>\r\n * <td>15</td>\r\n * <td>65</td>\r\n * <td>130</td>\r\n * </tr>\r\n * <tr>\r\n * <td>120*120</td>\r\n * <td>15</td>\r\n * <td>50</td>\r\n * <td>100</td>\r\n * </tr>\r\n * <tr>\r\n * <td>320*180</td>\r\n * <td>15</td>\r\n * <td>140</td>\r\n * <td>280</td>\r\n * </tr>\r\n * <tr>\r\n * <td>180*180</td>\r\n * <td>15</td>\r\n * <td>100</td>\r\n * <td>200</td>\r\n * </tr>\r\n * <tr>\r\n * <td>240*180</td>\r\n * <td>15</td>\r\n * <td>120</td>\r\n * <td>240</td>\r\n * </tr>\r\n * <tr>\r\n * <td>320*240</td>\r\n * <td>15</td>\r\n * <td>200</td>\r\n * <td>400</td>\r\n * </tr>\r\n * <tr>\r\n * <td>240*240</td>\r\n * <td>15</td>\r\n * <td>140</td>\r\n * <td>280</td>\r\n * </tr>\r\n * <tr>\r\n * <td>424*240</td>\r\n * <td>15</td>\r\n * <td>220</td>\r\n * <td>440</td>\r\n * </tr>\r\n * <tr>\r\n * <td>640*360</td>\r\n * <td>15</td>\r\n * <td>400</td>\r\n * <td>800</td>\r\n * </tr>\r\n * <tr>\r\n * <td>360*360</td>\r\n * <td>15</td>\r\n * <td>260</td>\r\n * <td>520</td>\r\n * </tr>\r\n * <tr>\r\n * <td>640*360</td>\r\n * <td>30</td>\r\n * <td>600</td>\r\n * <td>1200</td>\r\n * </tr>\r\n * <tr>\r\n * <td>360*360</td>\r\n * <td>30</td>\r\n * <td>400</td>\r\n * <td>800</td>\r\n * </tr>\r\n * <tr>\r\n * <td>480*360</td>\r\n * <td>15</td>\r\n * <td>320</td>\r\n * <td>640</td>\r\n * </tr>\r\n * <tr>\r\n * <td>480*360</td>\r\n * <td>30</td>\r\n * <td>490</td>\r\n * <td>980</td>\r\n * </tr>\r\n * <tr>\r\n * <td>640*480</td>\r\n * <td>15</td>\r\n * <td>500</td>\r\n * <td>1000</td>\r\n * </tr>\r\n * <tr>\r\n * <td>480*480</td>\r\n * <td>15</td>\r\n * <td>400</td>\r\n * <td>800</td>\r\n * </tr>\r\n * <tr>\r\n * <td>640*480</td>\r\n * <td>30</td>\r\n * <td>750</td>\r\n * <td>1500</td>\r\n * </tr>\r\n * <tr>\r\n * <td>480*480</td>\r\n * <td>30</td>\r\n * <td>600</td>\r\n * <td>1200</td>\r\n * </tr>\r\n * <tr>\r\n * <td>848*480</td>\r\n * <td>15</td>\r\n * <td>610</td>\r\n * <td>1220</td>\r\n * </tr>\r\n * <tr>\r\n * <td>848*480</td>\r\n * <td>30</td>\r\n * <td>930</td>\r\n * <td>1860</td>\r\n * </tr>\r\n * <tr>\r\n * <td>640*480</td>\r\n * <td>10</td>\r\n * <td>400</td>\r\n * <td>800</td>\r\n * </tr>\r\n * <tr>\r\n * <td>1280*720</td>\r\n * <td>15</td>\r\n * <td>1130</td>\r\n * <td>2260</td>\r\n * </tr>\r\n * <tr>\r\n * <td>1280*720</td>\r\n * <td>30</td>\r\n * <td>1710</td>\r\n * <td>3420</td>\r\n * </tr>\r\n * <tr>\r\n * <td>960*720</td>\r\n * <td>15</td>\r\n * <td>910</td>\r\n * <td>1820</td>\r\n * </tr>\r\n * <tr>\r\n * <td>960*720</td>\r\n * <td>30</td>\r\n * <td>1380</td>\r\n * <td>2760</td>\r\n * </tr>\r\n * </table>\r\n *\r\n * Agora uses different video codecs for different profiles to optimize the user experience. For example,\r\n * the Communication profile prioritizes the smoothness while the LIVE_BROADCASTING profile prioritizes the\r\n * video quality (a higher bitrate). Therefore, We recommend setting this parameter as STANDARD_BITRATE = 0.\r\n */\r\nexport enum BitRate {\r\n /**\r\n * 0: (Recommended) the standard bitrate mode. In this mode, the bitrates differ between the Live-broadcast and Communication profiles:\r\n * - Communication profile: the video bitrate is the same as the base bitrate.\r\n * - Live-broadcast profile: the video bitrate is twice the base bitrate.\r\n */\r\n Standard = 0,\r\n /**\r\n * -1: The compatible bitrate mode. In this mode, the bitrate stays the same regardless of the profile. In the Live-broadcast profile,\r\n * if you choose this mode, the video frame rate may be lower than the set value.\r\n */\r\n Compatible = -1,\r\n}\r\n\r\n/**\r\n * Video mirror mode.\r\n */\r\nexport enum VideoMirrorMode {\r\n /**\r\n * 0: (Default) The SDK determines the mirror mode.\r\n */\r\n Auto = 0,\r\n /**\r\n * 1: Enables mirror mode.\r\n */\r\n Enabled = 1,\r\n /**\r\n * 2: Disables mirror mode.\r\n */\r\n Disabled = 2,\r\n}\r\n\r\n/**\r\n * Video output orientation mode.\r\n */\r\nexport enum VideoOutputOrientationMode {\r\n /**\r\n * 0: Adaptive mode (Default).\r\n *\r\n * The video encoder adapts to the orientation mode of the video input device. When you use a custom video source, the output video from the encoder inherits the orientation of the original video.\r\n * - If the width of the captured video from the SDK is greater than the height, the encoder sends the video in landscape mode. The encoder also sends the rotational information of the video, and the receiver uses the rotational information to rotate the received video.\r\n * - If the original video is in portrait mode, the output video from the encoder is also in portrait mode. The encoder also sends the rotational information of the video to the receiver.\r\n */\r\n Adaptative = 0,\r\n /**\r\n * 1: Landscape mode.\r\n *\r\n * The video encoder always sends the video in landscape mode. The video encoder rotates the original video before sending it and the rotational information is 0. This mode applies to scenarios involving CDN live streaming.\r\n */\r\n FixedLandscape = 1,\r\n /**\r\n * 2: Portrait mode.\r\n *\r\n * The video encoder always sends the video in portrait mode. The video encoder rotates the original video before sending it and the rotational information is 0. This mode applies to scenarios involving CDN live streaming.\r\n */\r\n FixedPortrait = 2,\r\n}\r\n\r\n/**\r\n * Quality change of the local video in terms of target frame rate and target bit rate since last count.\r\n */\r\nexport enum VideoQualityAdaptIndication {\r\n /**\r\n * 0: The quality of the local video stays the same.\r\n */\r\n AdaptNone = 0,\r\n /**\r\n * 1: The quality improves because the network bandwidth increases.\r\n */\r\n AdaptUpBandwidth = 1,\r\n /**\r\n * 2: The quality worsens because the network bandwidth decreases.\r\n */\r\n AdaptDownBandwidth = 2,\r\n}\r\n\r\n/**\r\n * The state of the remote video.\r\n */\r\nexport enum VideoRemoteState {\r\n /**\r\n * 0: The remote video is in the default state, probably due to:\r\n * - [`LocalMuted`]{@link VideoRemoteStateReason.LocalMuted}\r\n * - [`RemoteMuted`]{@link VideoRemoteStateReason.RemoteMuted}\r\n * - [`RemoteOffline`]{@link VideoRemoteStateReason.RemoteOffline}\r\n */\r\n Stopped = 0,\r\n /**\r\n * 1: The first remote video packet is received.\r\n */\r\n Starting = 1,\r\n /**\r\n * 2: The remote video stream is decoded and plays normally, probably due to:\r\n * - [`NetworkRecovery`]{@link VideoRemoteStateReason.NetworkRecovery}\r\n * - [`LocalUnmuted`]{@link VideoRemoteStateReason.LocalUnmuted}\r\n * - [`RemoteUnmuted`]{@link VideoRemoteStateReason.RemoteUnmuted}\r\n * - [`AudioFallbackRecovery`]{@link VideoRemoteStateReason.AudioFallbackRecovery}\r\n */\r\n Decoding = 2,\r\n /**\r\n * 3: The remote video is frozen, probably due to:\r\n * - [`NetworkCongestion`]{@link VideoRemoteStateReason.NetworkCongestion}\r\n * - [`AudioFallback`]{@link VideoRemoteStateReason.AudioFallback}\r\n */\r\n Frozen = 3,\r\n /**\r\n * 4: The remote video fails to start, probably due to: [`Internal`]{@link VideoRemoteStateReason.Internal}\r\n */\r\n Failed = 4,\r\n}\r\n\r\n/**\r\n * The reason of the remote video state change.\r\n */\r\nexport enum VideoRemoteStateReason {\r\n /**\r\n * 0: Internal reasons.\r\n */\r\n Internal = 0,\r\n /**\r\n * 1: Network congestion.\r\n */\r\n NetworkCongestion = 1,\r\n /**\r\n * 2: Network recovery.\r\n */\r\n NetworkRecovery = 2,\r\n /**\r\n * 3: The local user stops receiving the remote video stream or disables the video module.\r\n */\r\n LocalMuted = 3,\r\n /**\r\n * 4: The local user resumes receiving the remote video stream or disables the video module.\r\n */\r\n LocalUnmuted = 4,\r\n /**\r\n * 5: The remote user stops sending the video stream or disables the video module.\r\n */\r\n RemoteMuted = 5,\r\n /**\r\n * 6: The remote user resumes sending the video stream or enables the video module.\r\n */\r\n RemoteUnmuted = 6,\r\n /**\r\n * 7: The remote user leaves the channel.\r\n */\r\n RemoteOffline = 7,\r\n /**\r\n * 8: The remote media stream falls back to the audio-only stream due to poor network conditions.\r\n */\r\n AudioFallback = 8,\r\n /**\r\n * 9: The remote media stream switches back to the video stream after the network conditions improve.\r\n */\r\n AudioFallbackRecovery = 9,\r\n}\r\n\r\n/**\r\n * Video display mode.\r\n */\r\nexport enum VideoRenderMode {\r\n /**\r\n * 1: Uniformly scale the video until it fills the visible boundaries (cropped). One dimension of the video may have clipped contents.\r\n */\r\n Hidden = 1,\r\n /**\r\n * 2: Uniformly scale the video until one of its dimension fits the boundary (zoomed to fit). Areas that are not filled due to the disparity in the aspect ratio are filled with black.\r\n */\r\n Fit = 2,\r\n /**\r\n * @deprecated\r\n * 3: This mode is deprecated.\r\n */\r\n Adaptive = 3,\r\n /**\r\n * 4: The fill mode. In this mode, the SDK stretches or zooms the video to fill the display window.\r\n */\r\n FILL = 4,\r\n}\r\n\r\n/**\r\n * Video stream type.\r\n */\r\nexport enum VideoStreamType {\r\n /**\r\n * 0: High-bitrate, high-resolution video stream.\r\n */\r\n High = 0,\r\n /**\r\n * 1: Low-bitrate, low-resolution video stream.\r\n */\r\n Low = 1,\r\n}\r\n\r\n/**\r\n * Warning codes occur when the SDK encounters an error that may be recovered automatically.\r\n * These are only notifications, and can generally be ignored. For example, when the SDK loses connection to the server,\r\n * the SDK reports the [`OpenChannelTimeout(106)`]{@link WarningCode.OpenChannelTimeout} warning and tries to reconnect automatically.\r\n */\r\nexport enum WarningCode {\r\n /**\r\n * 8: The specified view is invalid. Specify a view when using the video call function.\r\n */\r\n InvalidView = 8,\r\n /**\r\n * 16: Failed to initialize the video function, possibly caused by a lack of resources. The users cannot see the video while the voice communication is not affected.\r\n */\r\n InitVideo = 16,\r\n /**\r\n * 20: The request is pending, usually due to some module not being ready, and the SDK postpones processing the request.\r\n */\r\n Pending = 20,\r\n /**\r\n * 103: No channel resources are available. Maybe because the server cannot allocate any channel resource.\r\n */\r\n NoAvailableChannel = 103,\r\n /**\r\n * 104: A timeout occurs when looking up the channel. When joining a channel, the SDK looks up the specified channel. The warning usually occurs when the network condition is too poor for the SDK to connect to the server.\r\n */\r\n LookupChannelTimeout = 104,\r\n /**\r\n * 105: The server rejects the request to look up the channel.\r\n * The server cannot process this request or the request is illegal.\r\n * @deprecated\r\n *\r\n * Use [`RejectedByServer(10)`]{@link ConnectionChangedReason.RejectedByServer} in the reason parameter\r\n * of [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged}.\r\n */\r\n LookupChannelRejected = 105,\r\n /**\r\n * 106: The server rejects the request to look up the channel. The server cannot process this request\r\n * or the request is illegal.\r\n */\r\n OpenChannelTimeout = 106,\r\n /**\r\n * 107: The server rejects the request to open the channel. The server cannot process this request or the request is illegal.\r\n */\r\n OpenChannelRejected = 107,\r\n /**\r\n * 111: A timeout occurs when switching to the live video.\r\n */\r\n SwitchLiveVideoTimeout = 111,\r\n /**\r\n * 118: A timeout occurs when setting the client role in the live broadcast profile.\r\n */\r\n SetClientRoleTimeout = 118,\r\n /**\r\n * 119: The client role is unauthorized.\r\n *\r\n * @deprecated Deprecated as of v3.7.0.\r\n * Use [`ClientRoleChangeFailedReason`]{@link ClientRoleChangeFailedReason} reported in `ClientRoleChangeFailed` instead.\r\n */\r\n SetClientRoleNotAuthorized = 119,\r\n /**\r\n * 121: The SDK fails to join a channel.\r\n */\r\n OpenChannelInvalidTicket = 121,\r\n /**\r\n * 122: Try connecting to another server.\r\n */\r\n OpenChannelTryNextVos = 122,\r\n /**\r\n * 701: An error occurs in opening the audio mixing file.\r\n */\r\n AudioMixingOpenError = 701,\r\n /**\r\n * 1014: Audio Device Module: a warning occurs in the playback device.\r\n */\r\n AdmRuntimePlayoutWarning = 1014,\r\n /**\r\n * 1016: Audio Device Module: a warning occurs in the recording device.\r\n */\r\n AdmRuntimeRecordingWarning = 1016,\r\n /**\r\n * 1019: Audio Device Module: no valid audio data is collected.\r\n */\r\n AdmRecordAudioSilence = 1019,\r\n /**\r\n * 1020: Audio Device Module: a playback device fails.\r\n */\r\n AdmPlaybackMalfunction = 1020,\r\n /**\r\n * 1021: Audio Device Module: a recording device fails.\r\n */\r\n AdmRecordMalfunction = 1021,\r\n /**\r\n * 1025: Audio Device Module: call is interrupted by system events such as phone call or siri etc.\r\n */\r\n AdmInterruption = 1025,\r\n /**\r\n * 1029: During a call, `AudioSessionCategory` should be set to `AVAudioSessionCategoryPlayAndRecord`, and the SDK monitors this value. If the `AudioSessionCategory` is set to other values, this warning code is triggered and the SDK will forcefully set it back to `AVAudioSessionCategoryPlayAndRecord`.\r\n *\r\n * @since v3.1.2\r\n */\r\n AdmCategoryNotPlayAndRecord = 1029,\r\n /**\r\n * 1031: Audio Device Module: the recorded audio is too low.\r\n */\r\n AdmRecordAudioLowlevel = 1031,\r\n /**\r\n * 1032: Audio Device Module: the playback audio is too low.\r\n */\r\n AdmPlayoutAudioLowlevel = 1032,\r\n /**\r\n * 1033: Audio Device Module: The recording device is busy.\r\n */\r\n AdmRecordIsOccupied = 1033,\r\n /**\r\n * 1040: Audio device module: An error occurs in the audio driver. Solutions:\r\n * - Restart your audio device.\r\n * - Restart your device where the app runs.\r\n * - Upgrade the sound card drive.\r\n *\r\n * @since v3.1.2.\r\n */\r\n AdmNoDataReadyCallback = 1040,\r\n /**\r\n * 1042: Audio device module: The audio recording device is different from the audio playback device, which may cause echoes problem. Agora recommends using the same audio device to record and playback audio.\r\n *\r\n * @since v3.1.2\r\n */\r\n AdmInconsistentDevices = 1042,\r\n /**\r\n * 1051: Audio Device Module: Howling is detected.\r\n */\r\n ApmHowling = 1051,\r\n /**\r\n * 1052: Audio Device Module: The device is in the glitch state.\r\n */\r\n AdmGlitchState = 1052,\r\n /**\r\n * 1053: Audio processing module: A residual echo is detected, which may be caused by the belated scheduling of system threads or the signal overflow.\r\n */\r\n ApmResidualEcho = 1053,\r\n /**\r\n * 1610: Super-resolution warning: The origin resolution of the remote video is beyond the range where the super-resolution algorithm can be applied.\r\n */\r\n SuperResolutionStreamOverLimitation = 1610,\r\n /**\r\n * 1611: Super-resolution warning: Another user is already using the super-resolution algorithm.\r\n */\r\n SuperResolutionUserCountOverLimitation = 1611,\r\n /**\r\n * 1612: Super-resolution warning: The device does not support the super-resolution algorithm.\r\n */\r\n SuperResolutionDeviceNotSupported = 1612,\r\n}\r\n\r\n/**\r\n * The audio channel of the sound.\r\n */\r\nexport enum AudioChannel {\r\n /**\r\n * 0: (Default) Supports dual channels. Depends on the upstream of the host.\r\n */\r\n Channel0 = 0,\r\n /**\r\n * 1: The audio stream of the host uses the FL audio channel. If the upstream of the host uses multiple audio channels, these channels will be mixed into mono first.\r\n */\r\n Channel1 = 1,\r\n /**\r\n * 2: The audio stream of the host uses the FC audio channel. If the upstream of the host uses multiple audio channels, these channels will be mixed into mono first.\r\n */\r\n Channel2 = 2,\r\n /**\r\n * 3: The audio stream of the host uses the FR audio channel. If the upstream of the host uses multiple audio channels, these channels will be mixed into mono first.\r\n */\r\n Channel3 = 3,\r\n /**\r\n * 4: The audio stream of the host uses the BL audio channel. If the upstream of the host uses multiple audio channels, these channels will be mixed into mono first.\r\n */\r\n Channel4 = 4,\r\n /**\r\n * 5: The audio stream of the host uses the BR audio channel. If the upstream of the host uses multiple audio channels, these channels will be mixed into mono first.\r\n */\r\n Channel5 = 5,\r\n}\r\n\r\n/**\r\n * Video codec types.\r\n */\r\nexport enum VideoCodecType {\r\n /**\r\n * 1: Standard VP8.\r\n */\r\n VP8 = 1,\r\n /**\r\n * 2: Standard H264.\r\n */\r\n H264 = 2,\r\n /**\r\n * 3: Enhanced VP8.\r\n */\r\n EVP = 3,\r\n /**\r\n * 4: Enhanced H264.\r\n */\r\n E264 = 4,\r\n}\r\n\r\n/**\r\n * The publishing state.\r\n *\r\n * @since v3.1.2.\r\n */\r\nexport enum StreamPublishState {\r\n /**\r\n * 0: The initial publishing state after joining the channel.\r\n */\r\n Idle = 0,\r\n /**\r\n * 1: Fails to publish the local stream. Possible reasons:\r\n * - The local user calls [`muteLocalAudioStream(true)`]{@link RtcEngine.muteLocalAudioStream} or [`muteLocalVideoStream(true)`]{@link RtcEngine.muteLocalVideoStream} to stop sending local streams.\r\n * - The local user calls [`disableAudio`]{@link RtcEngine.disableAudio} or [`disableVideo`]{@link RtcEngine.disableVideo} to disable the entire audio or video module.\r\n * - The local user calls [`enableLocalAudio(false)`]{@link RtcEngine.enableLocalAudio} or [`enableLocalVideo(false)`]{@link enableLocalVideo} to disable the local audio sampling or video capturing.\r\n * - The role of the local user is `Audience`.\r\n */\r\n NoPublished = 1,\r\n /**\r\n * 2: Publishing.\r\n */\r\n Publishing = 2,\r\n /**\r\n * 3: Publishes successfully.\r\n */\r\n Published = 3,\r\n}\r\n\r\n/**\r\n * The subscribing state.\r\n *\r\n * @since v3.1.2.\r\n */\r\nexport enum StreamSubscribeState {\r\n /**\r\n * 0: The initial subscribing state after joining the channel.\r\n */\r\n Idle = 0,\r\n /**\r\n * 1: Fails to subscribe to the remote stream. Possible reasons:\r\n * - The remote user:\r\n * - Calls [`muteLocalAudioStream(true)`]{@link RtcEngine.muteLocalAudioStream} or [`muteLocalVideoStream(true)`]{@link RtcEngine.muteLocalVideoStream} to stop sending local streams.\r\n * - The local user calls [`disableAudio`]{@link RtcEngine.disableAudio} or [`disableVideo`]{@link RtcEngine.disableVideo} to disable the entire audio or video module.\r\n * - The local user calls [`enableLocalAudio(false)`]{@link RtcEngine.enableLocalAudio} or [`enableLocalVideo(false)`]{@link enableLocalVideo} to disable the local audio sampling or video capturing.\r\n * - The role of the local user is `Audience`.\r\n * - The local user calls the following methods to stop receiving remote streams:\r\n * - Calls [`muteRemoteAudioStream(true)`]{@link RtcEngine.muteRemoteAudioStream}, [`muteAllRemoteAudioStreams(true)`]{@link RtcEngine.muteAllRemoteAudioStreams}, or [`setDefaultMuteAllRemoteAudioStreams(true)`]{@link RtcEngine.setDefaultMuteAllRemoteAudioStreams} to stop receiving remote audio streams.\r\n * - Calls [`muteRemoteVideoStream(true)`]{@link RtcEngine.muteRemoteVideoStream}, [`muteAllRemoteVideoStreams(true)`]{@link RtcEngine.muteAllRemoteVideoStreams}, or [`setDefaultMuteAllRemoteVideoStreams(true)`]{@link RtcEngine.setDefaultMuteAllRemoteVideoStreams} to stop receiving remote video streams.\r\n */\r\n NoSubscribed = 1,\r\n /**\r\n * 2: Subscribing.\r\n */\r\n Subscribing = 2,\r\n /**\r\n * 3: Subscribes to and receives the remote stream successfully.\r\n */\r\n Subscribed = 3,\r\n}\r\n\r\n/**\r\n * Events during the RTMP or RTMPS streaming.\r\n */\r\nexport enum RtmpStreamingEvent {\r\n /**\r\n * 1: An error occurs when you add a background image or a watermark image to the RTMP or RTMPS stream.\r\n */\r\n FailedLoadImage = 1,\r\n /**\r\n * The streaming URL is already being used for CDN live streaming. If you want to start new streaming, use a new streaming URL.\r\n *\r\n * @since v3.4.5\r\n */\r\n UrlAlreadyInUse = 2,\r\n /**\r\n * 3: The feature is not supported.\r\n *\r\n * @since v3.6.2\r\n */\r\n AdvancedFeatureNotSupport = 3,\r\n /**\r\n * 4: Reserved.\r\n */\r\n RequestTooOften = 4,\r\n}\r\n\r\n/**\r\n * Audio session restriction.\r\n */\r\nexport enum AudioSessionOperationRestriction {\r\n /**\r\n * No restriction, the SDK has full control of the audio session operations.\r\n */\r\n None = 0,\r\n /**\r\n * The SDK does not change the audio session category.\r\n */\r\n SetCategory = 1,\r\n /**\r\n * The SDK does not change any setting of the audio session (category, mode, categoryOptions).\r\n */\r\n ConfigureSession = 1 << 1,\r\n /**\r\n * The SDK keeps the audio session active when leaving a channel.\r\n */\r\n DeactivateSession = 1 << 2,\r\n /**\r\n * The SDK does not configure the audio session anymore.\r\n */\r\n All = 1 << 7,\r\n}\r\n\r\n/**\r\n * The options for SDK preset audio effects.\r\n */\r\nexport enum AudioEffectPreset {\r\n /**\r\n * Turn off audio effects and use the original voice.\r\n */\r\n AudioEffectOff = 0x00000000,\r\n\r\n /**\r\n * An audio effect typical of a KTV venue.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling setAudioProfile and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n RoomAcousticsKTV = 0x02010100,\r\n /**\r\n * An audio effect typical of a concert hall.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n RoomAcousticsVocalConcert = 0x02010200,\r\n\r\n /**\r\n * An audio effect typical of a recording studio.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n RoomAcousticsStudio = 0x02010300,\r\n\r\n /**\r\n * An audio effect typical of a vintage phonograph.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n RoomAcousticsPhonograph = 0x02010400,\r\n\r\n /**\r\n * A virtual stereo effect that renders monophonic audio as stereo audio.\r\n *\r\n * **Note**\r\n *\r\n * Call `setAudioProfile` and set the profile parameter to `MusicStandardStereo(3)` or `MusicHighQualityStereo(5)`\r\n * before setting this enumerator; otherwise, the enumerator setting does not take effect.\r\n */\r\n RoomAcousticsVirtualStereo = 0x02010500,\r\n\r\n /**\r\n * A more spatial audio effect.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n RoomAcousticsSpacial = 0x02010600,\r\n\r\n /**\r\n * A more ethereal audio effect.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n RoomAcousticsEthereal = 0x02010700,\r\n\r\n /**\r\n * A 3D voice effect that makes the voice appear to be moving around the user.\r\n * The default cycle period of the 3D voice effect is 10 seconds. To change the cycle period, call `setAudioEffectParameters` after this method.\r\n *\r\n * **Note**\r\n *\r\n * - Call `setAudioProfile` and set the profile parameter to `MusicStandardStereo(3)` or `MusicHighQualityStereo(5)` before setting this enumerator;\r\n * otherwise, the enumerator setting does not take effect.\r\n * - If the 3D voice effect is enabled, users need to use stereo audio playback devices to hear the anticipated voice effect.\r\n */\r\n RoomAcoustics3DVoice = 0x02010800,\r\n\r\n /**\r\n * The voice of a middle-aged man.\r\n *\r\n * **Note**\r\n *\r\n * - Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.\r\n * - To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n VoiceChangerEffectUncle = 0x02020100,\r\n\r\n /**\r\n * The voice of an old man.\r\n *\r\n * **Note**\r\n *\r\n * - Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.\r\n * - To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n VoiceChangerEffectOldMan = 0x02020200,\r\n\r\n /**\r\n * The voice of a boy.\r\n *\r\n * **Note**\r\n *\r\n * - Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.\r\n * - To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n VoiceChangerEffectBoy = 0x02020300,\r\n\r\n /**\r\n * The voice of a young woman.\r\n *\r\n * **Note**\r\n *\r\n * - Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.\r\n * - To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n VoiceChangerEffectSister = 0x02020400,\r\n\r\n /**\r\n * The voice of a girl.\r\n *\r\n * **Note**\r\n *\r\n * - Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may not hear the anticipated voice effect.\r\n * - To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n VoiceChangerEffectGirl = 0x02020500,\r\n\r\n /**\r\n * The voice of Pig King, a character in Journey to the West who has a voice like a growling bear.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n VoiceChangerEffectPigKing = 0x02020600,\r\n\r\n /**\r\n * The voice of Hulk.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n VoiceChangerEffectHulk = 0x02020700,\r\n\r\n /**\r\n * An audio effect typical of R&B music.\r\n *\r\n * **Note**\r\n *\r\n * Call `setAudioProfile` and set the profile parameter to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator;\r\n * otherwise, the enumerator setting does not take effect.\r\n */\r\n StyleTransformationRnB = 0x02030100,\r\n\r\n /**\r\n * An audio effect typical of popular music.\r\n *\r\n * **Note**\r\n *\r\n * Call `setAudioProfile` and set the profile parameter to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator;\r\n * otherwise, the enumerator setting does not take effect.\r\n */\r\n StyleTransformationPopular = 0x02030200,\r\n\r\n /**\r\n * A pitch correction effect that corrects the user's pitch based on the pitch of the natural C major scale.\r\n * To change the basic mode and tonic pitch, call `setAudioEffectParameters` after this method.\r\n *\r\n * **Note**\r\n *\r\n * To achieve better audio effect quality, Agora recommends calling `setAudioProfile` and setting the profile parameter\r\n * to `MusicHighQuality(4)` or `MusicHighQualityStereo(5)` before setting this enumerator.\r\n */\r\n PitchCorrection = 0x02040100,\r\n}\r\n\r\n/**\r\n * The options for SDK preset voice beautifier effects.\r\n */\r\nexport enum VoiceBeautifierPreset {\r\n /**\r\n * Turn off voice beautifier effects and use the original voice.\r\n */\r\n VoiceBeautifierOff = 0x00000000,\r\n\r\n /**\r\n * A more magnetic voice.\r\n *\r\n * **Note**\r\n *\r\n * Agora recommends using this enumerator to process a male-sounding voice; otherwise, you may experience vocal distortion.\r\n */\r\n ChatBeautifierMagnetic = 0x01010100,\r\n\r\n /**\r\n * A fresher voice.\r\n *\r\n * **Note**\r\n *\r\n * Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.\r\n */\r\n ChatBeautifierFresh = 0x01010200,\r\n\r\n /**\r\n * A more vital voice.\r\n *\r\n * **Note**\r\n *\r\n * Agora recommends using this enumerator to process a female-sounding voice; otherwise, you may experience vocal distortion.\r\n */\r\n ChatBeautifierVitality = 0x01010300,\r\n\r\n /**\r\n * Singing beautifier effect.\r\n *\r\n * - If you call [`setVoiceBeautifierPreset(SingingBeautifier)`]{@link setVoiceBeautifierPreset}, you can beautify a male-sounding voice and add a reverberation effect that sounds like singing in a small room. Agora recommends not using `setVoiceBeautifierPreset(SingingBeautifier)` to process a female-sounding voice; otherwise, you may experience vocal distortion.\r\n * - If you call [`setVoiceBeautifierParameters(SINGING_BEAUTIFIER, param1, param2)`]{@link setVoiceBeautifierParameters}, you can beautify a male- or female-sounding voice and add a reverberation effect.\r\n *\r\n * @since v3.3.1\r\n */\r\n SingingBeautifier = 0x01020100,\r\n\r\n /**\r\n * A more vigorous voice.\r\n */\r\n TimbreTransformationVigorous = 0x01030100,\r\n\r\n /**\r\n * A deeper voice.\r\n */\r\n TimbreTransformationDeep = 0x01030200,\r\n\r\n /**\r\n * A mellower voice.\r\n */\r\n TimbreTransformationMellow = 0x01030300,\r\n\r\n /**\r\n * A falsetto voice.\r\n */\r\n TimbreTransformationFalsetto = 0x01030400,\r\n\r\n /**\r\n * A fuller voice.\r\n */\r\n TimbreTransformationFull = 0x01030500,\r\n\r\n /**\r\n * A clearer voice.\r\n */\r\n TimbreTransformationClear = 0x01030600,\r\n\r\n /**\r\n * A more resounding voice.\r\n */\r\n TimbreTransformationResounding = 0x01030700,\r\n\r\n /**\r\n * A more ringing voice.\r\n */\r\n TimbreTransformationRinging = 0x01030800,\r\n}\r\n\r\n/**\r\n * The latency level of an audience member in interactive live streaming.\r\n *\r\n * **Note**\r\n *\r\n * Takes effect only when the user role is `Broadcaster`.\r\n */\r\nexport enum AudienceLatencyLevelType {\r\n /**\r\n * 1: Low latency.\r\n */\r\n LowLatency = 1,\r\n\r\n /**\r\n * 2: (Default) Ultra low latency.\r\n */\r\n UltraLowLatency = 2,\r\n}\r\n\r\n/**\r\n * Log Level.\r\n *\r\n * @since v3.3.1.\r\n */\r\nexport enum LogLevel {\r\n /**\r\n * 0: Do not output any log.\r\n */\r\n None = 0x0000,\r\n /**\r\n * 0x0001: (Default) Output logs of the FATAL, ERROR, WARN and INFO level. We recommend setting your log filter as this level.\r\n */\r\n Info = 0x0001,\r\n /**\r\n * 0x0002: Output logs of the FATAL, ERROR and WARN level.\r\n */\r\n Warn = 0x0002,\r\n /**\r\n * 0x0004: Output logs of the FATAL and ERROR level.\r\n */\r\n Error = 0x0004,\r\n /**\r\n * 0x0008: Output logs of the FATAL level.\r\n */\r\n Fatal = 0x0008,\r\n}\r\n\r\n/**\r\n * Capture brightness level.\r\n *\r\n * @since v3.1.1.\r\n */\r\nexport enum CaptureBrightnessLevelType {\r\n /** -1: The SDK does not detect the brightness level of the video image. Wait a few seconds to get the brightness level from `CaptureBrightnessLevelType` in the next callback. */\r\n Invalid = -1,\r\n /** 0: The brightness level of the video image is normal. */\r\n Normal = 0,\r\n /** 1: The brightness level of the video image is too bright. */\r\n Bright = 1,\r\n /** 2: The brightness level of the video image is too dark. */\r\n Dark = 2,\r\n}\r\n\r\n/**\r\n * @ignore\r\n * The reason why the super-resolution algorithm is not successfully enabled.\r\n */\r\nexport enum SuperResolutionStateReason {\r\n /**\r\n * 0: The super-resolution algorithm is successfully enabled.\r\n */\r\n Success = 0,\r\n /**\r\n * 1: The origin resolution of the remote video is beyond the range where the super-resolution algorithm can be applied.\r\n */\r\n StreamOverLimitation = 1,\r\n /**\r\n * 2: Another user is already using the super-resolution algorithm.\r\n */\r\n UserCountOverLimitation = 2,\r\n /**\r\n * 3: The device does not support the super-resolution algorithm.\r\n */\r\n DeviceNotSupported = 3,\r\n}\r\n\r\n/**\r\n * @ignore\r\n *\r\n * The reason for the upload failure.\r\n *\r\n * @since v3.3.1.\r\n */\r\nexport enum UploadErrorReason {\r\n /**\r\n * 0: The log file is successfully uploaded.\r\n */\r\n Success = 0,\r\n /**\r\n * 1: Network error. Check the network connection and call [`uploadLogFile`]{@link uploadLogFile} again to upload the log file.\r\n */\r\n NetError = 1,\r\n /**\r\n * 2: An error occurs in the Agora server. Try uploading the log files later.\r\n */\r\n ServerError = 2,\r\n}\r\n\r\n/**\r\n * The cloud proxy type.\r\n *\r\n * @since v3.3.1\r\n */\r\nexport enum CloudProxyType {\r\n /**\r\n * 0: Automatic mode. In this mode, the SDK attempts a direct connection to SD-RTN™ and\r\n * automatically switches to TLS 443 if the attempt fails.\r\n * As of v3.6.2, the SDK has this mode enabled by default.\r\n */\r\n None = 0,\r\n /**\r\n * 1: The cloud proxy for the UDP protocol, that is, Force UDP cloud proxy mode.\r\n * In this mode, the SDK always transmits data over UDP.\r\n */\r\n UDP = 1,\r\n /**\r\n * 2: The cloud proxy for the TCP (encryption) protocol, that is, Force TCP cloud proxy mode.\r\n * In this mode, the SDK always transmits data over TLS 443.\r\n *\r\n * @since v3.6.2\r\n */\r\n TCP = 2,\r\n}\r\n\r\n/**\r\n * Quality of experience (QoE) of the local user when receiving a remote audio stream.\r\n *\r\n * @since v3.3.1\r\n */\r\nexport enum ExperienceQualityType {\r\n /**\r\n * 0: QoE of the local user is good.\r\n */\r\n Good = 0,\r\n /**\r\n * 1: QoE of the local user is poor.\r\n */\r\n Bad = 1,\r\n}\r\n\r\n/**\r\n * The reason for poor QoE of the local user when receiving a remote audio stream.\r\n *\r\n * @since v3.3.1\r\n */\r\nexport enum ExperiencePoorReason {\r\n /**\r\n * 0: No reason, indicating good QoE of the local user.\r\n */\r\n None = 0,\r\n /**\r\n * 1: The remote user's network quality is poor.\r\n */\r\n RemoteNetworkQualityPoor = 1,\r\n /**\r\n * 2: The local user's network quality is poor.\r\n */\r\n LocalNetworkQualityPoor = 2,\r\n /**\r\n * 4: The local user's Wi-Fi or mobile network signal is weak.\r\n */\r\n WirelessSignalPoor = 4,\r\n /**\r\n * 8: The local user enables both Wi-Fi and bluetooth, and their signals interfere with each other. As a result, audio transmission quality is undermined.\r\n */\r\n WifiBluetoothCoexist = 8,\r\n}\r\n\r\n/**\r\n * The options for SDK preset voice conversion effects.\r\n *\r\n * @since v3.3.1\r\n */\r\nexport enum VoiceConversionPreset {\r\n /**\r\n * 0: Turn off voice conversion effects and use the original voice.\r\n */\r\n Off = 0,\r\n /**\r\n * 50397440: A gender-neutral voice. To avoid audio distortion, ensure that you use this enumerator to process a female-sounding voice.\r\n */\r\n Neutral = 50397440,\r\n /**\r\n * 50397696: A sweet voice. To avoid audio distortion, ensure that you use this enumerator to process a female-sounding voice.\r\n */\r\n Sweet = 50397696,\r\n /**\r\n * 50397952: A steady voice. To avoid audio distortion, ensure that you use this enumerator to process a male-sounding voice.\r\n */\r\n Solid = 50397952,\r\n /**\r\n * 50397952: A deep voice. To avoid audio distortion, ensure that you use this enumerator to process a male-sounding voice.\r\n */\r\n Bass = 50397952,\r\n}\r\n\r\n/**\r\n * The type of the custom background image.\r\n */\r\nexport enum VirtualBackgroundSourceType {\r\n /**\r\n * (Default) The background image is a solid color.\r\n */\r\n Color = 1,\r\n /**\r\n * The background image is a file in PNG or JPG format.\r\n */\r\n Img = 2,\r\n /**\r\n * The background image is blurred.\r\n *\r\n * @since v3.5.2\r\n */\r\n Blur = 3,\r\n}\r\n\r\n/**\r\n * The reason why the virtual background is not successfully enabled or the message that confirms success.\r\n */\r\nexport enum VirtualBackgroundSourceStateReason {\r\n /**\r\n * The virtual background is successfully enabled.\r\n */\r\n Success = 0,\r\n /**\r\n * The custom background image does not exist. Please check the value of source in [`VirtualBackgroundSource`]{@link VirtualBackgroundSource}.\r\n */\r\n ImageNotExist = 1,\r\n /**\r\n * The color format of the custom background image is invalid. Please check the value of color in [`VirtualBackgroundSource`]{@link VirtualBackgroundSource}.\r\n */\r\n ColorFormatNotSupported = 2,\r\n /**\r\n * The device does not support using the virtual background.\r\n */\r\n DeviceNotSupported = 3,\r\n}\r\n\r\n/**\r\n * The information acquisition state, which is reported\r\n * in [`RequestAudioFileInfo`]{@link RequestAudioFileInfo}.\r\n *\r\n * @since v3.5.2\r\n */\r\nexport enum AudioFileInfoError {\r\n /** 0: Successfully get the information of an audio file.\r\n */\r\n Ok = 0,\r\n /** 1: Fail to get the information of an audio file.\r\n */\r\n Failure = 1,\r\n}\r\n\r\n/**\r\n * The channel mode, which is set in [`setAudioMixingDualMonoMode`]{@link setAudioMixingDualMonoMode}.\r\n *\r\n * @since v3.5.2\r\n */\r\nexport enum AudioMixingDualMonoMode {\r\n /**\r\n * 0: Original mode.\r\n */\r\n AUTO = 0,\r\n /**\r\n * 1: Left channel mode. This mode replaces the audio of the right channel\r\n * with the audio of the left channel, which means the user can only hear\r\n * the audio of the left channel.\r\n */\r\n L = 1,\r\n /**\r\n * 2: Right channel mode. This mode replaces the audio of the left channel with\r\n * the audio of the right channel, which means the user can only hear the audio\r\n * of the right channel.\r\n */\r\n R = 2,\r\n /**\r\n * 3: Mixed channel mode. This mode mixes the audio of the left channel and\r\n * the right channel, which means the user can hear the audio of the left\r\n * channel and the right channel at the same time.\r\n */\r\n MIX = 3,\r\n}\r\n\r\n/**\r\n * The degree of blurring applied to the custom background image. See\r\n *\r\n * @since v3.5.2\r\n */\r\nexport enum VirtualBackgroundBlurDegree {\r\n /**\r\n * 1: The degree of blurring applied to the custom background image is low.\r\n * The user can almost see the background clearly.\r\n */\r\n Low = 1,\r\n /**\r\n * The degree of blurring applied to the custom background image is medium.\r\n * It is difficult for the user to recognize details in the background.\r\n */\r\n Medium = 2,\r\n /**\r\n * (Default) The degree of blurring applied to the custom background image is high.\r\n * The user can barely see any distinguishing features in the background.\r\n */\r\n High = 3,\r\n}\r\n\r\n/** The video codec type of the output video stream.\r\n\r\n @since v3.2.0\r\n */\r\nexport enum VideoCodecTypeForStream {\r\n /** 1: (Default) H.264 */\r\n H264 = 1,\r\n /** 2: H.265 */\r\n H265 = 2,\r\n}\r\n\r\n/** The proxy type.\r\n *\r\n * @since v3.6.2\r\n */\r\nexport enum ProxyType {\r\n /** 0: Reserved for future use.\r\n */\r\n None = 0,\r\n /** 1: The cloud proxy for the UDP protocol, that is, Force UDP cloud proxy mode.\r\n * In this mode, the SDK always transmits data over UDP.\r\n */\r\n Udp = 1,\r\n /** 2: The cloud proxy for the TCP (encryption) protocol, that is, Force TCP cloud proxy mode.\r\n In this mode, the SDK always transmits data over TLS 443.\r\n */\r\n Tcp = 2,\r\n /** 3: Reserved for future use.\r\n */\r\n Local = 3,\r\n /** 4: Automatic mode. In this mode, the SDK attempts a direct connection to SD-RTN™ and automatically\r\n switches to TLS 443 if the attempt fails.\r\n */\r\n TcpAutoFallback = 4,\r\n}\r\n\r\n/** API for future use.\r\n * @ignore\r\n */\r\nexport enum ContentInspectResult {\r\n Neutral = 1,\r\n Sexy = 2,\r\n Porn = 3,\r\n}\r\n\r\n/** API for future use.\r\n * @ignore\r\n */\r\nexport enum WlAccReason {\r\n WeakSignal = 0,\r\n\r\n ChannelCongestion = 1,\r\n}\r\n\r\n/** API for future use.\r\n * @ignore\r\n */\r\nexport enum WlAccAction {\r\n CloseToWIFI = 0,\r\n\r\n ConnectSSID = 1,\r\n\r\n Check5G = 2,\r\n\r\n ModifySSID = 3,\r\n}\r\n\r\n/**\r\n * Reasons for a user role switch failure.\r\n *\r\n * @since v3.7.0\r\n */\r\nexport enum ClientRoleChangeFailedReason {\r\n /**\r\n * `1`: The number of hosts in the channel is already at the upper limit.\r\n *\r\n * **Note**\r\n * This enumerator is reported only when the support for 128 users is enabled.\r\n * The maximum number of hosts is based on the actual number of hosts configured when you enable\r\n * the 128-user feature.\r\n */\r\n TooManyBroadcasters = 1,\r\n\r\n /**\r\n * `2`: The request is rejected by the Agora server.\r\n * Agora recommends you prompt the user to try to switch their user role again.\r\n */\r\n NotAuthorized = 2,\r\n\r\n /**\r\n * `3`: The request is timed out.\r\n * Agora recommends you prompt the user to check the network connection and try to switch their user role again.\r\n */\r\n RequestTimeOut = 3,\r\n\r\n /**\r\n * `4`: he SDK connection fails.\r\n * You can use `reason` reported in the [`ConnectionStateChanged`]{@link RtcEngineEvents.ConnectionStateChanged} callback to troubleshoot the failure.\r\n */\r\n ConnectionFailed = 4,\r\n}\r\n/**\r\n * The content hint of the screen sharing.\r\n *\r\n * @since v3.7.0\r\n */\r\nexport enum VideoContentHint {\r\n /**\r\n * (Default) No content hint.\r\n */\r\n None = 0,\r\n /**\r\n * Motion-intensive content. Choose this option if you prefer smoothness or when you are sharing a video clip, movie, or video game.\r\n */\r\n Motion = 1,\r\n /**\r\n * Motionless content. Choose this option if you prefer sharpness or when you are sharing a picture, PowerPoint slide, or text.\r\n */\r\n Details = 2,\r\n}\r\n"],"mappings":"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CAAA6B,SAAA,0BAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS,CAATA,SAAS;EAATA,SAAS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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAvKA,IAwKYC,OAAO,GAAA7C,OAAA,CAAA6C,OAAA,0BAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAA,OAAPA,OAAO;AAAA;AAcnB;AACA;AACA;AAFA,IAGYC,eAAe,GAAA9C,OAAA,CAAA8C,eAAA,0BAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAfA,eAAe,CAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAe3B;AACA;AACA;AAFA,IAGYC,0BAA0B,GAAA/C,OAAA,CAAA+C,0BAAA,0BAA1BA,0BAA0B;EAA1BA,0BAA0B,CAA1BA,0BAA0B;EAA1BA,0BAA0B,CAA1BA,0BAA0B;EAA1BA,0BAA0B,CAA1BA,0BAA0B;EAAA,OAA1BA,0BAA0B;AAAA;AAuBtC;AACA;AACA;AAFA,IAGYC,2BAA2B,GAAAhD,OAAA,CAAAgD,2BAAA,0BAA3BA,2BAA2B;EAA3BA,2BAA2B,CAA3BA,2BAA2B;EAA3BA,2BAA2B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","ignoreList":[]} |