类型定义
本页列出 Android API 所有的类型定义。
EduContextRoomType
EduContextVideoRenderMode
视频渲染模式。
枚举值
- Hidden
- Hidden 模式。优先保证视窗被填满。视频尺寸等比缩放,直至整个视窗被视频填满。如果视频长宽与显示窗口不同,多出的视频将被截掉。
- Fit
- Fit 模式。优先保证视频内容全部显示。视频尺寸等比缩放,直至视频窗口的一边与视窗边框对齐。如果视频长宽与显示窗口不同,视窗上未被填满的区域将被涂黑。
AgoraEduContextVideoSourceType
AgoraEduContextAudioSourceType
AgoraEduContextMediaStreamType
AgoraEduContextVideoStreamSubscribeLevel
AgoraEduContextDeviceType
AgoraEduContextMediaSourceState
AgoraEduContextDeviceState2
EduContextUserLeftReason
AgoraEduContextClassState
AgoraEduContextUserRole
EduContextNetworkQuality
EduContextMirrorMode
EduContextConnectionState
FcrRecordingState
EduContextRenderConfig
视频渲染配置。
Kotlin
data class EduContextRenderConfig(
val renderMode: EduContextRenderMode = EduContextRenderMode.HIDDEN,
val mirrorMode: EduContextMirrorMode = EduContextMirrorMode.AUTO)
renderMode
视频渲染模式,详见 EduContextVideoRenderMode。
mirrorMode
镜像模式,详见 EduContextMirrorMode。
AgoraEduContextStreamInfo
流信息。
Kotlin
data class AgoraEduContextStreamInfo(
val streamUuid: String,
val streamName: String?,
val streamType: AgoraEduContextMediaStreamType,
val videoSourceType: AgoraEduContextVideoSourceType,
val audioSourceType: AgoraEduContextAudioSourceType,
var videoSourceState: AgoraEduContextMediaSourceState,
var audioSourceState: AgoraEduContextMediaSourceState,
var videoState: AgoraEduContextMediaState,
var audioState: AgoraEduContextMediaState,
var owner: AgoraEduContextUserInfo)
streamUuid
流 ID,String 型。
streamName
流名称,String 型。
streamType
流类型,详见 AgoraEduContextMediaStreamType。
videoSourceType
视频源类型,详见 AgoraEduContextVideoSourceType。
audioSourceType
音频源类型,详见 AgoraEduContextAudioSourceType。
videoSourceState
视频源状态,详见 AgoraEduContextMediaSourceState。
audioSourceState
音频源状态,详见 AgoraEduContextMediaSourceState。
owner
流所属的用户,详见 AgoraEduContextUserInfo。
AgoraEduContextUserInfo
用户基础信息。
Kotlin
data class AgoraEduContextUserInfo(
val userUuid: String,
val userName: String,
val role: AgoraEduContextUserRole = AgoraEduContextUserRole.Student)
userUuid
用户 ID,String 型。
userName
用户名称,String 型。
role
用户角色,详见 AgoraEduContextUserRole。
AgoraEduContextDeviceInfo
设备信息。
Kotlin
data class AgoraEduContextDeviceInfo(
val deviceId: String,
val deviceName: String,
val deviceType: AgoraEduContextDeviceType
)
deviceType
设备类型,详见 AgoraEduContextDeviceType。
deviceId
设备 ID,String 型。
deviceName
设备名称,String 型。
EduContextRoomInfo
房间信息。
Kotlin
data class EduContextRoomInfo(
val roomUuid: String,
val roomName: String,
val roomType: EduContextRoomType
)
roomUuid
房间 ID,String 型。
roomName
房间名称,String 型。
roomType
房间类型,详见 EduContextRoomType。
AgoraEduContextClassInfo
课堂信息。
Kotlin
data class AgoraEduContextClassInfo(
var state: AgoraEduContextClassState = AgoraEduContextClassState.Before,
val startTime: Long = 0L,
val duration: Long = 0L,
val closeDelay: Long = 0L
)
state
课堂状态,详见 AgoraEduContextClassState。
startTime
课堂开始时间,Long 型。
duration
课堂时长,Long 型。
closeDelay
拖堂时长,Long 型。
AgoraEduContextLocalStreamConfig
视频流配置。
Kotlin
data class AgoraEduContextLocalStreamConfig(
val width: Int,
val height: Int,
val frameRate: Int,
val bitRate: Int,
val mirror: Boolean
)
width
视频宽,Int 型,单位为 pixel,默认值为 320。
height
视频高,Int 型,单位为 pixel,默认值为 240。
frameRate
视频帧率,Int 型,单位为 fps,默认值为 15。
bitRate
视频码率,Int 型,单位为 Kbps,默认值为 200。
mirror
视频是否镜像,Bool 型,默认值为 false。
FcrAudioRawDataConfig
需要回调出的音频数据配置。
Kotlin
public class FcrAudioRawDataConfig {
public int sampleRate = 48000;
public int samplesPerChannel = 1024;
public int channels = 1;
public int mode = 0;
public int position = 2;
}
sampleRate
采样率,可设为 8000,16000,32000,44100 或 48000。默认值 48000。
samplesPerChannel
每次回调时每个声道的样本点个数。默认值 1024。
channels
单声道或双声道。默认值 1。
mode
对音频数据的操作权限,目前只读
Constants.RAW_AUDIO_FRAME_OP_MODE_READ_ONLY
。position
音频数据在管道中的位置,比如录制后、播放前等,可设为
IAudioFrameObserver.POSITION_RECORD
:录制后。IAudioFrameObserver.POSITION_BEFORE_MIXING
:多条音频流混合成一路即将播放的音频流前。IAudioFrameObserver.POSITION_MIXED
:所有远端与本地音频流都混合成一路音频流后。
FcrAudioRawData
音频数据。
Kotlin
public class FcrAudioRawData {
public int samplesPerChannel;
public int bytesPerSample;
public int channels;
public int sampleRate;
public ByteBuffer buffer;
}
samplesPerChannel
每个声道的采样点数。
bytesPerSample
每个样本的字节数,2 字节。
channels
声道数。
sampleRate
采样率。
buffer
指向音频数据内存的指针。buffer 的长度(字节) = (samplesPerChannel * channels * bytesPerSample)
FcrSnapshotInfo
截图信息。
Kotlin
class FcrSnapshotInfo {
var roomUuid: String? = null
var streamUuid: String? = null
var filePath: String? = null
var width: Int? = null
var height: Int? = null
}
roomUuid
房间 ID。
streamUuid
流 ID
filePath
截图保存地址。
width
图片宽度。
height
图片高度。
FcrMediaPacketStats
媒体包信息数据。
Kotlin
data class FcrMediaPacketStats(
var lastMileDelay: Int = 0,
var txPacketLossRate: Int = 0,
var rxPacketLossRate: Int = 0
)
自从
v2.8.60
lastMileDelay
客户端-接入服务器延时 (毫秒)。
txPacketLossRate
客户端上行发送到服务器的丢包率(%)。
rxPacketLossRate
服务器下行发送到客户端的丢包率(%)。
FcrPerformanceInfo
设备性能信息。
Kotlin
data class FcrPerformanceInfo(
var cpuTotalUsage: Double = 0.0,
var cpuAppUsage: Double = 0.0,
var memoryAppUsageRatio: Double = 0.0,
var memoryTotalUsageRatio: Double = 0.0,
var memoryAppUsageInKbytes: Int = 0,
)
自从
v2.8.60
cpuTotalUsage
当前系统的 CPU 使用率(%)。
cpuAppUsage
当前 App 的 CPU 使用率(%)。
memoryAppUsageRatio
当前 App 的内存占比(%)。
memoryTotalUsageRatio
当前系统的内存占比(%)。
memoryAppUsageInKbytes
当前 App 的内存大小(KB)。