// Copyright © 2022 BytePlusRTC All rights reserved. // SPDX-License-Identifier: MIT import { String, List, int, float, Pair, Integer, double, long, View, ByteBuffer, Runnable, EGLContext, JSONObject, Surface, Boolean } from './types'; import { IMediaPlayerCustomSourceProvider } from './callback'; export declare enum CodecMode { CODEC_MODE_AUTO = 0, CODEC_MODE_HARDWARE = 1, CODEC_MODE_SOFTWARE = 2 } export declare enum MixedStreamAlternateImageFillMode { FIT = 0, FILL = 1 } export declare enum CapturePreference { AUTO = 0, MANUAL = 1, AUTO_PERFORMANCE = 2 } export declare class Layout { getAppData(): String; setAppData(appData: String): void; getBackgroundColor(): String; setBackgroundColor(backgroundColor: String): void; } export declare enum AudioProcessorMethod { AUDIO_FRAME_PROCESSOR_RECORD = 0, AUDIO_FRAME_PROCESSOR_PLAYBACK = 1, AUDIO_FRAME_PROCESSOR_REMOTE_USER = 2, AUDIO_FRAME_PROCESSOR_EAR_MONITOR = 3, AUDIO_FRAME_PROCESSOR_SCREEN = 4 } export declare enum VideoSourceType { VIDEO_SOURCE_TYPE_EXTERNAL = 0, VIDEO_SOURCE_TYPE_INTERNAL = 1, VIDEO_SOURCE_TYPE_ENCODED_WITH_SIMULCAST = 2, VIDEO_SOURCE_TYPE_ENCODED_WITHOUT_SIMULCAST = 3 } export declare enum MessageConfig { RELIABLE_ORDERED = 0, UNRELIABLE_ORDERED = 1, UNRELIABLE_UNORDERED = 2 } export declare class ProblemFeedbackInfo { constructor(problemDesc: String); constructor(); problemDesc: String; roomInfo: List; } export declare class ExpressionDetectResult { static readonly MAX_COUNT = 10; detectResult: int; faceCount: int; } export declare enum MediaDeviceType { MEDIA_DEVICE_TYPE_AUDIO_UNKNOWN = -1, MEDIA_DEVICE_TYPE_AUDIO_RENDER_DEVICE = 0, MEDIA_DEVICE_TYPE_AUDIO_CAPTURE_DEVICE = 1, MEDIA_DEVICE_TYPE_VIDEO_RENDER_DEVICE = 2, MEDIA_DEVICE_TYPE_VIDEO_CAPTURE_DEVICE = 3, MEDIA_DEVICE_TYPE_SCREEN_VIDEO_CAPTURE_DEVICE = 4, MEDIA_DEVICE_TYPE_SCREEN_AUDIO_CAPTURE_DEVICE = 5 } export declare class UserInfo { constructor(uid: String, extraInfo: String); uid: String; extraInfo: String; } export declare enum ForwardStreamEvent { FORWARD_STREAM_EVENT_DISCONNECTED = 0, FORWARD_STREAM_EVENT_CONNECTED = 1, FORWARD_STREAM_EVENT_INTERRUPT = 2, FORWARD_STREAM_EVENT_DST_ROOM_UPDATED = 3, FORWARD_STREAM_EVENT_UN_EXPECT_API_CALL = 4 } export declare enum SubscribeMediaType { NONE = 0, AUDIO_ONLY = 1, VIDEO_ONLY = 2, AUDIO_AND_VIDEO = 3 } export declare enum ConnectionState { CONNECTION_STATE_DISCONNECTED = 1, CONNECTION_STATE_CONNECTING = 2, CONNECTION_STATE_CONNECTED = 3, CONNECTION_STATE_RECONNECTING = 4, CONNECTION_STATE_RECONNECTED = 5, CONNECTION_STATE_LOST = 6, CONNECTION_STATE_FAILED = 7 } export declare enum RecordingType { RECORD_AUDIO_ONLY = 0, RECORD_VIDEO_ONLY = 1, RECORD_VIDEO_AND_AUDIO = 2 } export declare class AudioConfig { constructor(); setCodec(codec: AudioCodecType): this; setKBitRate(kBitRate: int): this; setSampleRate(sampleRate: int): this; setChannels(channels: int): this; setAacProfile(aacProfile: AACProfile): this; } export declare enum MixedStreamPushMode { ON_STREAM = 0, ON_START_REQUEST = 1 } export declare enum EarMonitorMode { EAR_MONITOR_MODE_OFF = 0, EAR_MONITOR_MODE_ON = 1 } export declare enum FirstFrameSendState { FIRST_FRAME_SEND_STATE_SENDING = 0, FIRST_FRAME_SEND_STATE_SENT = 1, FIRST_FRAME_SEND_STAT_END = 2 } export declare enum MixedStreamMediaType { MIXED_STREAM_MEDIA_TYPE_AUDIO_AND_VIDEO = 0, MIXED_STREAM_MEDIA_TYPE_AUDIO_ONLY = 1, MIXED_STREAM_MEDIA_TYPE_VIDEO_ONLY = 2 } export declare enum SubtitleMode { SUBTITLE_MODE_RECOGINTE = 0, SUBTITLE_MODE_TRANSLATION = 1 } export declare class SourceWantedData { constructor(); width: int; height: int; frameRate: int; } export declare enum VoiceChangerType { VOICE_CHANGER_ORIGINAL = 0, VOICE_CHANGER_GIANT = 1, VOICE_CHANGER_CHIPMUNK = 2, VOICE_CHANGER_MINIONST = 3, VOICE_CHANGER_VIBRATO = 4, VOICE_CHANGER_ROBOT = 5 } export declare enum VideoCodecType { CODEC_TYPE_AUTO = 0, CODEC_TYPE_H264 = 1, CODEC_TYPE_BYTEVC1 = 2 } export declare enum EffectBeautyMode { WHITE = 0, SMOOTH = 1, SHARPEN = 2, CLEAR = 3 } export declare class Orientation { constructor(x: float, y: float, z: float); x: float; y: float; z: float; } export declare enum MusicHotType { CONTENT_CENTER = 1, PROJECT = 2 } export declare enum MixedStreamAudioCodecType { MIXED_STREAM_AUDIO_CODEC_TYPE_AAC = "AAC" } export declare class VideoStreamDescription { constructor(width: int, height: int, frameRate: int, maxKbps: int, minKbps: int); constructor(width: int, height: int, frameRate: int, maxKbps: int, minKbps: int, codecName: int, codecMode: int, encodePrefer: int); constructor(); videoSize: Pair; frameRate: int; maxKbps: int; minKbps: int; encodePreference: EncoderPreference; maxQp: int; minQp: int; } export declare enum LocalLogLevel { INFO = 0, WARNING = 1, ERROR = 2, NONE = 3 } export declare enum ForwardStreamState { FORWARD_STREAM_STATE_IDLE = 0, FORWARD_STREAM_STATE_SUCCESS = 1, FORWARD_STREAM_STATE_FAILURE = 2 } export declare enum TorchState { TORCH_STATE_OFF = 0, TORCH_STATE_ON = 1 } export declare enum VideoConfig$VideoCodecType { VIDEO_CODEC_TYPE_H264 = "H264", VIDEO_CODEC_TYPE_BYTEVC1 = "ByteVC1" } export declare class RTCASRConfig { constructor(userId: String, accessToken: String, secretKey: String, authorizationType: ASRAuthorizationType, cluster: String, appId: String); userId: String; accessToken: String; secretKey: String; authorizationType: ASRAuthorizationType; cluster: String; appId: String; } export declare enum RTCASRErrorCode { NETWORK_INTERRUPTED = -1, ALREADY_STARTED = -2, TOKEN_EMPTY = -3, SIGNATURE_KEY_EMPTY = -4, USERID_NULL = -5, APPID_NULL = -6, CLUSTER_NULL = -7, OPERATION_DENIED = -8 } export declare class ForwardStreamEventInfo { constructor(roomId: String, event: ForwardStreamEvent); roomId: String; event: ForwardStreamEvent; } export declare class RecordingConfig { constructor(); constructor(dirPath: String, recordingFileType: RecordingFileType); dirPath: String; recordingFileType: RecordingFileType; } export declare class VideoCaptureConfig { constructor(w: int, h: int, fps: int); constructor(); capturePreference: CapturePreference; width: int; height: int; frameRate: int; } export declare class HumanOrientation { constructor(); constructor(forward: Orientation, right: Orientation, up: Orientation); forward: Orientation; right: Orientation; up: Orientation; } export declare class LocalAudioPropertiesInfo { constructor(streamIndex: StreamIndex, audioPropertiesInfo: AudioPropertiesInfo); streamIndex: StreamIndex; audioPropertiesInfo: AudioPropertiesInfo; } export declare class DataParam { setImageWidth(imageWidth: int): DataParam; setImageHeight(imageHeight: int): DataParam; } export declare enum ByteRTCStreamMixingEvent { STREAM_MIXING_START = 1, STREAM_MIXING_START_SUCCESS = 2, STREAM_MIXING_START_FAILED = 3, STREAM_MIXING_UPDATE = 4, STREAM_MIXING_UPDATE_SUCCESS = 5, STREAM_MIXING_UPDATE_FAILED = 6, STREAM_MIXING_STOP = 7, STREAM_MIXING_STOP_SUCCESS = 8, STREAM_MIXING_STOP_FAILED = 9, STREAM_MIXING_CHANGE_MIX_TYPE = 10, STREAM_MIXING_FIRST_AUDIO_FRAME_BY_CLIENT_MIX = 11, STREAM_MIXING_FIRST_VIDEO_FRAME_BY_CLIENT_MIX = 12, STREAM_MIXING_UPDATE_TIMEOUT = 13, STREAM_MIXING_START_TIMEOUT = 14, STREAM_MIXING_REQUEST_PARAM_ERROR = 15, STREAM_MIXING_MIX_IMAGE_EVENT = 16 } export declare enum AudioAlignmentMode { AUDIO_ALIGNMENT_MODE_OFF = 0, AUDIO_ALIGNMENT_MODE_AUDIOMIXING = 1 } export declare enum FallbackOrRecoverReason { FALLBACK_OR_RECOVER_REASON_UNKNOWN = -1, FALLBACK_OR_RECOVER_REASON_SUBSCRIBE_FALLBACK_BY_BANDWIDTH = 0, FALLBACK_OR_RECOVER_REASON_SUBSCRIBE_FALLBACK_BY_PERFORMANCE = 1, FALLBACK_OR_RECOVER_REASON_SUBSCRIBE_RECOVER_BY_BANDWIDTH = 2, FALLBACK_OR_RECOVER_REASON_SUBSCRIBE_RECOVER_BY_PERFORMANCE = 3, FALLBACK_OR_RECOVER_REASON_PUBLISH_FALLBACK_BY_BANDWIDTH = 4, FALLBACK_OR_RECOVER_REASON_PUBLISH_FALLBACK_BY_PERFORMANCE = 5, FALLBACK_OR_RECOVER_REASON_PUBLISH_RECOVER_BY_BANDWIDTH = 6, FALLBACK_OR_RECOVER_REASON_PUBLISH_RECOVER_BY_PERFORMANCE = 7 } export declare enum SEIStreamUpdateEvent { STREAM_ADD = 0, STREAM_REMOVE = 1 } export declare class RemoteStreamStats { constructor(); uid: String; audioStats: RemoteAudioStats; videoStats: RemoteVideoStats; isScreen: boolean; txQuality: int; rxQuality: int; } export declare enum MediaDeviceWarning { MEDIA_DEVICE_WARNING_OK = 0, MEDIA_DEVICE_WARNING_OPERATION_DENIED = 1, MEDIA_DEVICE_WARNING_CAPTURE_SILENCE = 2, MEDIA_DEVICE_WARNING_ANDROID_SYS_SILENCE = 3, MEDIA_DEVICE_WARNING_ANDROID_SYS_SILENCE_DISAPPEAR = 4, MEDIA_DEVICE_WARNING_DETECT_CLIPPING = 10, MEDIA_DEVICE_WARNING_DETECT_LEAK_ECHO = 11, MEDIA_DEVICE_WARNING_DETECT_LOW_SNR = 12, MEDIA_DEVICE_WARNING_DETECT_INSERT_SILENCE = 13, MEDIA_DEVICE_WARNING_CAPTURE_DETECT_SILENCE = 14, MEDIA_DEVICE_WARNING_CAPTURE_DETECT_SILENCE_DISAPPEAR = 15, MEDIA_DEVICE_WARNING_CAPTURE_DETECT_HOWLING = 16, MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_INVALID_SCENARIO = 20, MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_NOT_EXISTS = 21, MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_FAILED_BY_PRIORITY = 22, MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_NOT_VOIP_MODE = 23, MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_DEVICE_NOT_START = 24 } export declare class RemoteVideoRenderConfig { constructor(); renderMode: int; backgroundColor: int; renderRotation: VideoRotation; } export declare enum AudioProfileType { AUDIO_PROFILE_DEFAULT = 0, AUDIO_PROFILE_FLUENT = 1, AUDIO_PROFILE_STANDARD = 2, AUDIO_PROFILE_HD = 3, AUDIO_PROFILE_STANDARD_STEREO = 4, AUDIO_PROFILE_HD_MONO = 5 } export declare enum CameraId { CAMERA_ID_FRONT = 0, CAMERA_ID_BACK = 1, CAMERA_ID_INVALID = 3 } export declare class SingScoringRealtimeInfo { static create(currentPosition: int, userPitch: int, standardPitch: int, sentenceIndex: int, sentenceScore: int, totalScore: int, averageScore: int): SingScoringRealtimeInfo; constructor(currentPosition: int, userPitch: int, standardPitch: int, sentenceIndex: int, sentenceScore: int, totalScore: int, averageScore: int); currentPosition: int; userPitch: int; standardPitch: int; sentenceIndex: int; sentenceScore: int; totalScore: int; averageScore: int; } export declare enum VideoEncoderConfig$CodecMode { CODEC_MODE_AUTO = 0, CODEC_MODE_HARDWARE = 1, CODEC_MODE_SOFTWARE = 2 } export declare enum RemoteVideoRenderPosition { AFTER_DECODER = 0, AFTER_POST_PROCESS = 1 } export declare enum TranscoderLayoutRegionType { LAYOUT_REGION_TYPE_VIDEO_STREAM = 0, LAYOUT_REGION_TYPE_IMAGE = 1 } export declare class AudioEffectPlayerConfig { constructor(type: AudioMixingType, playCount: int, startPos: int, pitch: int); constructor(); type: AudioMixingType; playCount: int; startPos: int; pitch: int; } export declare class MixedStreamLayoutRegionImageWaterMarkConfig { constructor(width: int, height: int); setImageHeight(imageHeight: int): this; getImageHeight(): int; setImageWidth(imageWidth: int): this; getImageWidth(): int; } export declare enum LocalVideoStreamError { LOCAL_VIDEO_STREAM_ERROR_OK = 0, LOCAL_VIDEO_STREAM_ERROR_FAILURE = 1, LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION = 2, LOCAL_VIDEO_STREAM_ERROR_DEVICE_BUSY = 3, LOCAL_VIDEO_STREAM_ERROR_DEVICE_NOT_FOUND = 4, LOCAL_VIDEO_STREAM_ERROR_CAPTURE_FAILURE = 5, LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE = 6, LOCAL_VIDEO_STREAM_ERROR_DEVICE_DISCONNECTED = 7 } export declare class NetworkQualityStats { constructor(uid: String, lost: double, rtt: int, bandwidth: int, txQuality: int, rxQuality: int); uid: String; fractionLost: double; rtt: int; totalBandwidth: int; txQuality: int; rxQuality: int; } export declare enum UserVisibilityChangeError { OK = 0, UNKNOWN = 1, TOO_MANY_VISIBLE_USER = 2 } export declare enum PublishFallbackOption { DISABLE = 0, SIMULCAST_SMALL_VIDEO_ONLY = 1 } export declare enum LocalAudioStreamError { LOCAL_AUDIO_STREAM_ERROR_OK = 0, LOCAL_AUDIO_STREAM_ERROR_FAILURE = 1, LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSION = 2, LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURE = 4, LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURE = 5, LOCAL_AUDIO_STREAM_ERROR_NO_RECORDING_DEVICE = 6 } export declare class SubtitleMessage { static create(userId: String, text: String, language: String, mode: int, sequence: int, definite: boolean): SubtitleMessage; constructor(userId: String, text: String, language: String, mode: SubtitleMode, sequence: int, definite: boolean); userId: String; text: String; language: String; mode: SubtitleMode; sequence: int; definite: boolean; } export declare class RecordingInfo { constructor(filePath: String, videoCodecType: VideoCodecType, width: int, height: int); filePath: String; videoCodecType: VideoCodecType; width: int; height: int; } export declare class AudioMixingConfig { constructor(type: AudioMixingType, playCount: int, position: int, progressInterval: long); constructor(type: AudioMixingType, playCount: int); type: AudioMixingType; playCount: int; position: int; callbackOnProgressInterval: long; syncProgressToRecordFrame: boolean; } export declare enum SyncInfoStreamType { SYNC_INFO_STREAM_TYPE_AUDIO = 0 } export declare enum MixedStreamAudioProfile { MIXED_STREAM_AUDIO_PROFILE_LC = "LC", MIXED_STREAM_AUDIO_PROFILE_HEV1 = "HEv1", MIXED_STREAM_AUDIO_PROFILE_HEV2 = "HEv2" } export declare class RTCRoomStats { constructor(); totalDuration: int; txBytes: long; rxBytes: long; txKBitRate: int; rxKBitRate: int; txAudioKBitRate: int; rxAudioKBitRate: int; txVideoKBitRate: int; rxVideoKBitRate: int; txScreenKBitRate: int; rxScreenKBitRate: int; users: int; cpuTotalUsage: double; cpuAppUsage: double; txLostrate: double; rxLostrate: double; rtt: int; txCellularKBitrate: int; rxCellularKBitrate: int; reset(): void; } export declare enum AudioTrackType { ORIGINAL = 1, ACCOMPANY = 2 } export declare class ProblemFeedbackRoomInfo { constructor(roomId: String, userId: String); constructor(); roomId: String; userId: String; } export declare enum AudioSourceType { AUDIO_SOURCE_TYPE_EXTERNAL = 0, AUDIO_SOURCE_TYPE_INTERNAL = 1 } export declare enum PerformanceAlarmMode { NORMAL = 0, SIMULCAST = 1 } export declare enum RecordingErrorCode { RECORDING_ERROR_CODE_OK = 0, RECORDING_ERROR_CODE_NO_PERMISSION = -1, RECORDING_ERROR_CODE_NOT_SUPPORT = -2, RECORDING_ERROR_CODE_NO_OTHER = -3 } export declare enum EchoTestResult { ECHO_TEST_SUCCESS = 0, ECHO_TEST_TIMEOUT = 1, ECHO_TEST_INTERVAL_SHORT = 2, ECHO_TEST_AUDIO_DEVICE_ERROR = 3, ECHO_TEST_VIDEO_DEVICE_ERROR = 4, ECHO_TEST_AUDIO_RECEIVE_ERROR = 5, ECHO_TEST_VIDEO_RECEIVE_ERROR = 6, ECHO_TEST_INTERNAL_ERROR = 7 } export declare class NetworkTimeInfo { timestamp: long; } export declare enum RemoteMirrorType { NONE = 0, RENDER = 1 } export declare enum PublishStateChangeReason { PUBLISH = 0, UNPUBLISH = 1, NO_PUBLISH_PERMISSION = 2, OVER_STREAM_PUBLISH_LIMIT = 3, MULTIROOM_UNPUBLISH_FAILED = 4, PUBLISH_STREAM_FAILED = 5, PUBLISH_STREAM_FORBIDEN = 6, USER_IN_PUBLISH = 7 } export declare enum PublishState { /** {en} * @brief Successfully published. * */ PUBLISHED = 0, /** {en} * @brief Failed to publish. * */ UNPUBLISHED = 1 } export declare enum SubscribeStateChangeReason { SUBSCRIBE = 0, UNSUBSCRIBE = 1, REMOTE_PUBLISH = 2, REMOTE_UNPUBLISH = 3, STREAM_FAILED_5XX = 4, STREAM_FAILED_404 = 5, OVER_STREAM_SUBSCRIBE_LIMIT = 6, NO_SUBSCRIBE_PERMISSION = 7 } export declare enum SubscribeState { /** {en} * @brief Successfully subscribed. * */ SUBSCRIBED = 0, /** {en} * @brief Failed to subscribe. * */ UNSUBSCRIBED = 1 } export declare class VirtualBackgroundSource { sourceType: VirtualBackgroundSourceType; sourceColor: int; sourcePath: String; } export declare class MixedStreamClientMixConfig { setVideoFormat(videoFormat: MixedStreamClientMixVideoFormat): this; getVideoFormat(): MixedStreamClientMixVideoFormat; setUseAudioMixer(useAudioMixer: boolean): this; getUseAudioMixer(): boolean; } export declare class PublicStreaming { static readonly ACTION_START = "started"; static readonly ACTION_CHANGED = "layoutChanged"; static readonly ACTION_STOPPED = "stopped"; static getDefualtPublicStreaming(): PublicStreaming; setRoomId(roomId: String): void; setAction(action: String): void; setLayout(layout: Layout): void; getLayout(): Layout; } export declare enum StreamIndex { STREAM_INDEX_MAIN = 0, STREAM_INDEX_SCREEN = 1 } export declare enum RemoteAudioStateChangeReason { REMOTE_AUDIO_STATE_CHANGE_REASON_INTERNAL = 0, REMOTE_AUDIO_STATE_CHANGE_REASON_NETWORK_CONGESTION = 1, REMOTE_AUDIO_STATE_CHANGE_REASON_NETWORK_RECOVERY = 2, REMOTE_AUDIO_STATE_CHANGE_REASON_LOCAL_MUTED = 3, REMOTE_AUDIO_STATE_CHANGE_REASON_LOCAL_UNMUTED = 4, REMOTE_AUDIO_STATE_CHANGE_REASON_REMOTE_MUTED = 5, REMOTE_AUDIO_STATE_CHANGE_REASON_REMOTE_UNMUTED = 6, REMOTE_AUDIO_STATE_CHANGE_REASON_REMOTE_OFFLINE = 7 } export declare enum PlayerError { OK = 0, FORMAT_NOT_SUPPORT = 1, INVALID_PATH = 2, INVALID_STATE = 3, INVALID_POSITION = 4, INVALID_VOLUME = 5, INVALID_PITCH = 6, INVALID_AUDIO_TRACK_INDEX = 7, INVALID_PLAYBACK_SPEED = 8, INVALID_EFFECT_ID = 9 } export declare enum ReturnStatus { RETURN_STATUS_SUCCESS = 0, RETURN_STATUS_FAILURE = -1, RETURN_STATUS_PARAMETER_ERR = -2, RETURN_STATUS_WRONG_STATE = -3, RETURN_STATUS_HAS_IN_ROOM = -4, RETURN_STATUS_HAS_IN_LOGIN = -5, RETURN_STATUS_HAS_IN_ECHO_TEST = -6, RETURN_STATUS_NEITHER_VIDEO_NOR_AUDIO = -7, RETURN_STATUS_ROOMID_IN_USE = -8, RETURN_STATUS_SCREEN_NOT_SUPPORT = -9, RETURN_STATUS_NOT_SUPPORT = -10, RETURN_STATUS_RESOURCE_OVERFLOW = -11, RETURN_STATUS_VIDEO_NOT_SUPPORT = -12, RETURN_STATUS_AUDIO_NO_FRAME = -101, RETURN_STATUS_AUDIO_NOT_IMPLEMENTED = -102, RETURN_STATUS_AUDIO_NO_PERMISSION = -103, RETURN_STATUS_AUDIO_DEVICE_NOT_EXISTS = -104, RETURN_STATUS_AUDIO_DEVICE_FORMAT_NOT_SUPPORT = -105, RETURN_STATUS_AUDIO_DEVICE_NO_DEVICE = -106, RETURN_STATUS_AUDIO_DEVICE_CAN_NOT_USE = -107, RETURN_STATUS_AUDIO_DEVICE_INIT_FAILED = -108, RETURN_STATUS_AUDIO_DEVICE_START_FAILED = -109, RETURN_STATUS_NATIVE_IN_VALID = -201, RETURN_STATUS_VIDEO_TIMESTAMP_WARNING = -202 } export declare enum VideoStreamDescription$VideoCodecType { CODEC_TYPE_AUTO = 0, CODEC_TYPE_H264 = 1, CODEC_TYPE_BYTEVC1 = 2 } export declare class ScreenVideoEncoderConfig { constructor(width: int, height: int, frameRate: int, maxBitrate: int, minBitrate: int); constructor(width: int, height: int, frameRate: int, maxBitrate: int, minBitrate: int, codecName: int, codecMode: int, encodePrefer: int); constructor(); width: int; height: int; frameRate: int; maxBitrate: int; minBitrate: int; encodePreference: EncoderPreference; } export declare class MediaPlayerConfig { constructor(type: AudioMixingType, playCount: int); constructor(type: AudioMixingType, playCount: int, startPos: int, autoPlay: boolean, progressInterval: long, syncProgressToRecordFrame: boolean); constructor(); type: AudioMixingType; playCount: int; startPos: int; callbackOnProgressInterval: long; syncProgressToRecordFrame: boolean; autoPlay: boolean; } export declare enum VideoPictureType { VIDEO_PICTURE_TYPE_UNKNOWN = 0, VIDEO_PICTURE_TYPE_I = 1, VIDEO_PICTURE_TYPE_P = 2, VIDEO_PICTURE_TYPE_B = 3 } export declare enum ColorSpace { UNKNOWN = 0, BT601_LIMITED_RANGE = 1, BT601_FULL_RANGE = 2, BT709_LIMITED_RANGE = 3, BT709_FULL_RANGE = 4 } export declare class AudioPropertiesInfo { static readonly SPECTRUM_SIZE = 257; constructor(linearVolume: int, nonlinearVolume: int, spectrum: Array, vad: int); linearVolume: int; nonlinearVolume: int; spectrum: Array; vad: int; voicePitch: double; } export declare enum RemoteVideoState { REMOTE_VIDEO_STATE_STOPPED = 0, REMOTE_VIDEO_STATE_STARTING = 1, REMOTE_VIDEO_STATE_DECODING = 2, REMOTE_VIDEO_STATE_FROZEN = 3 } export declare class VideoEncoderConfiguration { dimensions: VideoDimensions; kBitrate: int; kMinBitrate: int; orientationMode: OrientationMode; } export declare class PixelFormat { static readonly Original = 0; static readonly I420 = 1; static readonly RGBA = 5; } export declare enum HardwareEchoDetectionResult { HARDWARE_ECHO_RESULT_CANCELED = 0, HARDWARE_ECHO_RESULT_UNKNOWN = 1, HARDWARE_ECHO_RESULT_NORMAL = 2, HARDWARE_ECHO_RESULT_POOR = 3 } export declare class SubscribeVideoConfig { constructor(videoIndex: int, priority: int); } export declare enum RecordingState { RECORDING_STATE_ERROE = 0, RECORDING_STATE_PROCESSING = 1, RECORDING_STATE_SUCCESS = 2 } export declare enum NetworkDetectionLinkType { UP = 0, DOWN = 1 } export declare class RTCStream { static create(userId: String, streamIndex: StreamIndex, isScreen: boolean, hasVideo: boolean, hasAudio: boolean): RTCStream; static createWithStreamDescriptions(userId: String, streamIndex: StreamIndex, isScreen: boolean, hasVideo: boolean, hasAudio: boolean, videoStreamDescriptions: Array): RTCStream; constructor(userId: String, streamIndex: StreamIndex, isScreen: boolean, hasVideo: boolean, hasAudio: boolean, videoStreamDescriptions: List); constructor(); userId: String; isScreen: boolean; hasVideo: boolean; hasAudio: boolean; videoStreamDescriptions: List; } export declare class ByteWatermark { constructor(x: float, y: float, width: float, height: float); constructor(); x: float; y: float; width: float; height: float; } export declare enum VideoDenoiseModeChangedReason { VIDEO_DENOISE_MODE_CHANGED_REASON_NULL = -1, VIDEO_DENOISE_MODE_CHANGED_REASON_API_OFF = 0, VIDEO_DENOISE_MODE_CHANGED_REASON_API_ON = 1, VIDEO_DENOISE_MODE_CHANGED_REASON_CONFIG_DISABLED = 2, VIDEO_DENOISE_MODE_CHANGED_REASON_CONFIG_ENABLED = 3, VIDEO_DENOISE_MODE_CHANGED_REASON_INTERNAL_EXCEPTION = 4, VIDEO_DENOISE_MODE_CHANGED_REASON_DYNAMIC_CLOSE = 5, VIDEO_DENOISE_MODE_CHANGED_REASON_DYNAMIC_OPEN = 6, VIDEO_DENOISE_MODE_CHANGED_REASON_RESOLUTION = 7 } export declare enum AudioDeviceType { AUDIO_DEVICE_TYPE_UNKNOWN = -1, AUDIO_DEVICE_TYPE_RENDER_DEVICE = 0, AUDIO_DEVICE_TYPE_CAPTURE_DEVICE = 1, AUDIO_DEVICE_TYPE_SCREEN_CAPTURE_DEVICE = 2 } export declare enum SetRoomExtraInfoResult { SUCCESS = 0, NOT_JOIN_ROOM = -1, KEY_IS_NULL = -2, VALUE_IS_NULL = -3, UNKNOW = -99, KEY_IS_EMPTY = -400, TOO_OFTEN = -406, SILENT_USER = -412, KEY_TOO_LONG = -413, VALUE_TOO_LONG = -414, SERVER_ERROR = -500 } export declare enum LocalProxyState { INITED = 0, CONNECTED = 1, ERROR = 2 } export declare enum AVSyncState { AV_SYNC_STATE_STREAM_SYNC_BEGIN = 0, AV_SYNC_STATE_AUDIO_STREAM_REMOVE = 1, AV_SYNC_STATE_VIDEO_STREAM_REMOVE = 2 } export declare class RTCRoomConfig { constructor(channelProfile: ChannelProfile, isPublishAudio: boolean, isPublishVideo: boolean, isAutoSubscribeAudio: boolean, isAutoSubscribeVideo: boolean, remoteVideoConfig: RemoteVideoConfig); /** {en} * @brief Room profile. See ChannelProfile{@link #ChannelProfile}. The default is `CHANNEL_PROFILE_COMMUNICATION`. The setting cannot be changed after joining the room. * */ profile: ChannelProfile; /** {en} * @brief Whether to publish media streams automatically. The default is automatic publishing. * + Changing the user role to audience via `setUserVisibility` will void this setting. * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only. * */ isPublishAudio: boolean; /** {en} * @brief Whether to publish media streams automatically. The default is automatic publishing. * + Changing the user role to audience via `setUserVisibility` will void this setting. * + You can publish streams in only one of the rooms you have participated. If you have joined multiple rooms with the automatically publishing setting, the stream will be added into the first room you have joined only. * */ isPublishVideo: boolean; /** {en} * @brief Whether to automatically subscribe to the audio stream. The default is automatic subscription.
* This setting affects both the main stream and the screen-sharing stream. * */ isAutoSubscribeAudio: boolean; /** {en} * @brief Whether to automatically subscribe to the main video stream. The default is automatic subscription.
* This setting affects both the main stream and the screen-sharing stream. * */ isAutoSubscribeVideo: boolean; /** {en} * @brief Expected configuration of remote video stream, see RemoteVideoConfig{@link #RemoteVideoConfig}. * */ remoteVideoConfig: RemoteVideoConfig; isPublishAudio$(): boolean; } export declare enum SVCLayer { DEFAULT = 0, BASE = 1, MAIN = 2, HIGH = 3, value = 0 } export declare class Rectangle { constructor(x: int, y: int, w: int, h: int); x: int; y: int; width: int; height: int; } export declare enum MixedStreamClientMixVideoFormat { MIXED_STREAM_CLIENT_MIX_VIDEO_FORMAT_YUV_I420 = 0, MIXED_STREAM_CLIENT_MIX_VIDEO_FORMAT_TEXTURE_2D = 1, MIXED_STREAM_CLIENT_MIX_VIDEO_FORMAT_CVPIXEL_BUFFER_BGRA = 2, MIXED_STREAM_CLIENT_MIX_VIDEO_FORMAT_YUV_NV12 = 3 } export declare enum VideoRotationMode { FOLLOW_APP = 0, FOLLOW_GSENSOR = 1 } export declare enum PlayerState { IDLE = 0, PRELOADED = 1, OPENED = 2, PLAYING = 3, PAUSED = 4, STOPPED = 5, FAILED = 6, FINISHED = 7 } export declare enum MixedStreamVideoType { MIXED_STREAM_VIDEO_TYPE_MAIN = 0, MIXED_STREAM_VIDEO_TYPE_SCREEN = 1 } export declare class MixedStreamLayoutRegionConfig { setRoomID(roomID: String): this; getRoomID(): String; setUserID(userID: String): this; getUserID(): String; setLocationX(locationX: int): this; getLocationX(): int; setLocationY(locationY: int): this; getLocationY(): int; setWidth(width: int): this; getWidth(): int; setHeight(height: int): this; getHeight(): double; setZOrder(zOrder: int): this; getZOrder(): int; setAlpha(alpha: double): this; getAlpha(): double; setCornerRadius(cornerRadius: double): this; getCornerRadius(): double; setMediaType(mediaType: MixedStreamMediaType): this; getMediaType(): MixedStreamMediaType; setRegionContentType(regionContentType: MixedStreamLayoutRegionType): this; getRegionContentType(): MixedStreamLayoutRegionType; setRenderMode(renderMode: MixedStreamRenderMode): this; getRenderMode(): MixedStreamRenderMode; getIsLocalUser(): boolean; setIsLocalUser(islocalUser: boolean): this; setStreamType(streamType: MixedStreamVideoType): this; getStreamType(): MixedStreamVideoType; setImageWaterMark(imageWaterMark: ArrayBuffer): this; getImageWaterMark(): ArrayBuffer; setImageWaterMarkConfig(imageWaterMarkConfig: MixedStreamLayoutRegionImageWaterMarkConfig): this; getImageWaterMarkConfig(): MixedStreamLayoutRegionImageWaterMarkConfig; setAlternateImageFillMode(alternateImageFillMode: MixedStreamAlternateImageFillMode): this; getAlternateImageFillMode(): MixedStreamAlternateImageFillMode; setAlternateImageURL(alternateImageUrl: String): this; getAlternateImageURL(): String; setSpatialPosition(spatialPosition: Position): this; getSpatialPosition(): Position; setApplySpatialAudio(applySpatialAudio: boolean): this; getApplySpatialAudio(): boolean; } export declare enum AudioScenarioType { AUDIO_SCENARIO_MUSIC = 0, AUDIO_SCENARIO_HIGHQUALITY_COMMUNICATION = 1, AUDIO_SCENARIO_COMMUNICATION = 2, AUDIO_SCENARIO_MEDIA = 3, AUDIO_SCENARIO_GAME_STREAMING = 4, AUDIO_SCENARIO_HIGHQUALITY_CHAT = 5 } export declare enum AudioPropertiesMode { AUDIO_PROPERTIES_MODE_MICROPHONE = 0, AUDIO_PROPERTIES_MODE_AUDIOMIXING = 1 } export declare enum ASRAuthorizationType { ASR_AUTHORIZATION_TYPE_TOKEN = 0, ASR_AUTHORIZATION_TYPE_SIGNATURE = 1 } export declare enum VoiceEqualizationBandFrequency { VOICE_EQUALIZATION_BAND_FREQUENCY_31 = 0, VOICE_EQUALIZATION_BAND_FREQUENCY_62 = 1, VOICE_EQUALIZATION_BAND_FREQUENCY_125 = 2, VOICE_EQUALIZATION_BAND_FREQUENCY_250 = 3, VOICE_EQUALIZATION_BAND_FREQUENCY_500 = 4, VOICE_EQUALIZATION_BAND_FREQUENCY_1K = 5, VOICE_EQUALIZATION_BAND_FREQUENCY_2K = 6, VOICE_EQUALIZATION_BAND_FREQUENCY_4K = 7, VOICE_EQUALIZATION_BAND_FREQUENCY_8K = 8, VOICE_EQUALIZATION_BAND_FREQUENCY_16K = 9 } export declare class SysStats { constructor(cpuCores: int, cpuAppUsage: double, cpuTotalUsage: double, memoryUsage: double, fullMemory: long, totalMemoryUsage: long, freeMemory: long, memoryRatio: double, totalMemoryRatio: double); constructor(); cpuCores: int; cpuAppUsage: double; cpuTotalUsage: double; memoryUsage: double; fullMemory: long; totalMemoryUsage: long; freeMemory: long; memoryRatio: double; totalMemoryRatio: double; } export declare enum VideoContentType { NORMAL_FRAME = 0, BLACK_FRAME = 1 } export declare class SubscribeConfig { static create(isScreen: boolean, subVideo: boolean, subAudio: boolean, videoIndex: int, svcLayer: int, subWidth: int, subHeight: int, subVideoIndex: int): SubscribeConfig; constructor(oldConfig: SubscribeConfig); constructor(isScreen: boolean, subVideo: boolean, subAudio: boolean, videoIndex: int); constructor(isScreen: boolean, subVideo: boolean, subAudio: boolean, videoIndex: int, svcLayer: int); constructor(isScreen: boolean, subVideo: boolean, subAudio: boolean, videoIndex: int, svcLayer: int, subWidth: int, subHeight: int, subVideoIndex: int); constructor(); isScreen: boolean; subVideo: boolean; subAudio: boolean; videoIndex: int; subWidth: int; subHeight: int; framerate: int; } export declare class EchoTestConfig { constructor(view: View, uid: String, roomid: String, token: String, enableAudio: boolean, enableVideo: boolean, interval: int); view: View; uid: String; roomId: String; token: String; enableAudio: boolean; enableVideo: boolean; audioReportInterval: int; getEchoRenderView(): View; getEchoUid(): String; getEchoRoomId(): String; getEchoToken(): String; getEchoEnabledAudio(): boolean; getEchoEnabledVideo(): boolean; getAudioReportInterval(): int; } export declare enum AudioSampleRate { AUDIO_SAMPLE_RATE_AUTO = -1, AUDIO_SAMPLE_RATE_8000 = 8000, AUDIO_SAMPLE_RATE_16000 = 16000, AUDIO_SAMPLE_RATE_32000 = 32000, AUDIO_SAMPLE_RATE_44100 = 44100, AUDIO_SAMPLE_RATE_48000 = 48000 } export declare class MusicInfo { constructor(musicId: String, musicName: String, singer: String, vendorId: String, vendorName: String, updateTimestamp: long, posterUrl: String, lyricType: LyricStatus, duration: int, enableScore: boolean, climaxStart: int, climaxEnd: int); musicId: String; musicName: String; singer: String; vendorId: String; vendorName: String; updateTimestamp: long; posterUrl: String; lyricStatus: LyricStatus; duration: int; enableScore: boolean; climaxStartTime: int; climaxEndTime: int; } export declare enum MixedStreamVideoCodecType { MIXED_STREAM_VIDEO_CODEC_TYPE_H264 = "H264", MIXED_STREAM_VIDEO_CODEC_TYPE_BYTEVC1 = "ByteVC1" } export declare enum MuteState { MUTE_STATE_OFF = 0, MUTE_STATE_ON = 1 } export declare enum ByteRTCStreamMixingType { STREAM_MIXING_BY_SERVER = 0, STREAM_MIXING_BY_CLIENT = 1 } export declare enum MediaDeviceError { MEDIA_DEVICE_ERROR_OK = 0, MEDIA_DEVICE_ERROR_NOPERMISSION = 1, MEDIA_DEVICE_ERROR_DEVICEBUSY = 2, MEDIA_DEVICE_ERROR_DEVICEFAILURE = 3, MEDIA_DEVICE_ERROR_DEVICENOTFOUND = 4, MEDIA_DEVICE_ERROR_DEVICEDISCONNECTED = 5, MEDIA_DEVICE_ERROR_DEVICENOCALLBACK = 6, MEDIA_DEVICE_ERROR_UNSUPPORTFORMAT = 7 } export declare class CpuBufferVideoFrameBuilder { constructor(pixelFormat: VideoPixelFormat); setTimeStampUs(timeStampUs: long): this; setWidth(width: int): this; setHeight(height: int): this; setRotation(rotation: VideoRotation): this; setColorSpace(colorSpace: ColorSpace): this; setPlaneData(planeIndex: int, buffer: ByteBuffer): this; setPlaneStride(planeIndex: int, stride: int): this; setExternalDataInfo(externalDataInfo: ByteBuffer): this; setSupplementaryInfo(supplementaryInfo: ByteBuffer): this; setReleaseCallback(releaseCallback: Runnable): this; build(): VideoFrame; } export declare enum AudioFrameSource { AUDIO_FRAME_SOURCE_MIC = 0, AUDIO_FRAME_SOURCE_PLAYBACK = 1, AUDIO_FRAME_SOURCE_MIXED = 2 } export declare enum StreamRemoveReason { STREAM_REMOVE_REASON_UNPUBLISH = 0, STREAM_REMOVE_REASON_PUBLISH_FAILED = 1, STREAM_REMOVE_REASON_KEEP_LIVE_FAILED = 2, STREAM_REMOVE_REASON_CLIENT_DISCONNECTED = 3, STREAM_REMOVE_REASON_REPUBLISH = 4, STREAM_REMOVE_REASON_OTHER = 5, STREAM_REMOVE_REASON_PUBLISH_PRIVILEGE_TOKEN_EXPIRED = 6 } export declare enum ForwardStreamError { FORWARD_STREAM_ERROR_OK = 0, FORWARD_STREAM_ERROR_INVALID_ARGUMENT = 1201, FORWARD_STREAM_ERROR_INVALID_TOKEN = 1202, FORWARD_STREAM_ERROR_RESPONSE = 1203, FORWARD_STREAM_ERROR_REMOTE_KICKED = 1204, FORWARD_STREAM_ERROR_NOT_SUPPORT = 1205 } export declare enum NetworkDetectionStopReason { USER = 0, TIMEOUT = 1, CONNECTION_LOST = 2, STREAMING = 3, INNER_ERR = 4 } export declare class ReceiveRange { constructor(min: int, max: int); min: int; max: int; } export declare enum NetworkQuality { NETWORK_QUALITY_UNKNOWN = 0, NETWORK_QUALITY_EXCELLENT = 1, NETWORK_QUALITY_GOOD = 2, NETWORK_QUALITY_POOR = 3, NETWORK_QUALITY_BAD = 4, NETWORK_QUALITY_VERY_BAD = 5, NETWORK_QUALITY_DOWN = 6 } export declare enum ZoomConfigType { ZOOM_FOCUS_OFFSET = 0, ZOOM_MOVE_OFFSET = 1 } export declare class StreamSycnInfoConfig { constructor(streamIndex: StreamIndex, repeatCount: int, streamType: SyncInfoStreamType); streamIndex: StreamIndex; repeatCount: int; streamType: SyncInfoStreamType; } export declare class LocalVideoStats { constructor(); sentKBitrate: float; inputFrameRate: int; sentFrameRate: int; encoderOutputFrameRate: int; rendererOutputFrameRate: int; statsInterval: int; videoLossRate: float; rtt: int; encodedBitrate: int; encodedFrameWidth: int; encodedFrameHeight: int; encodedFrameCount: int; codecType: VideoConfig$VideoCodecType; isScreen: boolean; jitter: int; videoDenoiseMode: int; isPSNROn: boolean; } export declare enum AudioRecordingState { AUDIO_RECORDING_STATE_ERROR = 0, AUDIO_RECORDING_STATE_PROCESSING = 1, AUDIO_RECORDING_STATE_SUCCESS = 2 } export declare enum MulDimSingScoringMode { MUL_DIM_SING_SCORING_MODE_NOTE = 0 } export declare enum AudioPlaybackDevice { AUDIO_PLAYBACK_DEVICE_HEADSET = 1, AUDIO_PLAYBACK_DEVICE_EARPIECE = 2, AUDIO_PLAYBACK_DEVICE_SPEAKERPHONE = 3, AUDIO_PLAYBACK_DEVICE_HEADSET_BLUETOOTH = 4, AUDIO_PLAYBACK_DEVICE_HEADSET_USB = 5 } export declare class ForwardStreamInfo { constructor(roomId: String, token: String); roomId: String; token: String; } export declare class VideoPreprocessorConfig { requiredPixelFormat: VideoPixelFormat; } export declare class LocalProxyConfiguration { constructor(localProxyType: LocalProxyType, localProxyIp: String, localProxyPort: int, localProxyUsername: String, localProxyPassword: String); localProxyType: LocalProxyType; localProxyIp: String; localProxyPort: int; localProxyUsername: String; localProxyPassword: String; } export declare class AudioFrame { constructor(buffer: ArrayBuffer, samples: int, sampleRate: AudioSampleRate, channel: AudioChannel); constructor(); buffer: ArrayBuffer; samples: int; sampleRate: AudioSampleRate; channel: AudioChannel; } export declare enum EncoderPreference { DISABLED = 0, MAINTAIN_FRAMERATE = 1, MAINTAIN_QUALITY = 2, BALANCE = 3 } export declare class DownloadResult { constructor(musicId: String, fileType: DownloadFileType, filePath: String); musicId: String; fileType: DownloadFileType; filePath: String; } export declare enum ProblemFeedbackOption { NONE = 0, OTHER_MESSAGE = "1L", DISCONNECTED = 2, EAR_BACK_DELAY = 4, LOCAL_NOISE = 1024, LOCAL_AUDIO_LAGGING = 2048, LOCAL_NO_AUDIO = 4096, LOCAL_AUDIO_STRENGTH = 8192, LOCAL_ECHO = 16384, LOCAL_VIDEO_FUZZY = 16777216, LOCAL_NOT_SYNC = 33554432, LOCAL_VIDEO_LAGGING = 67108864, LOCAL_NO_VIDEO = 134217728, REMOTE_NOISE = 32, REMOTE_AUDIO_LAGGING = 64, REMOTE_NO_AUDIO = 128, REMOTE_AUDIO_STRENGTH = 256, REMOTE_ECHO = 512, REMOTE_VIDEO_FUZZY = 524288, REMOTE_NOT_SYNC = 1048576, REMOTE_VIDEO_LAGGING = 2097152, REMOTE_NO_VIDEO = 4194304 } export declare class VideoConfig { constructor(); setFps(fps: int): this; setKBitRate(kBitRate: int): this; setWidth(width: int): this; setHeight(height: int): this; } export declare class Region { constructor(); uid(uid: String): this; roomId(roomId: String): this; zorder(zorder: int): this; alpha(alpha: double): this; setCornerRadius(radius: double): this; contentControl(contentControl: TranscoderContentControlType): this; renderMode(renderMode: TranscoderRenderMode): this; position(x: double, y: double): this; size(width: double, height: double): this; isScreenStream(): boolean; setScreenStream(screenStream: boolean): this; isLocalUser(): boolean; setLocalUser(localUser: boolean): this; type(type: TranscoderLayoutRegionType): this; data(data: ArrayBuffer): this; dataParam(dataParam: DataParam): this; spatialPosition(x: float, y: float, z: float): this; applySpatialAudio(applySpatialAudio: boolean): this; } export declare enum UserOnlineStatus { USER_ONLINE_STATUS_OFFLINE = 0, USER_ONLINE_STATUS_ONLINE = 1, USER_ONLINE_STATUS_UNREACHABLE = 2 } export declare enum VideoDecoderConfig { VIDEO_DECODER_CONFIG_RAW = 0, VIDEO_DECODER_CONFIG_ENCODE = 1, VIDEO_DECODER_CONFIG_BOTH = 2 } export declare enum VideoStreamDescription$EncoderPreference { Disabled = 0, MaintainFramerate = 1, MaintainQuality = 2, Balance = 3 } export declare class PositionInfo { constructor(position: Position, orientation: HumanOrientation); position: Position; orientation: HumanOrientation; } export declare class LocalStreamStats { constructor(); audioStats: LocalAudioStats; videoStats: LocalVideoStats; isScreen: boolean; txQuality: int; rxQuality: int; } export declare class VoiceEqualizationConfig { constructor(frequency: VoiceEqualizationBandFrequency, gain: int); frequency: VoiceEqualizationBandFrequency; gain: int; } export declare enum VideoFrameType { RAW_MEMORY = 0, GL_TEXTURE = 2 } export declare enum TranscoderContentControlType { HAS_AUDIO_AND_VIDEO = 0, HAS_AUDIO_ONLY = 1, HAS_VIDEO_ONLY = 2 } export declare enum ChannelProfile { CHANNEL_PROFILE_COMMUNICATION = 0, CHANNEL_PROFILE_GAME = 2, CHANNEL_PROFILE_CLOUD_GAME = 3, CHANNEL_PROFILE_LOW_LATENCY = 4, CHANNEL_PROFILE_CHAT = 5, CHANNEL_PROFILE_CHAT_ROOM = 6, CHANNEL_PROFILE_LW_TOGETHER = 7, CHANNEL_PROFILE_GAME_HD = 8, CHANNEL_PROFILE_CO_HOST = 9, CHANNEL_PROFILE_INTERACTIVE_PODCAST = 10, CHANNEL_PROFILE_KTV = 11, CHANNEL_PROFILE_CHORUS = 12, CHANNEL_PROFIEL_VR_CHAT = 13, CHANNEL_PROFILE_GAME_STREAMING = 14, CHANNEL_PROFILE_LAN_LIVE_STREAMING = 15, CHANNEL_PROFIEL_MEETING = 16, CHANNEL_PROFILE_MEETING_ROOM = 17, CHANNEL_PROFILE_CLASSROOM = 18, CHANNEL_PROFILE_LIVE_BROADCASTING = 1 } export declare class MixedStreamLayoutConfig { setBackgroundColor(backgroundColor: String): this; getBackgroundColor(): String; setBackgroundImageURL(backgroundImageURL: String): this; getBackgroundImageURL(): String; setRegions(regions: Array): this; getRegions(): Array; setUserConfigExtraInfo(userConfigExtraInfo: String): this; getUserConfigExtraInfo(): String; } export declare class IAudioFrame { timestamp_us(): long; sample_rate(): AudioSampleRate; channel(): AudioChannel; getDataBuffer(): ByteBuffer; data_size(): int; frame_type(): AudioFrameType; release(): void; } export declare class ForwardStreamStateInfo { constructor(roomId: String, state: ForwardStreamState, error: ForwardStreamError); roomId: String; state: ForwardStreamState; error: ForwardStreamError; } export declare class RemoteVideoConfig { constructor(width: int, height: int, framerate: int); width: int; height: int; framerate: int; } export declare enum PauseResumeControlMediaType { AUDIO = 0, VIDEO = 1, AUDIO_AND_VIDEO = 2 } export declare class RTCEncodedVideoFrame { constructor(buffer: ByteBuffer, timestampUs: long, timestampDtsUs: long, width: int, height: int, videoCodecType: VideoCodecType, videoPictureType: VideoPictureType, videoRotation: VideoRotation); buffer: ByteBuffer; timestampUs: long; timestampDtsUs: long; width: int; height: int; videoCodecType: VideoCodecType; videoPictureType: VideoPictureType; videoRotation: VideoRotation; } export declare enum AudioMixingState { AUDIO_MIXING_STATE_PRELOADED = 0, AUDIO_MIXING_STATE_PLAYING = 1, AUDIO_MIXING_STATE_PAUSED = 2, AUDIO_MIXING_STATE_STOPPED = 3, AUDIO_MIXING_STATE_FAILED = 4, AUDIO_MIXING_STATE_FINISHED = 5, AUDIO_MIXING_STATE_PCM_ENABLED = 6, AUDIO_MIXING_STATE_PCM_DISABLED = 7 } export declare enum DownloadLyricType { KRC = 0, LRC = 1 } export declare enum MixedStreamType { MIXED_STREAM_TYPE_BY_SERVER = 0, MIXED_STREAM_TYPE_BY_CLIENT = 1 } export declare class RemoteAudioStats { constructor(); audioLossRate: float; receivedKBitrate: float; stallCount: int; stallDuration: int; e2eDelay: long; playoutSampleRate: int; statsInterval: int; rtt: int; totalRtt: int; quality: int; jitterBufferDelay: int; numChannels: int; receivedSampleRate: int; frozenRate: int; concealedSamples: int; concealmentEvent: int; decSampleRate: int; decDuration: int; jitter: int; } export declare class ScreenSharingParameters { constructor(width: int, height: int, frameRate: int, bitrate: int, minBitrate: int); constructor(); maxWidth: int; maxHeight: int; frameRate: int; bitrate: int; minBitrate: int; } export declare enum VideoOrientation { ADAPTIVE = 0, PORTRAIT = 1, LANDSCAPE = 2 } export declare class AudioRecordingConfig { constructor(); constructor(absoluteFileName: String, sampleRate: AudioSampleRate, channel: AudioChannel, frameSource: AudioFrameSource, quality: AudioQuality); absoluteFileName: String; sampleRate: AudioSampleRate; channel: AudioChannel; frameSource: AudioFrameSource; quality: AudioQuality; } export declare enum AudioRoute { AUDIO_ROUTE_DEFAULT = -1, AUDIO_ROUTE_HEADSET = 1, AUDIO_ROUTE_EARPIECE = 2, AUDIO_ROUTE_SPEAKERPHONE = 3, AUDIO_ROUTE_HEADSET_BLUETOOTH = 4, AUDIO_ROUTE_HEADSET_USB = 5 } export declare class Position { constructor(x: float, y: float, z: float); constructor(); x: float; y: float; z: float; } export declare enum MediaInputType { MEDIA_INPUT_TYPE_EXTERNAL = 0, MEDIA_INPUT_TYPE_INTERNAL = 1 } export declare enum AudioPlayType { LOCAL = 0, REMOTE = 1, LOCAL_AND_REMOTE = 2 } export declare enum DownloadFileType { MUSIC = 1, KRC = 2, LRC = 3, MIDI = 4 } export declare enum MediaPlayerCustomSourceSeekWhence { SET = 0, CUR = 1, END = 2, SIZE = 3 } export declare enum AudioCodecType { AUDIO_CODEC_TYPE_AAC = "AAC" } export declare class SingScoringConfig { constructor(sampleRate: AudioSampleRate, mode: MulDimSingScoringMode, lyricsFilepath: String, midiFilepath: String); sampleRate: AudioSampleRate; mode: MulDimSingScoringMode; lyricsFilepath: String; midiFilepath: String; } export declare enum LyricStatus { NONE = 0, KRC = 1, LRC = 2, KRC_AND_LRC = 4 } export declare enum AudioQuality { AUDIO_QUALITY_LOW = 0, AUDIO_QUALITY_MEDIUM = 1, AUDIO_QUALITY_HIGH = 2, AUDIO_QUALITY_ULTRA_HIGH = 3 } export declare enum MixedStreamLayoutRegionType { MIXED_STREAM_LAYOUT_REGION_TYPE_VIDEO_STREAM = 0, MIXED_STREAM_LAYOUT_REGION_TYPE_IMAGE = 1 } export declare enum AudioFrameCallbackMethod { AUDIO_FRAME_CALLBACK_RECORD = 0, AUDIO_FRAME_CALLBACK_PLAYBACK = 1, AUDIO_FRAME_CALLBACK_MIXED = 2, AUDIO_FRAME_CALLBACK_REMOTE_USER = 3 } export declare class RtcUser { constructor(); userId: String; metaData: String; } export declare enum LogoutReason { LOGOUT_REASON_LOGOUT = 0, LOGOUT_REASON_DUPLICATE_LOGIN = 1 } export declare enum VideoRenderMirrorType { ON = 1, OFF = 2 } export declare class SourceCrop { constructor(); locationX: double; locationY: double; widthProportion: double; heightProportion: double; setLocationX(x: double): this; setLocationY(y: double): this; setWidthProportion(w: double): this; setHeightProportion(h: double): this; } export declare class LiveTranscoding { static readonly ACTION_START = "started"; static readonly ACTION_CHANGED = "layoutChanged"; static readonly ACTION_STOPPED = "stopped"; static getDefualtLiveTranscode(): LiveTranscoding; getFieldVideoConfigBFrame(): boolean; setUrl(url: String): void; setRoomId(roomId: String): void; setUserId(userId: String): void; setVideo(video: VideoConfig): void; setAudio(audio: AudioConfig): void; setSpatialConfig(spatialConfig: SpatialConfig): void; setClientMixParam(param: ClientMixParam): void; setLayout(layout: Layout): void; getMixType(): ByteRTCStreamMixingType; setMixType(mixType: ByteRTCStreamMixingType): void; getUrl(): String; getVideo(): VideoConfig; getAudio(): AudioConfig; getSpatialConfig(): SpatialConfig; getClientMixParam(): ClientMixParam; getLayout(): Layout; setAction(action: String): void; } export declare enum VideoDenoiseMode { VIDEO_DENOISE_MODE_OFF = 0, VIDEO_DENOISE_MODE_AUTO = 1 } export declare class VideoDimensions { constructor(); constructor(width: int, height: int); width: int; height: int; } export declare class SpatialConfig { setAudienceSpatialPosition(pos: Position): this; setAudienceSpatialOrientation(orientation: HumanOrientation): this; setEnableSpatialRender(enableSpatialRender: boolean): this; } export declare enum MixedStreamSEIContentMode { MIXED_STREAM_SEI_CONTENT_MODE_DEFAULT = 0, MIXED_STREAM_SEI_CONTENT_MODE_ENABLE_VOLUME_INDICATION = 1 } export declare enum AudioMixingError { AUDIO_MIXING_ERROR_OK = 0, AUDIO_MIXING_ERROR_PRELOAD_FAILED = 1, AUDIO_MIXING_ERROR_START_FAILED = 2, AUDIO_MIXING_ERROR_ID_NOT_FOUND = 3, AUDIO_MIXING_ERROR_SET_POSITION_FAILED = 4, AUDIO_MIXING_ERROR_INVALID_VOLUME = 5, AUDIO_MIXING_ERROR_LOAD_CONFLICT = 6, AUDIO_MIXING_ERROR_ID_TYPE_NOT_MATCH = 7, AUDIO_MIXING_ERROR_ID_TYPE_INVALID_PITCH = 8, AUDIO_MIXING_ERROR_INVALID_AUDIO_TRACK = 9, AUDIO_MIXING_ERROR_IS_STARTING = 10, AUDIO_MIXING_ERROR_INVALID_PLAYBACK_SPEED = 11 } export declare enum AACProfile { AAC_PROFILE_LC = "LC", AAC_PROFILE_HEV1 = "HEv1", AAC_PROFILE_HEV2 = "HEv2" } export declare enum AudioSelectionPriority { AUDIO_SELECTION_PRIORITY_NORMAL = 0, AUDIO_SELECTION_PRIORITY_HIGIH = 1 } export declare enum DataMessageSourceType { DATA_MESSAGE_SOURCE_TYPE_DEFAULT = 0, DATA_MESSAGE_SOURCE_TYPE_SYSTEM = 1 } export declare class PublicStreaming$Layout { getRegions(): Array; setRegions(regions: Array): void; getInterpolationMode(): int; setInterpolationMode(interMode: int): void; getLayoutMode(): int; setLayoutMode(layoutMode: int): void; getBackgroundImage(): String; setBackgroundImage(bgImage: String): void; getBackgroundColor(): String; setBackgroundColor(backgroundColor: String): void; } export declare class VideoEffectExpressionConfig { enableAgeDetect: boolean; enableGenderDetect: boolean; enableEmotionDetect: boolean; enableAttractivenessDetect: boolean; enableHappinessDetect: boolean; } export declare class FaceDetectionResult { detectResult: int; imageWidth: int; imageHeight: int; faces: Array; frameTimestampUs: long; } export declare class VideoFrame { constructor(); setReleaseCallback(releaseCallback: Runnable): void; hasReleaseCallback(): boolean; getFrameType(): VideoFrameType; getPixelFormat(): VideoPixelFormat; getContentType(): VideoContentType; getTimeStampUs(): long; getWidth(): int; getHeight(): int; getRotation(): VideoRotation; getColorSpace(): ColorSpace; getCameraId(): CameraId; getNumberOfPlanes(): int; getPlaneData(planeIndex: int): ByteBuffer; getPlaneStride(planeIndex: int): int; getExternalDataInfo(): ByteBuffer; getSupplementaryInfo(): ByteBuffer; getTextureID(): int; getGLSync(): long; getTextureMatrix(): Array; getEGLContext(): EGLContext; retain(): void; release(): void; } export declare class RemoteStreamKey { constructor(roomId: String, userId: String, streamIndex: StreamIndex); roomId: String; userId: String; streamIndex: StreamIndex; getRoomId(): String; getUserId(): String; getStreamIndex(): StreamIndex; hasNullProperty(): boolean; } export declare enum VoiceReverbType { VOICE_REVERB_ORIGINAL = 0, VOICE_REVERB_ECHO = 1, VOICE_REVERB_CONCERT = 2, VOICE_REVERB_ETHEREAL = 3, VOICE_REVERB_KTV = 4, VOICE_REVERB_STUDIO = 5, VOICE_REVERB_VIRTUAL_STEREO = 6, VOICE_REVERB_SPACIOUS = 7, VOICE_REVERB_3D = 8 } export declare enum MediaPlayerCustomSourceMode { PUSH = 0, PULL = 1 } export declare enum KTVPlayerErrorCode { OK = 0, FILE_NOT_EXIST = -3020, FILE_ERROR = -3021, NOT_JOIN_ROOM = -3022, PARAM = -3023, START_ERROR = -3024, MIX_ID_ERROR = -3025, POSITION_ERROR = -3026, AUDIO_VOLUME_ERROR = -3027, TYPE_ERROR = -3028, PITCH_ERROR = -3029, AUDIO_TRACK_ERROR = -3030, STARTING_ERROR = -3031 } export declare enum AudioChannel { AUDIO_CHANNEL_AUTO = -1, AUDIO_CHANNEL_MONO = 1, AUDIO_CHANNEL_STEREO = 2 } export declare enum RemoteVideoStateChangeReason { REMOTE_VIDEO_STATE_CHANGE_REASON_INTERNAL = 0, REMOTE_VIDEO_STATE_CHANGE_REASON_NETWORK_CONGESTION = 1, REMOTE_VIDEO_STATE_CHANGE_REASON_NETWORK_RECOVERY = 2, REMOTE_VIDEO_STATE_CHANGE_REASON_LOCAL_MUTED = 3, REMOTE_VIDEO_STATE_CHANGE_REASON_LOCAL_UNMUTED = 4, REMOTE_VIDEO_STATE_CHANGE_REASON_REMOTE_MUTED = 5, REMOTE_VIDEO_STATE_CHANGE_REASON_REMOTE_UNMUTED = 6, REMOTE_VIDEO_STATE_CHANGE_REASON_REMOTE_OFFLINE = 7 } export declare enum PerformanceAlarmReason { BANDWIDTH_FALLBACKED = 0, BANDWIDTH_RESUMED = 1, PERFORMANCE_FALLBACKED = 2, PERFORMANCE_RESUMED = 3 } export declare enum VideoDeviceType { VIDEO_DEVICE_TYPE_UNKNOWN = -1, VIDEO_DEVICE_TYPE_RENDER_DEVICE = 0, VIDEO_DEVICE_TYPE_CAPTURE_DEVICE = 1, VIDEO_DEVICE_TYPE_SCREEN_CAPTURE_DEVICE = 2 } export declare class HotMusicInfo { constructor(hotType: MusicHotType, hotName: String, musicInfos: Array); hotType: MusicHotType; hotName: String; musicInfos: Array; } export declare enum TranscoderRenderMode { RENDER_HIDDEN = 1, RENDER_FIT = 2, RENDER_ADAPTIVE = 3, RENDER_UNKNOWN = 0 } export declare class MixedStreamServerControlConfig { setSeiPayloadType(seiPayloadType: int): this; getSeiPayloadType(): int; setSeiPayloadUuid(seiPayloadUuid: String): this; getSeiPayloadUuid(): String; setVolumeIndicationInterval(volumeIndicationInterval: float): this; getVolumeIndicationInterval(): float; setEnableVolumeIndication(enableVolumeIndication: boolean): this; getEnableVolumeIndication(): boolean; setIsAddVolumeValue(addVolumeValue: boolean): this; getIsAddVolumeValue(): boolean; setSeiContentMode(seiContentMode: MixedStreamSEIContentMode): this; getSeiContentMode(): MixedStreamSEIContentMode; setTalkVolume(talkVolume: int): this; getTalkVolume(): int; setPushStreamMode(pushStreamMode: MixedStreamPushMode): this; getPushStreamMode(): MixedStreamPushMode; setMediaType(mediaType: MixedStreamMediaType): this; getMediaType(): MixedStreamMediaType; } export declare enum AudioMixingDualMonoMode { AUDIO_MIXING_DUAL_MONO_MODE_AUTO = 0, AUDIO_MIXING_DUAL_MONO_MODE_L = 1, AUDIO_MIXING_DUAL_MONO_MODE_R = 2, AUDIO_MIXING_DUAL_MONO_MODE_MIX = 3 } export declare class LocalAudioStats { constructor(); audioLossRate: float; sendKBitrate: float; recordSampleRate: int; statsInterval: int; rtt: int; numChannels: int; sentSampleRate: int; jitter: int; } export declare class MixedStreamVideoConfig { setFps(fps: int): this; getFps(): int; setGop(gop: int): this; getGop(): int; setBitrate(bitrate: int): this; getBitrate(): int; setWidth(width: int): this; getWidth(): int; setHeight(height: int): this; getHeight(): int; setEnableBframe(enableBframe: boolean): this; getEnableBframe(): boolean; setVideoCodec(videoCodec: MixedStreamVideoCodecType): this; getVideoCodec(): MixedStreamVideoCodecType; } export declare class MediaPlayerCustomSource { constructor(provider: IMediaPlayerCustomSourceProvider, mode: MediaPlayerCustomSourceMode, type: MediaPlayerCustomSourceStreamType); constructor(); mode: MediaPlayerCustomSourceMode; type: MediaPlayerCustomSourceStreamType; } export declare enum MusicFilterType { NONE = 0, WITHOUT_LYRIC = 1, UNSUPPORTED_SCORE = 2, UNSUPPORTED_ACCOMPANY = 4, UNSUPPORTED_CLIMAX = 8 } export declare class RemoteAudioPropertiesInfo { constructor(streamKey: RemoteStreamKey, audioPropertiesInfo: AudioPropertiesInfo); streamKey: RemoteStreamKey; audioPropertiesInfo: AudioPropertiesInfo; } export declare enum LocalVideoRenderPosition { AFTER_CAPTURE = 0, AFTER_PREPROCESS = 1 } export declare class RTCLogConfig { constructor(logLevel: LocalLogLevel, logPath: String, logFileSize: int, logFilenamePrefix: String); logPath: String; logFileSize: int; logLevel: LocalLogLevel; logFilenamePrefix: String; } export declare enum AudioReportMode { AUDIO_REPORT_MODE_NORMAL = 0, AUDIO_REPORT_MODE_DISCONNECT = 1, AUDIO_REPORT_MODE_RESET = 2 } export declare class AudioFormat { constructor(sampleRate: AudioSampleRate, channel: AudioChannel, samplesPerCall: int); constructor(sampleRate: AudioSampleRate, channel: AudioChannel); sampleRate: AudioSampleRate; channel: AudioChannel; samplesPerCall: int; } export declare class MediaTypeEnhancementConfig { constructor(enhanceSignaling: boolean, enhanceAudio: boolean, enhanceVideo: boolean, enhanceScreenAudio: boolean, enhanceScreenVideo: boolean); constructor(); enhanceSignaling: boolean; enhanceAudio: boolean; enhanceVideo: boolean; enhanceScreenAudio: boolean; enhanceScreenVideo: boolean; } export declare enum MirrorType { MIRROR_TYPE_NONE = 0, MIRROR_TYPE_RENDER = 1, MIRROR_TYPE_RENDER_AND_ENCODER = 3 } export declare class CloudProxyInfo { constructor(cloudProxyIp: String, cloudProxyPort: int); cloudProxyIp: String; cloudProxyPort: int; } export declare class VideoEncoderConfig { constructor(width: int, height: int, frameRate: int, maxBitrate: int, minBitrate: int); constructor(width: int, height: int, frameRate: int, maxBitrate: int, minBitrate: int, codecName: int, codecMode: int, encodePrefer: int); constructor(); width: int; height: int; frameRate: int; maxBitrate: int; minBitrate: int; encodePreference: EncoderPreference; maxQp: int; minQp: int; } export declare enum FirstFramePlayState { FIRST_FRAME_PLAY_STATE_PLAYING = 0, FIRST_FRAME_PLAY_STATE_PLAYED = 1, FIRST_FRAME_PLAY_STATE_END = 2 } export declare class RemoteVideoSinkConfig { position: RemoteVideoRenderPosition; pixelFormat: int; applyRotation: VideoApplyRotation; mirrorType: VideoRenderMirrorType; } export declare enum VideoSuperResolutionModeChangedReason { VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_API_OFF = 0, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_API_ON = 1, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_RESOLUTION_EXCEED = 2, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_OVER_USE = 3, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_DEVICE_NOT_SUPPORT = 4, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_DYNAMIC_CLOSE = 5, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_OTHER_SETTING_DISABLED = 6, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_OTHER_SETTING_ENABLED = 7, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_NO_COMPONENT = 8, VIDEO_SUPER_RESOLUTION_MODE_CHANGED_REASON_STREAM_NOT_EXIST = 9 } export declare enum AnsMode { ANS_MODE_DISABLE = 0, ANS_MODE_LOW = 1, ANS_MODE_MEDIUM = 2, ANS_MODE_HIGH = 3, ANS_MODE_AUTOMATIC = 4 } export declare enum LocalAudioStreamState { LOCAL_AUDIO_STREAM_STATE_STOPPED = 0, LOCAL_AUDIO_STREAM_STATE_RECORDING = 1, LOCAL_AUDIO_STREAM_STATE_ENCODING = 2, LOCAL_AUDIO_STREAM_STATE_FAILED = 3 } export declare class VideoFrameInfo { constructor(width: int, height: int, rotation: int); width: int; height: int; rotation: VideoRotation; } export declare class EngineConfig { static readonly TAG = "EngineConfig"; static readonly ENGINE_CONFIG_VALID = 0; static readonly ENGINE_CONFIG_INVALID_APP_ID = 1; static readonly ENGINE_CONFIG_INVALID_NATIVE_LIB_PATH = 2; constructor(appID: String); appID: String; eglContext: Object; parameters: JSONObject; } export declare enum TranscoderClientMixVideoFormat { YUV_I420 = 0, TEXTURE_2D = 1, CVPIXEL_BUFFER_BGRA = 2, YUV_NV12 = 3 } export declare class LiveTranscoding$VideoConfig { constructor(); setCodec(codec: VideoCodecType): this; setFps(fps: int): this; setGop(gop: int): this; setBFrame(useBFrame: boolean): this; setKBitRate(kBitRate: int): this; setWidth(width: int): this; setHeight(height: int): this; } export declare class RemoteStreamSwitch { constructor(); uid: String; isScreen: boolean; beforeVideoIndex: int; afterVideoIndex: int; beforeEnable: boolean; afterEnable: boolean; reason: FallbackOrRecoverReason; } export declare class MixedStreamSpatialConfig { constructor(); setAudienceSpatialPosition(pos: Position): this; getAudienceSpatialPosition(): Position; setAudienceSpatialOrientation(orientation: HumanOrientation): this; getAudienceSpatialOrientation(): HumanOrientation; setEnableSpatialRender(enableSpatialRender: boolean): this; getEnableSpatialRender(): boolean; } export declare class VideoCanvas { static readonly RENDER_MODE_HIDDEN = 1; static readonly RENDER_MODE_FIT = 2; static readonly RENDER_MODE_FILL = 3; constructor(surface: Surface, renderMode: int); constructor(surface: Surface, renderMode: int, backgroundColor: int); constructor(); renderView: View; renderSurface: Surface; renderMode: int; backgroundColor: int; renderRotation: VideoRotation; } export declare class RemoteVideoStats { constructor(); width: int; height: int; videoLossRate: float; receivedKBitrate: float; decoderOutputFrameRate: int; rendererOutputFrameRate: int; stallCount: int; stallDuration: int; e2eDelay: long; isScreen: boolean; statsInterval: int; rtt: int; frozenRate: int; codecType: VideoConfig$VideoCodecType; videoIndex: int; jitter: int; superResolutionMode: int; } export declare enum VideoApplyRotation { DEFAULT = -1, DEGREE_0 = 0 } export declare class VideoDeviceInfo { constructor(deviceId: String, deviceName: String, deviceFacing: VideoDeviceFacing); constructor(); deviceId: String; deviceName: String; deviceFacing: VideoDeviceFacing; } export declare class IVideoSink { onFrame(frame: VideoFrame): void; getRenderElapse(): int; } export declare enum VideoRotation { VIDEO_ROTATION_0 = 0, VIDEO_ROTATION_90 = 90, VIDEO_ROTATION_180 = 180, VIDEO_ROTATION_270 = 270 } export declare enum OrientationMode { ORIENTATION_MODE_ADAPTIVE = 0, ORIENTATION_MODE_FIXED_LANDSCAPE = 1, ORIENTATION_MODE_FIXED_PORTRAIT = 2 } export declare class LocalVideoSinkConfig { position: LocalVideoRenderPosition; pixelFormat: int; } export declare class RecordingProgress { constructor(duration: long, fileSize: long); duration: long; fileSize: long; } export declare enum RemoteUserPriority { REMOTE_USER_PRIORITY_LOW = 0, REMOTE_USER_PRIORITY_MEDIUM = 100, REMOTE_USER_PRIORITY_HIGH = 200 } export declare enum LocalVideoStreamState { LOCAL_VIDEO_STREAM_STATE_STOPPED = 0, LOCAL_VIDEO_STREAM_STATE_RECORDING = 1, LOCAL_VIDEO_STREAM_STATE_ENCODING = 2, LOCAL_VIDEO_STREAM_STATE_FAILED = 3 } export declare enum RemoteAudioState { REMOTE_AUDIO_STATE_STOPPED = 0, REMOTE_AUDIO_STATE_STARTING = 1, REMOTE_AUDIO_STATE_DECODING = 2, REMOTE_AUDIO_STATE_FROZEN = 3 } export declare class AudioPropertiesConfig { constructor(interval: int, enableSpectrum: boolean, enableVad: boolean); constructor(interval: int, enableSpectrum: boolean, enableVad: boolean, localMainReportMode: AudioReportMode, smooth: float, audioReportMode: AudioPropertiesMode); constructor(interval: int, enableSpectrum: boolean, enableVad: boolean, localMainReportMode: AudioReportMode); constructor(interval: int, enableSpectrum: boolean, enableVad: boolean, localMainReportMode: AudioReportMode, smooth: float); constructor(interval: int); interval: int; enableSpectrum: boolean; enableVad: boolean; localMainReportMode: AudioReportMode; audioReportMode: AudioPropertiesMode; smooth: float; enableVoicePitch: boolean; } export declare enum VideoPixelFormat { UNKNOWN = 0, I420 = 1, NV12 = 2, NV21 = 3, RGBA = 5, TEXTURE_2D = 3553, TEXTURE_OES = 36197 } export declare enum LocalProxyError { OK = 0, SOCKS5_VERSION_ERROR = 1, SOCKS5_FORMAT_ERROR = 2, SOCKS5_INVALID_VALUE = 3, SOCKS5_USER_PASS_NOT_GIVEN = 4, SOCKS5_TCP_CLOSED = 5, HTTP_TUNNEL_FAILED = 6 } export declare enum MediaStreamType { RTC_MEDIA_STREAM_TYPE_AUDIO = 1, RTC_MEDIA_STREAM_TYPE_VIDEO = 2, RTC_MEDIA_STREAM_TYPE_BOTH = 3 } export declare enum MediaDeviceState { /** {en} * @brief Device started capturing * */ MEDIA_DEVICE_STATE_STARTED = 1, /** {en} * @brief Device stopped capturing * */ MEDIA_DEVICE_STATE_STOPPED = 2, /** {en} * @brief Runtime error
* For example, when the media device is expected to be working but no data is received. * */ MEDIA_DEVICE_STATE_RUNTIMEERROR = 3, /** {en} * @brief Device is added. * */ MEDIA_DEVICE_STATE_ADDED = 10, /** {en} * @brief Device is removed. * */ MEDIA_DEVICE_STATE_REMOVED = 11, /** {en} * @brief A Phone call interrupted the RTC call. RTC call will resume once the call ends. * */ MEDIA_DEVICE_STATE_INTERRUPTION_BEGAN = 12, /** {en} * @brief RTC call resumed from the interruption caused by a phone call. * */ MEDIA_DEVICE_STATE_INTERRUPTION_ENDED = 13 } export declare class Layout$Region { constructor(); userId(uid: String): this; roomId(roomId: String): this; zorder(zorder: int): this; alpha(alpha: double): this; mediaType(mediaType: int): this; streamType(streamType: int): this; renderMode(renderMode: int): this; position(x: double, y: double): this; size(width: double, height: double): this; sourceCropPosition(x: double, y: double): this; sourceCropSize(width: double, height: double): this; } export declare enum LocalProxyType { SOCKS5 = 1, HTTP_TUNNEL = 2 } export declare enum DivideModel { EFFECT = 0, DEFAULT = 1, value = 0 } export declare enum PlayState { PLAYING = 1, PAUSED = 2, STOPPED = 3, FAILED = 4, FINISHED = 5 } export declare class VoiceReverbConfig { constructor(roomSize: float, decayTime: float, damping: float, wetGain: float, dryGain: float, preDelay: float); roomSize: float; decayTime: float; damping: float; wetGain: float; dryGain: float; preDelay: float; } export declare enum AudioFrameType { FRAME_TYPE_PCM16 = 0 } export declare enum VideoSuperResolutionMode { VIDEO_SUPER_RESOLUTION_MODE_OFF = 0, VIDEO_SUPER_RESOLUTION_MODE_ON = 1 } export declare class PushSingleStreamParam { constructor(rid: String, uid: String, url: String, isScreen: boolean); constructor(); roomId: String; userId: String; url: String; isScreen: boolean; } export declare enum SubtitleState { SUBTITLE_STATE_STARTED = 0, SUBTITLE_STATE_STOPED = 1, SUBTITLE_STATE_ERROR = 2 } export declare enum RecordingFileType { AAC = 0, MP4 = 1 } export declare class RTCNativeLibraryLoader { load(libraryName: String): boolean; } export declare enum ScreenMediaType { SCREEN_MEDIA_TYPE_VIDEO_ONLY = 0, SCREEN_MEDIA_TYPE_AUDIO_ONLY = 1, SCREEN_MEDIA_TYPE_VIDEO_AND_AUDIO = 2 } export declare class RTCWatermarkConfig { constructor(visibleInPreview: boolean, positionInLandscapeMode: ByteWatermark, positionInPortraitMode: ByteWatermark); constructor(); visibleInPreview: boolean; positionInLandscapeMode: ByteWatermark; positionInPortraitMode: ByteWatermark; } export declare enum MixedStreamRenderMode { MIXED_STREAM_RENDER_MODE_HIDDEN = 1, MIXED_STREAM_RENDER_MODE_FIT = 2, MIXED_STREAM_RENDER_MODE_ADAPTIVE = 3 } export declare class SubtitleConfig { constructor(mode: SubtitleMode, targetLanguage: String); mode: SubtitleMode; targetLanguage: String; } export declare class ClientMixParam { constructor(); setClientMixUseAudioMixer(enable: Boolean): this; setClientMixUseOriginalFrame(enable: Boolean): this; setClientMixVideoFormat(format: TranscoderClientMixVideoFormat): void; } export declare enum VirtualBackgroundSourceType { COLOR = 0, IMAGE = 1 } export declare enum AudioRenderType { AUDIO_RENDER_TYPE_EXTERNAL = 0, AUDIO_RENDER_TYPE_INTERNAL = 1 } export declare enum VideoDeviceFacing { FRONT = 0, BACK = 1, UNKNOWN = 2 } export declare enum SubscribeFallbackOptions { SUBSCRIBE_FALLBACK_OPTIONS_DISABLED = 0, SUBSCRIBE_FALLBACK_OPTIONS_STREAM_LOW = 1, SUBSCRIBE_FALLBACK_OPTIONS_AUDIO_ONLY = 2 } export declare class MixedStreamAudioConfig { setChannels(channels: int): this; getChannels(): int; setSampleRate(sampleRate: int): this; getSampleRate(): int; setBitrate(bitrate: int): this; getBitrate(): int; setAudioCodec(audioCodec: MixedStreamAudioCodecType): this; getAudioCodec(): MixedStreamAudioCodecType; setAudioProfile(audioProfile: MixedStreamAudioProfile): this; getAudioProfile(): MixedStreamAudioProfile; } export declare enum BackgroundMode { BACKGROUND_A = 0, BACKGROUND_B = 1, BLUR = 2, NONE = 3, value = 0 } export declare class GLTextureVideoFrameBuilder { constructor(pixelFormat: VideoPixelFormat); setTimeStampUs(timeStampUs: long): this; setWidth(width: int): this; setHeight(height: int): this; setRotation(rotation: VideoRotation): this; setColorSpace(colorSpace: ColorSpace): this; setExternalDataInfo(externalDataInfo: ByteBuffer): this; setSupplementaryInfo(supplementaryInfo: ByteBuffer): this; setTextureID(textureID: int): this; /** * Set the texture ID of the video frame */ setGLSync(glSyncObj: long): this; setTextureMatrix(textureMatrix: Array): this; setEGLContext(eglContext: EGLContext): this; setReleaseCallback(releaseCallback: Runnable): this; build(): VideoFrame; } export declare enum ZoomDirectionType { CAMERA_MOVE_LEFT = 0, CAMERA_MOVE_RIGHT = 1, CAMERA_MOVE_UP = 2, CAMERA_MOVE_DOWN = 3, CAMERA_ZOOM_OUT = 4, CAMERA_ZOOM_IN = 5, CAMERA_RESET = 6 } export declare class StandardPitchInfo { static create(startTime: int, duration: int, pitch: int): StandardPitchInfo; constructor(startTime: int, duration: int, pitch: int); startTime: int; duration: int; pitch: int; } export declare enum AudioMixingType { AUDIO_MIXING_TYPE_PLAYOUT = 0, AUDIO_MIXING_TYPE_PUBLISH = 1, AUDIO_MIXING_TYPE_PLAYOUT_AND_PUBLISH = 2 } export declare enum AttenuationType { ATTENUATION_TYPE_NONE = 0, ATTENUATION_TYPE_LINEAR = 1, ATTENUATION_TYPE_EXPONENTIAL = 2 } export declare enum MediaPlayerCustomSourceStreamType { RAW = 0, ENCODED = 1 } export declare enum AlphaLayout { TOP = 0 } export declare class MixedStreamConfig { static defaultMixedStreamConfig(): MixedStreamConfig; setUserID(userID: String): this; getUserID(): String; setRoomID(roomID: String): this; getRoomID(): String; setPushURL(pushURL: String): this; getPushURL(): String; setExpectedMixingType(expectedMixingType: ByteRTCStreamMixingType): this; getExpectedMixingType(): ByteRTCStreamMixingType; setAudioConfig(audioConfig: MixedStreamAudioConfig): this; getAudioConfig(): MixedStreamAudioConfig; setServerControlConfig(serverControlConfig: MixedStreamServerControlConfig): this; getServerControlConfig(): MixedStreamServerControlConfig; setVideoConfig(videoConfig: MixedStreamVideoConfig): this; getVideoConfig(): MixedStreamVideoConfig; setClientMixConfig(clientMixConfig: MixedStreamClientMixConfig): this; setSpatialConfig(spatialConfig: MixedStreamSpatialConfig): this; getSpatialConfig(): MixedStreamSpatialConfig; setLayout(layout: MixedStreamLayoutConfig): this; getLayout(): MixedStreamLayoutConfig; getMixedStreamVideoConfigBFrame(): boolean; } export declare enum SEICountPerFrame { SEI_COUNT_PER_FRAME_SINGLE = 0, SEI_COUNT_PER_FRAME_MULTI = 1 } export declare enum RenderMode { ByteRTCRenderModeHidden = 1, ByteRTCRenderModeFit = 2, ByteRTCRenderModeFill = 3 } export declare enum NetworkType { UNKNOWN = -1, NONE = 0, MOBILE = 1, MOBILE_2G = 2, MOBILE_3G = 3, WIFI = 4, MOBILE_4G = 5, MOBILE_5G = 6 } export declare enum UserOfflineReason { ByteRTCUserOfflineReasonQuit = 0, ByteRTCUserOfflineReasonDropped = 1, ByteRTCUserOfflineReasonSwitchToInvisible = 2, ByteRTCUserOfflineReasonKickedByAdmin = 3 }