public enum com.ss.video.rtc.engine.RtcEngine.RtcMode
引擎工作模式
| 类型 | 说明 |
|---|---|
| RTC_MODE_GENERAL(0) | 通用模式,该模式下只能进行普通会议模式的语音通话,开启自动发布订阅。 |
| RTC_MODE_LOCAL_AUDIO(1) | 游戏语音模式,该模式下关闭自动发布订阅,会按照游戏业务的策略进行主动发布订阅语音。 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.video.rtc.engine.RtcEngine.RtcMode.value()
获取当前值
返回值
当前值
public enum com.ss.video.rtc.engine.RtcEngine.RangeAudioMode
语音通话模式 在小队语音里用这个接口设置自己的发送模式
| 类型 | 说明 |
|---|---|
| RANGE_AUDIO_MODE_UNDEFINED(0) | 默认模式 |
| RANGE_AUDIO_MODE_TEAM(1) | 小队模式 |
| RANGE_AUDIO_MODE_WORLD(2) | 世界模式 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.video.rtc.engine.RtcEngine.RangeAudioMode.value()
获取当前值
返回值
当前值
public enum com.ss.video.rtc.engine.RtcEngine.BackgroundMode
背景模式 开启背景替换功能时生效,详见 replaceBackground。
| 类型 | 说明 |
|---|---|
| BACKGROUND_A(0) | 背景1 |
| BACKGROUND_B(1) | 背景2 |
| BLUR(2) | 虚化 |
| NONE(3) | 无 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.video.rtc.engine.RtcEngine.BackgroundMode.value()
获取 Background 的 int value
返回值
int 类型的 value
public enum com.ss.video.rtc.engine.RtcEngine.DivideModel
分割模型 开启背景替换功能时生效,详见replaceBackground。
| 类型 | 说明 |
|---|---|
| EFFECT(0) | effect |
| DEFAULT(1) | 自研 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.video.rtc.engine.RtcEngine.DivideModel.value()
DivideModel 的 int value
返回值
int 类型的 value
public enum com.ss.video.rtc.engine.RtcEngine.AudioPerfProfile
用户机型等级信息。 在部分应用场景下,需要关注用户机型的配置高低,根据不同的配置,选择不同复杂度的音频处理算法,在能耗、用户体验上进行折中。
| 类型 | 说明 |
|---|---|
| AUDIO_PERF_PROFILE_AUTO(0) | 自动策略,SDK 会在加入房间时上传机型信息。服务端根据机型信息判断性能级别,下发对应配置。 |
| AUDIO_PERF_PROFILE_LOW(1) | 低配策略,关闭 AEC、ANS、AGC 算法,播放 sample rate 为 16000。 策略内容可以定制,联系销售咨询具体方案 |
| AUDIO_PERF_PROFILE_MID(2) | 中配策略,开启 AEC、ANS、AGC 算法,播放 sample rate 为 16000。 策略内容可以定制,联系销售咨询具体方案 |
| AUDIO_PERF_PROFILE_HIGH(3) | 高配策略,开启 AEC、ANS、AGC 算法,播放 sample rate 为 48000。 策略内容可以定制,联系销售咨询具体方案 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.video.rtc.engine.RtcEngine.AudioPerfProfile.value()
AudioPerfProfile的int value
返回值
int类型的value
public enum com.ss.video.rtc.engine.RtcEngine.CLIENT_ROLE_TYPE
用户角色。房间模式为直播、游戏、云游戏模式时的可选用户角色。
用户可通过设置用户角色控制:1.发布/取消发布音视频流;2.用户自身是否在房间中隐身。设置用户角色参考 setClientRole 方法。
| 类型 | 说明 |
|---|---|
| CLIENT_ROLE_BROADCASTER | 主播角色。主播角色的用户既可以发布流到房间中,也可以从房间中订阅流,房间中的其他用户可以感知到该用户在房间中。 |
| CLIENT_ROLE_AUDIENCE | 观众角色。观众角色的用户只能从房间中订阅流,不能向房间中发布流,房间中的其他用户可以感知到该用户在房间中。 |
| CLIENT_ROLE_SILENT_AUDIENCE | 静默观众角色。静默观众角色的用户只能从房间中订阅流,不能向房间中发布流,房间中的其他用户无法感知到该用户在房间中。该用户加入退出房间等行为不会通知给房间中的其他用户。 |
public enum com.ss.video.rtc.engine.RtcEngine.CHANNEL_PROFILE_TYPE
房间模式。房间使用的场景模式。
通过设置房间模式,用户可以选择应用 SDK 针对不同房间模式场景的优化策略。设置房间模式参考 setChannelProfile 方法。
| 类型 | 说明 |
|---|---|
| CHANNEL_PROFILE_COMMUNICATION | 通信模式。通信模式下,无用户角色区分。适用于 IM 场景。 |
| CHANNEL_PROFILE_LIVE_BROADCASTING | 直播模式。直播模式下,有用户角色区分(用户角色参考 CLIENT_ROLE_TYPE)。适用于直播、教育大班课等场景。 |
| CHANNEL_PROFILE_GAME | 游戏模式。游戏模式下,有用户角色区分。 SDK 会使用低延时设置。适用于游戏场景。 |
| CHANNEL_PROFILE_CLOUD_GAME | 云游戏模式。云游戏模式下,有用户角色区分。 SDK 会开启 DataChannel (详见 sendMessage 方法)功能,并使用低延时设置。适用于云游戏场景。 |
public enum com.ss.video.rtc.engine.RtcEngine.SubscribeFallbackOptions
订阅回退选项。
| 类型 | 说明 |
|---|---|
| SUBSCRIBE_FALLBACK_OPTIONS_DISABLED(0) | 下行网络较弱时,不对音视频流作回退处理,默认值。 |
| SUBSCRIBE_FALLBACK_OPTIONS_STREAM_LOW(1) | 下行网络较弱时只接收视频小流。 |
| SUBSCRIBE_FALLBACK_OPTIONS_AUDIO_ONLY(2) | 下行网络较弱时,先尝试只接收视频小流;如果网络环境无法显示视频,则再回退到只接收远端订阅的音频流。 |
public enum com.ss.video.rtc.engine.RtcEngine.RemoteUserPriority
远端用户优先级,在性能不足需要回退时,会优先回退优先级低的用户的音视频流。
| 类型 | 说明 |
|---|---|
| REMOTE_USER_PRIORITY_LOW(0) | 用户优先级为低,默认值。 |
| REMOTE_USER_PRIORITY_MEDIUM(100) | 用户优先级为正常。 |
| REMOTE_USER_PRIORITY_HIGH(200) | 用户优先级为高。 |
public enum com.ss.video.rtc.engine.RtcEngine.ConnectionState
SDK 与信令服务器连接状态。
| 类型 | 说明 |
|---|---|
| CONNECTION_START | 占位,不使用。 |
| CONNECTION_STATE_DISCONNECTED | 连接断开。 |
| CONNECTION_STATE_CONNECTING | 首次连接,正在连接中。 |
| CONNECTION_STATE_CONNECTED | 首次连接成功。 |
| CONNECTION_STATE_RECONNECTING | 连接断开后重新连接中。 |
| CONNECTION_STATE_RECONNECTED | 连接断开后重连成功。 |
public enum com.ss.video.rtc.engine.RtcEngine.ProblemFeedback
音视频质量反馈问题类型
| 类型 | 说明 |
|---|---|
| PROBLEM_NONE(0) | 没有问题 |
| PROBLEM_OTHER_MSG (1) | 其他问题 |
| PROBLEM_AUDIO_NOT_CLEAR (1 << 1) | 声音不清晰 |
| PROBLEM_VIDEO_NOT_CLEAR (1 << 2) | 视频不清晰 |
| PROBLEM_SYNC (1 << 3) | 音视频不同步 |
| PROBLEM_AUDIO_LAGGING (1 << 4) | 音频卡顿 |
| PROBLEM_VIDEO_LAGGING (1 << 5) | 视频卡顿 |
| PROBLEM_CONNECT_FAILED (1 << 6) | 无法连接 |
| PROBLEM_AUDIO_DELAY (1 << 7) | 音频延迟 |
| PROBLEM_VIDEO_DELAY (1 << 8) | 视频延迟 |
| PROBLEM_DISCONNECT (1 << 9) | 连接断开 |
| PROBLEM_NO_AUDIO (1 << 10) | 无声音 |
| PROBLEM_NO_VIDEO (1 << 11) | 无画面 |
| PROBLEM_AUDIO_STRENGTH (1 << 12) | 声音过大或过小 |
| PROBLEM_ECHO (1 << 13) | 回声噪音 |
public @interface com.ss.video.rtc.engine.mediaio.RtcVideoFrame.BufferType
视频帧缓冲区格式
| 类型 | 名称 |
|---|---|
| int | RAWDATA |
| int | TEXTURE |
int com.ss.video.rtc.engine.mediaio.RtcVideoFrame.BufferType.RAWDATA = 0;
原始数据
int com.ss.video.rtc.engine.mediaio.RtcVideoFrame.BufferType.TEXTURE = 1;
纹理数据格式
public @interface com.ss.video.rtc.engine.mediaio.RtcVideoFrame.PixelFormat
视频帧数据格式
| 类型 | 名称 |
|---|---|
| int | I420 |
| int | NV21 |
| int | TEXTURE_2D |
| int | TEXTURE_OES |
int com.ss.video.rtc.engine.mediaio.RtcVideoFrame.PixelFormat.I420 = 1;
I420数据格式
int com.ss.video.rtc.engine.mediaio.RtcVideoFrame.PixelFormat.NV21 = 3;
NV21数据格式
int com.ss.video.rtc.engine.mediaio.RtcVideoFrame.PixelFormat.TEXTURE_2D = 10;
2d纹理格式
int com.ss.video.rtc.engine.mediaio.RtcVideoFrame.PixelFormat.TEXTURE_OES = 11;
oes纹理格式
public enum com.ss.video.rtc.engine.VideoStreamDescription.ScaleMode
缩放模式
| 类型 | 说明 |
|---|---|
| Auto(0) | 自动模式,目前默认是伸展 |
| Stretch(1) | 伸展模式 |
| FitWithCropping(2) | 保持比例裁剪 |
| FitWithFilling(3) | 保持比例缩放 |
public enum com.ss.video.rtc.engine.VideoStreamDescription.CodecMode
编码器Mode(使用软编码或者硬编码)
| 类型 | 说明 |
|---|---|
| AutoMode(0) | 自动模式 |
| HardwareMode(1) | 硬编码模式 |
| SoftwareMode(2) | 软编码模式 |
public enum com.ss.video.rtc.engine.VideoStreamDescription.VideoCodecType
编码模式(H264, ByteVC1)
| 类型 | 说明 |
|---|---|
| AudoCodec(0) | 自动选择编码模式 |
| H264Codec(1) | H264 |
| ByteVC1Codec(2) | ByteVC1 |
public enum com.ss.video.rtc.engine.VideoStreamDescription.EncoderPreference
编码策略偏好
| 类型 | 说明 |
|---|---|
| Disabled(0) | 无偏好 |
| MaintainFramerate(1) | 帧率优先 |
| MaintainQuality(2) | 质量优先 |
| Balance(3) | 平衡质量与帧率 |
public class com.ss.video.rtc.engine.live.LiveTranscoding
直播推流转码配置参数。
用户调用 enableLiveTranscoding 方法开启直播推流转码功能时,传入的合流转码配置参数。
| 类型 | 名称 |
|---|---|
| String | ACTION_START |
| String | ACTION_CHANGED |
| String | ACTION_STOPPED |
| 返回 | 名称 |
|---|---|
| static LiveTranscoding | getDefualtLiveTranscode |
| 返回 | 名称 |
|---|---|
| void | setUrl |
| void | setAction |
| void | setVideo |
| void | setAudio |
| void | setLayout |
| void | setAdvancedConfig |
| String | getUrl |
| VideoConfig | getVideo |
| AudioConfig | getAudio |
| Layout | getLayout |
public static final String com.ss.video.rtc.engine.live.LiveTranscoding.ACTION_START = "started";
public static final String com.ss.video.rtc.engine.live.LiveTranscoding.ACTION_CHANGED = "layoutChanged";
public static final String com.ss.video.rtc.engine.live.LiveTranscoding.ACTION_STOPPED = "stopped";
public static LiveTranscoding com.ss.video.rtc.engine.live.LiveTranscoding.getDefualtLiveTranscode()
获取默认的推流转码配置属性。
返回值
默认的推流转码配置属性。详见 LiveTranscoding 数据类型。
public void com.ss.video.rtc.engine.live.LiveTranscoding.setUrl(
String url)
设置推流 CDN 地址。
public void com.ss.video.rtc.engine.live.LiveTranscoding.setAction(
String action)
设置直播推流动作参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| action | String | 直播推流动作。可选取值如下: • ACTION_START: 开启直播推流功能 • ACTION_CHANGED: 更新视频合流布局 • ACTION_STOPPED: 停止直播推流功能 |
public void com.ss.video.rtc.engine.live.LiveTranscoding.setVideo(
VideoConfig video)
设置视频转码配置参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| video | VideoConfig | 视频转码配置参数。详见 LiveTranscoding.VideoConfig 数据类型。 |
public void com.ss.video.rtc.engine.live.LiveTranscoding.setAudio(
AudioConfig audio)
设置音频转码配置参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| audio | AudioConfig | 音频转码配置参数。详见 LiveTranscoding.AudioConfig 数据类型。 |
public void com.ss.video.rtc.engine.live.LiveTranscoding.setLayout(
Layout layout)
设置视频流合流整体布局信息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| layout | Layout | 视频流合流整体布局参数。详见 LiveTranscoding.Layout 数据类型。 |
public void com.ss.video.rtc.engine.live.LiveTranscoding.setAdvancedConfig(
JSONObject advancedConfig)
设置动态扩展自定义参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| advancedConfig | JSONObject | 动态扩展参数。由用户自定义。 |
public String com.ss.video.rtc.engine.live.LiveTranscoding.getUrl()
获取推流的 CDN 地址。
返回值
CDN 的 URL 地址。
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.getVideo()
获取视频转码配置参数。
返回值
当前视频转码配置参数。详见 LiveTranscoding.VideoConfig 数据类型。
public AudioConfig com.ss.video.rtc.engine.live.LiveTranscoding.getAudio()
获取音频转码配置参数。
返回值
当前音频转码配置参数。详见 LiveTranscoding.AudioConfig 数据类型。
public Layout com.ss.video.rtc.engine.live.LiveTranscoding.getLayout()
获取视频流合流整体布局信息。
返回值
当前视频流合流整体布局。详见 LiveTranscoding.Layout 数据类型。
public enum com.ss.video.rtc.engine.live.LiveTranscoding.AACProfile
AAC编码类型。
| 类型 | 说明 |
|---|---|
| LC("LC") | |
| MAIN("MAIN") | |
| HEV1("HEv1") | |
| HEV2("HEv2") |
| 返回 | 名称 |
|---|---|
| AACProfile | AACProfile |
| String | getValue |
com.ss.video.rtc.engine.live.LiveTranscoding.AACProfile.AACProfile(
String value)
public String com.ss.video.rtc.engine.live.LiveTranscoding.AACProfile.getValue()
public static class com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig
视频转码配置参数。
| 返回 | 名称 |
|---|---|
| VideoConfig | VideoConfig |
| VideoConfig | setCodec |
| VideoConfig | setFps |
| VideoConfig | setGop |
| VideoConfig | setLowLatency |
| VideoConfig | setKBitRate |
| VideoConfig | setWidth |
| VideoConfig | setHeight |
public com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.VideoConfig()
VideoConfig类型的默认构造方法。
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.setCodec(
String codec)
设置视频编码格式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| codec | String | 编码格式。 |
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.setFps(
int fps)
设置合流视频帧率信息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| fps | int | 合流的视频帧率。 |
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.setGop(
int gop)
设置视频 I 帧间隔。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| gop | int | 合流 I 帧间隔。 |
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.setLowLatency(
boolean lowLatency)
设置是否使用低延时特性。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| lowLatency | boolean | 是否使用低延时特性。取值含义如下: • true: 使用低延时特性 • false: 不使用低延时特性 |
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.setKBitRate(
int kBitRate)
设置合流视频码率,单位为 kbps 。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| kBitRate | int | 合流视频码率。 |
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.setWidth(
int width)
设置合流视频宽度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | int | 合流视频宽度。 |
public VideoConfig com.ss.video.rtc.engine.live.LiveTranscoding.VideoConfig.setHeight(
int height)
设置合流视频高度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| height | int | 合流视频高度。 |
public static class com.ss.video.rtc.engine.live.LiveTranscoding.AudioConfig
音频转码配置参数。
| 返回 | 名称 |
|---|---|
| AudioConfig | AudioConfig |
| AudioConfig | setCodec |
| AudioConfig | setKBitRate |
| AudioConfig | setSampleRate |
| AudioConfig | setChannels |
| AudioConfig | setAacProfile |
public com.ss.video.rtc.engine.live.LiveTranscoding.AudioConfig.AudioConfig()
public AudioConfig com.ss.video.rtc.engine.live.LiveTranscoding.AudioConfig.setCodec(
String codec)
设置音频编码格式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| codec | String | 音频编码格式。 |
public AudioConfig com.ss.video.rtc.engine.live.LiveTranscoding.AudioConfig.setKBitRate(
int kBitRate)
设置音频码率。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| kBitRate | int | 音频码率。单位为 kbps。可选取值:16, 32, 64。 |
public AudioConfig com.ss.video.rtc.engine.live.LiveTranscoding.AudioConfig.setSampleRate(
int sampleRate)
设置音频采样率。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| sampleRate | int | 音频采样率。单位为 kHz。可选取值:16, 32, 44.1, 48。 |
public AudioConfig com.ss.video.rtc.engine.live.LiveTranscoding.AudioConfig.setChannels(
int channels)
设置声道数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| channels | int | 音频声道数。 |
public AudioConfig com.ss.video.rtc.engine.live.LiveTranscoding.AudioConfig.setAacProfile(
AACProfile aacProfile)
设置 AAC 等级。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| aacProfile | AACProfile | AAC 登记。详见 AACProfile 类型。 |
public static class com.ss.video.rtc.engine.live.LiveTranscoding.Layout
视频流合流整体布局信息。
此数据类型为,开启直播推流转码功能,视频合流的完整信息。包括了参与合流的每路视频流的预设布局信息和合流背景信息等。
| 返回 | 名称 |
|---|---|
| Region[] | getRegions |
| void | setRegions |
| String | getAppData |
| void | setAppData |
| String | getBackgroundColor |
| void | setBackgroundColor |
public Region[] com.ss.video.rtc.engine.live.LiveTranscoding.Layout.getRegions()
获取用户布局信息列表。
返回值
获取当前合流的用户布局信息列表。
public void com.ss.video.rtc.engine.live.LiveTranscoding.Layout.setRegions(
Region[] regions)
设置用户布局信息列表。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| regions | Region[] | 用户布局信息列表。为 LiveTranscoding.Layout.Region 数据类型的数组。每一个该类型对象为一路单独的视频流的布局信息。 |
public String com.ss.video.rtc.engine.live.LiveTranscoding.Layout.getAppData()
获取透传的 App 数据。
返回值
当前透传的 App 数据。
public void com.ss.video.rtc.engine.live.LiveTranscoding.Layout.setAppData(
String appData)
设置透传的 App 数据。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| appData | String | 透传的 App 数据。 |
public String com.ss.video.rtc.engine.live.LiveTranscoding.Layout.getBackgroundColor()
获取画布的背景颜色。
返回值
当前画布的背景颜色。
public void com.ss.video.rtc.engine.live.LiveTranscoding.Layout.setBackgroundColor(
String backgroundColor)
设置画布的背景颜色。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| backgroundColor | String | 画布的背景颜色。 |
public static class com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region
单个视频流在合流中的布局信息。
此数据类型为,开启直播推流转码功能,多路视频流合流时,其中一路视频流在合流中的预设布局信息。
| 返回 | 名称 |
|---|---|
| Region | uid |
| Region | zorder |
| Region | alpha |
| Region | contentControl |
| Region | renderMode |
| Region | position |
| Region | size |
public Region com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region.uid(
String)
设置用户ID 。
此数据对象为一路远端视频流的合流布局信息,用户ID为远端视频流发布用户的用户ID 。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| uid | String | 用户ID。 |
public Region com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region.zorder(
int)
设置用户视频布局在画布中的层级。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| zorder | int | 用户视频布局在画布中的层级。取值范围为[0 - 100]。0为底层,值越大越上层。 |
public Region com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region.alpha(
double)
设置透明度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| alpha | double | 透明度。可选范围为[0 - 255]。 |
public Region com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region.contentControl(
int)
设置合流内容控制。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| contentControl | int | 合流内容控制。默认值为0,可选取值如下: • 0: 输出的混流包含音视频 • 1: 只包含音频 • 2: 表示只包含视频 |
public Region com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region.renderMode(
int)
设置视频显示模式。
详见 ByteRtcRenderMode 数据类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| renderMode | int | 视频显示模式。可选取值如下: • 1: 视频尺寸等比缩放,优先保证窗口被填满。当视频尺寸与显示窗口尺寸不一致时,多出的视频将被截掉。 • 2: 视频尺寸等比缩放,优先保证视频内容全部显示。当视频尺寸与显示窗口尺寸不一致时,会把窗口未被填满的区域填充成黑色。 • 3: 视频尺寸非等比例缩放,把窗口充满。当视频尺寸与显示窗口尺寸不一致时,视频高或宽方向会被拉伸。 |
public Region com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region.position(
double x,
double y)
设置用户视频布局的相对位置。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| x | double | 用户视频布局相对画布左侧的偏移量。相对值,范围为[0.0 - 1.0]。 |
| y | double | 用户视频布局相对画布顶端的偏移量。相对值,范围为[0.0 - 1.0]。 |
public Region com.ss.video.rtc.engine.live.LiveTranscoding.Layout.Region.size(
double width,
double height)
设置用户视频相对大小。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | double | 用户视频宽度相对用户原始视频宽度的比例。相对值,范围为[0.0 - 1.0]。 |
| height | double | 用户视频宽度相对用户原始视频宽度的比例。相对值,范围为[0.0 - 1.0]。 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.FallbackOrRecoverReason
远端订阅流发生回退或恢复的原因
| 类型 | 说明 |
|---|---|
| Unknown(-1) | 其他原因,非带宽和性能原因引起的回退或恢复。默认值 |
| SubscribeFallbackByBandwidth(0) | 由带宽不足导致的订阅端音视频流回退。 |
| SubscribeFallbackByPerformance(1) | 由性能不足导致的订阅端音视频流回退。 |
| SubscribeRecoverByBandwidth(2) | 由带宽恢复导致的订阅端音视频流恢复。 |
| SubscribeRecoverByPerformance(3) | 由性能恢复导致的订阅端音视频流恢复。 |
| PublishFallbackByBandwidth(4) | 由带宽不足导致的发布端音视频流回退。 |
| PublishFallbackByPerformance(5) | 由性能不足导致的发布端音视频流回退。 |
| PublishRecoverByBandwidth(6) | 由带宽恢复导致的发布端音视频流恢复。 |
| PublishRecoverByPerformance(7) | 由性能恢复导致的发布端音视频流恢复。 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStreamRemoveReason
房间内远端流移除原因。
房间内远端音视频流移除时,SDK 会通过 onStreamRemove 回调通知用户。此枚 举类型即为通知的远端流移除的原因。
| 类型 | 说明 |
|---|---|
| RtcStreamRemoveUnpublish | 远端用户停止发布流。 |
| RtcStreamRemovePublishFailed | 远端用户发布流失败。 |
| RtcStreamRemoveKeepLiveFailed | 保活失败。 |
| RtcStreamRemoveClientDisconnected | 远端用户断网。 |
| RtcStreamRemoveRepublish | 远端用户重新发布流。 |
| RtcStreamRemoveOtherReason | 其他原因。 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStreamState
本地音频流状态 SDK 通过 onLocalAudioStateChanged 回调本地音频流状态
| 类型 | 说明 |
|---|---|
| LOCAL_AUDIO_STREAM_STATE_STOPPED | 本地音频默认初始状态 麦克风停止工作时回调该状态,对应错误码 LOCAL_AUDIO_STREAM_ERROR_OKLocalAudioStreamError |
| LOCAL_AUDIO_STREAM_STATE_RECORDING | 本地音频录制设备启动成功 采集到音频首帧时回调该状态,对应错误码 LOCAL_AUDIO_STREAM_ERROR_OKLocalAudioStreamError |
| LOCAL_AUDIO_STREAM_STATE_ENCODING | 本地音频首帧编码成功 音频首帧编码成功时回调该状态,对应错误码 LOCAL_AUDIO_STREAM_ERROR_OKLocalAudioStreamError |
| LOCAL_AUDIO_STREAM_STATE_FAILED | 本地音频启动失败,在以下时机回调该状态: + 本地录音设备启动失败,对应错误码 LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURELocalAudioStreamError + 检测到没有录音设备权限,对应错误码 LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSIONLocalAudioStreamError + 音频编码失败,对应错误码 LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURELocalAudioStreamError |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStreamState
本地视频流状态 SDK通过 OnLocalVideoStateChangedonLocalVideoStateChanged 回调本地视频流状态
| 类型 | 说明 |
|---|---|
| LOCAL_VIDEO_STREAM_STATE_STOPPED | 本地视频默认初始状态, 本地采集关闭时回调该状态 对应错误码 LOCAL_VIDEO_STREAM_ERROR_OKLocalVideoStreamError |
| LOCAL_VIDEO_STREAM_STATE_RECORDING | 本地视频录制设备启动成功, 本地采集开启时回调该状态 对应错误码 LOCAL_VIDEO_STREAM_ERROR_OKLocalVideoStreamError |
| LOCAL_VIDEO_STREAM_STATE_ENCODING | 本地视频首帧编码成功, 本地视频首帧编码成功时回调该状态 对应错误码 LOCAL_VIDEO_STREAM_ERROR_OKLocalVideoStreamError |
| LOCAL_VIDEO_STREAM_STATE_FAILED | 本地视频启动失败,LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURELocalVideoStreamError 回调该方法即意味着视频设备启用失败,SDK会在以下时机回调该状态: + 本地视频采集设备启动失败,对应错误码 LOCAL_VIDEO_STREAM_ERROR_RECORD_FAILURELocalVideoStreamError + 检测到没有视频采集设备权限,对应错误码 LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSIONLocalVideoStreamError + 视频编码失败,对应错误码 LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURELocalVideoStreamError |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStreamError
本地视频状态改变时的错误码
| 类型 | 说明 |
|---|---|
| LOCAL_VIDEO_STREAM_ERROR_OK | 本地视频状态正常 |
| LOCAL_VIDEO_STREAM_ERROR_FAILURE | 视频流发布失败 |
| LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION | 没有权限启动本地视频录制设备 |
| LOCAL_VIDEO_STREAM_ERROR_DEVICE_BUSY | 本地视频录制设备被占用 |
| LOCAL_VIDEO_STREAM_ERROR_RECORD_FAILURE | 本地视频录制失败,建议检查录制设备是否正常工作 |
| LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE | 本地视频编码失败 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStreamError
本地音频流状态改变时的错误码 SDK 通过 onLocalAudioStateChanged 回调该错误码
| 类型 | 说明 |
|---|---|
| LOCAL_AUDIO_STREAM_ERROR_OK | 本地音频状态正常 |
| LOCAL_AUDIO_STREAM_ERROR_FAILURE | 本地音频出错原因未知 |
| LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSION | 没有权限启动本地音频录制设备 |
| LOCAL_AUDIO_STREAM_ERROR_DEVICE_BUSY | 本地音频录制设备已经在使用中 |
| LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURE | 本地音频录制失败,建议你检查录制设备是否正常工作 |
| LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURE | 本地音频编码失败 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioState
远端音频流状态 SDK 通过 onRemoteAudioStateChanged 回调该状态
| 类型 | 说明 |
|---|---|
| REMOTE_AUDIO_STATE_STOPPED | 远端音频流默认初始状态,在以下时机回调该状态: + 本地用户停止接收远端音频流,对应错误码 REMOTE_AUDIO_REASON_LOCAL_MUTEDRemoteAudioStateReason + 远端用户停止发送音频流,对应错误码 REMOTE_AUDIO_REASON_REMOTE_MUTEDRemoteAudioStateReason + 远端用户离开房间,对应错误码 REMOTE_AUDIO_REASON_REMOTE_OFFLINERemoteAudioStateReason |
| REMOTE_AUDIO_STATE_STARTING | 本地用户已接收远端音频首包 收到远端音频首包时回调该状态,对应错误码 REMOTE_AUDIO_REASON_LOCAL_UNMUTEDRemoteAudioStateReason |
| REMOTE_AUDIO_STATE_DECODING | 远端音频流正在解码,正常播放,在以下时机回调该状态: + 成功解码远端音频首帧,对应错误码 REMOTE_AUDIO_REASON_LOCAL_UNMUTEDRemoteAudioStateReason + 网络由阻塞恢复正常,对应错误码 REMOTE_AUDIO_REASON_NETWORK_RECOVERYRemoteAudioStateReason + 本地用户恢复接收远端音频流,对应错误码 REMOTE_AUDIO_REASON_LOCAL_UNMUTEDRemoteAudioStateReason + 远端用户恢复发送音频流,对应错误码 REMOTE_AUDIO_REASON_REMOTE_UNMUTEDRemoteAudioStateReason |
| REMOTE_AUDIO_STATE_FROZEN | 远端音频流卡顿 网络阻塞、丢包率大于40%时回调该状态,对应错误码 REMOTE_AUDIO_REASON_NETWORK_CONGESTIONRemoteAudioStateReason |
| REMOTE_AUDIO_STATE_FAILED | 远端音频流播放失败。 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStateReason
远端音频流状态改变的原因 SDK 通过 onRemoteAudioStateChanged 回调该错误码
| 类型 | 说明 |
|---|---|
| REMOTE_AUDIO_REASON_INTERNAL | 内部原因 |
| REMOTE_AUDIO_REASON_NETWORK_CONGESTION | 网络阻塞 |
| REMOTE_AUDIO_REASON_NETWORK_RECOVERY | 网络恢复正常 |
| REMOTE_AUDIO_REASON_LOCAL_MUTED | 本地用户停止接收远端音频流 |
| REMOTE_AUDIO_REASON_LOCAL_UNMUTED | 本地用户恢复接收远端音频流 |
| REMOTE_AUDIO_REASON_REMOTE_MUTED | 远端用户停止发送音频流 |
| REMOTE_AUDIO_REASON_REMOTE_UNMUTED | 远端用户恢复发送音频流 |
| REMOTE_AUDIO_REASON_REMOTE_OFFLINE | 远端用户离开房间 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoState
远端视频流状态
| 类型 | 说明 |
|---|---|
| REMOTE_VIDEO_STATE_STOPPED | 远端视频流默认初始状态 在以下时机回调该状态: + 本地用户停止接收远端视频流,对应错误码 REMOTE_VIDEO_REASON_LOCAL_MUTEDRemoteVideoStateReason + 远端用户停止发送视频流,对应错误码 REMOTE_VIDEO_REASON_REMOTE_MUTEDRemoteVideoStateReason + 远端用户离开房间,对应错误码 REMOTE_VIDEO_REASON_REMOTE_OFFLINERemoteVideoStateReason |
| REMOTE_VIDEO_STATE_STARTING | 本地用户已接收远端视频首包 收到远端视频首包时回调该状态,对应错误码 REMOTE_VIDEO_REASON_LOCAL_UNMUTEDRemoteVideoStateReason |
| REMOTE_VIDEO_STATE_DECODING | 远端视频流正在解码,正常播放 在以下时机回调该状态: + 成功解码远端视频首帧,对应错误码 REMOTE_VIDEO_REASON_LOCAL_UNMUTEDRemoteVideoStateReason + 网络由阻塞恢复正常,对应错误码 REMOTE_VIDEO_REASON_NETWORK_RECOVERYRemoteVideoStateReason + 本地用户恢复接收远端视频流,对应错误码 REMOTE_VIDEO_REASON_LOCAL_UNMUTEDRemoteVideoStateReason + 远端用户恢复发送视频流,对应错误码 REMOTE_VIDEO_REASON_REMOTE_UNMUTEDRemoteVideoStateReason |
| REMOTE_VIDEO_STATE_FROZEN | 远端音频流卡顿 网络阻塞、丢包率大于40%时回调该状态,对应错误码 REMOTE_VIDEO_REASON_NETWORK_CONGESTIONRemoteVideoStateReason |
| REMOTE_VIDEO_STATE_FAILED | 远端音频流播放失败 |
public enum com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStateReason
远端视频流状态改变的原因
| 类型 | 说明 |
|---|---|
| REMOTE_VIDEO_REASON_INTERNAL | 内部原因 |
| REMOTE_VIDEO_REASON_NETWORK_CONGESTION | 网络阻塞 |
| REMOTE_VIDEO_REASON_NETWORK_RECOVERY | 网络恢复正常 |
| REMOTE_VIDEO_REASON_LOCAL_MUTED | 本地用户停止接收远端视频流或本地用户禁用视频模块 |
| REMOTE_VIDEO_REASON_LOCAL_UNMUTED | 本地用户恢复接收远端视频流或本地用户启用视频模块 |
| REMOTE_VIDEO_REASON_REMOTE_MUTED | 远端用户停止发送视频流或远端用户禁用视频模块 |
| REMOTE_VIDEO_REASON_REMOTE_UNMUTED | 远端用户恢复发送视频流或远端用户启用视频模块 |
| REMOTE_VIDEO_REASON_REMOTE_OFFLINE | 远端用户离开频道 |
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats
通话相关的统计信息
| 类型 | 名称 |
|---|---|
| int | totalDuration |
| long | txBytes |
| long | rxBytes |
| int | txKBitRate |
| int | rxKBitRate |
| int | txAudioKBitRate |
| int | rxAudioKBitRate |
| int | txVideoKBitRate |
| int | rxVideoKBitRate |
| int | users |
| double | cpuTotalUsage |
| double | cpuAppUsage |
| 返回 | 名称 |
|---|---|
| void | reset |
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.totalDuration;
通话时长,单位为秒,累计值
public long com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.txBytes;
发送字节数(bytes),累计值
public long com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.rxBytes;
接收字节数(bytes),累计值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.txKBitRate;
发送码率(kbps),瞬时值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.rxKBitRate;
接收码率(kbps),瞬时值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.txAudioKBitRate;
音频包的发送码率(kbps),瞬时值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.rxAudioKBitRate;
音频接收码率(kbps),瞬时值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.txVideoKBitRate;
视频发送码率(kbps),瞬时值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.rxVideoKBitRate;
视频接收码率(kbps),瞬时值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.users;
当前房间内的人数。
public double com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.cpuTotalUsage;
当前系统的 CPU 使用率 (%)
public double com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.cpuAppUsage;
当前 App 的 CPU 使用率 (%)
public void com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RtcStats.reset()
重置所有的 RtcStats 成员变量的值,重新开始统计
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.AudioVolumeInfo
声音音量信息。包含每个说话者的用户 id 和音量信息
| 类型 | 名称 |
|---|---|
| String | uid |
| int | volume |
public String com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.AudioVolumeInfo.uid;
说话者的用户 id
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.AudioVolumeInfo.volume;
说话者的音量,范围为 0(最低)- 255(最高)
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats
远端视频相关的统计信息
| 类型 | 名称 |
|---|---|
| String | uid |
| int | width |
| int | height |
| float | videoLossRate |
| float | receivedKBitrate |
| int | decoderOutputFrameRate |
| int | rendererOutputFrameRate |
| int | stallCount |
| int | stallDuration |
| long | e2eDelay |
| boolean | isScreen |
| int | statsInterval |
| int | rtt |
| int | frozenRate |
| int | videoIndex |
public String com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.uid;
用户 id,指明是哪个用户的视频流
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.width;
远端视频流宽度
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.height;
远端视频流高度
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.videoLossRate;
视频丢包率,百分比
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.receivedKBitrate;
接收码率,单位为 kbps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.decoderOutputFrameRate;
解码器输出帧率,单位 fps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.rendererOutputFrameRate;
渲染帧率,单位 fps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.stallCount;
卡顿次数
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.stallDuration;
卡顿时长,单位毫秒
public long com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.e2eDelay;
用户体验级别的端到端延时,从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为毫秒
public boolean com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.isScreen;
是否是屏幕流
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.statsInterval;
统计信息的时间间隔,单位毫秒
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.rtt;
往返时延,单位为毫秒
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.frozenRate;
远端用户在加入房间后发生视频卡顿的累计时长占视频总有效时长的百分比
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteVideoStats.videoIndex;
对应多种分辨率的流的下标,详见 VideoStreamDescription
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats
本地视频相关的统计信息
| 类型 | 名称 |
|---|---|
| float | sentKBitrate |
| int | inputFrameRate |
| int | sentFrameRate |
| int | encoderOutputFrameRate |
| int | rendererOutputFrameRate |
| int | targetKBitrate |
| int | targetFrameRate |
| int | statsInterval |
| float | videoLossRate |
| int | rtt |
| int | encodedBitrate |
| int | encodedFrameWidth |
| int | encodedFrameHeight |
| int | encodedFrameCount |
| int | codecType |
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.sentKBitrate;
发送比特率
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.inputFrameRate;
采集帧率,单位 fps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.sentFrameRate;
发送帧率,单位 fps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.encoderOutputFrameRate;
编码器输出帧率,单位 fps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.rendererOutputFrameRate;
本地渲染帧率,单位 fps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.targetKBitrate;
目标发送码率,单位 kbps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.targetFrameRate;
目标发送帧率,单位 fps
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.statsInterval;
统计信息的时间间隔,单位毫秒
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.videoLossRate;
视频丢包率,单位百分比
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.rtt;
往返时延,单位为毫秒
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.encodedBitrate;
视频编码码率(kbps)
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.encodedFrameWidth;
视频编码宽度(px)
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.encodedFrameHeight;
视频编码高度(px)
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.encodedFrameCount;
视频发送的帧数,累计值
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalVideoStats.codecType;
视频的编码类型
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats
远端音频流统计信息。
本地用户订阅远端音频流成功后,SDK 会周期性(2s)的通过 onRemoteAudioStats:onRemoteAudioStats 回调事件通知用户订阅的音频流在此次统计周期内的状况。此数据结构即为回调给用户的参数类型。
| 类型 | 名称 |
|---|---|
| String | uid |
| float | audioLossRate |
| float | receivedKBitrate |
| int | stallCount |
| int | stallDuration |
| long | e2eDelay |
| int | playoutSampleRate |
| int | statsInterval |
| int | rtt |
| int | quality |
| int | jitterBufferDelay |
| int | numChannels |
| int | receivedSampleRate |
| int | frozenRate |
| int | concealedSamples |
| int | concealmentEvent |
| int | decSampleRate |
| int | decDuration |
public String com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.uid;
用户ID 。远端音频流发布用户的用户ID 。
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.audioLossRate;
音频丢包率。统计周期内的音频下行丢包率,取值范围为 [0, 1] 。
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.receivedKBitrate;
接收码率。统计周期内的音频接收码率,单位为 kbps 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.stallCount;
音频卡顿次数。统计周期内的卡顿次数。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.stallDuration;
音频卡顿时长。统计周期内的卡顿时长,单位为 ms 。
public long com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.e2eDelay;
用户体验级别的端到端延时。从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为 ms 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.playoutSampleRate;
播放采样率。统计周期内的音频播放采样率信息,单位为 Hz 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.statsInterval;
统计间隔。此次统计周期的间隔,单位为 ms 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.rtt;
往返时延。单位为 ms 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.quality;
远端用户发送的音频流质量。值含义参考 onNetworkQuality 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.jitterBufferDelay;
音频发送端到接收端的网络延迟。单位为 ms 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.numChannels;
音频声道数。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.receivedSampleRate;
音频接收采样率。统计周期内接收到的远端音频采样率信息,单位为 Hz 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.frozenRate;
远端用户在加入房间后发生音频卡顿的累计时长占音频总有效时长的百分比。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.concealedSamples;
音频 PLC 样点总个数。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.concealmentEvent;
PLC 累计次数。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.decSampleRate;
音频解码采样率。统计周期内的音频解码采样率信息,单位为 Hz 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.RemoteAudioStats.decDuration;
解码时长。单位为 s 。
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats
本地音频流统计信息。
本地用户发布音频流成功后,SDK 会周期性(2s)的通过 onLocalAudioStats:onLocalAudioStats 回调事件通知用户发布的音频流在此次统计周期内的状况。此数据结构即为回调给用户的参数类型。
| 类型 | 名称 |
|---|---|
| float | audioLossRate |
| float | sendKBitrate |
| int | recordSampleRate |
| int | statsInterval |
| int | rtt |
| int | numChannels |
| int | sentSampleRate |
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats.audioLossRate;
音频丢包率。此次统计周期内的音频上行丢包率,取值范围为 [0, 1] 。
public float com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats.sendKBitrate;
发送的码率。此次统计周期内的音频发送码率,单位为 kbps 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats.recordSampleRate;
采集采样率。音频采集采样率信息,单位为 Hz 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats.statsInterval;
统计间隔。此次统计周期的间隔,单位为 ms 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats.rtt;
往返时延。单位为 ms 。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats.numChannels;
音频声道数。
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.LocalAudioStats.sentSampleRate;
发送采样率。音频发送采样率信息,单位为 Hz 。
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.SourceWantedData
性能回退相关数据
| 类型 | 名称 |
|---|---|
| int | width |
| int | height |
| int | frameRate |
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.SourceWantedData.width;
推荐视频输入宽
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.SourceWantedData.height;
推荐视频输入高
public int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.SourceWantedData.frameRate;
推荐视频输入帧率,单位 fps
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceType
媒体设备类型
| 类型 | 名称 |
|---|---|
| int | kAudioPlayoutDevice |
| int | kAudioRecordingDevice |
| int | kVideoRenderDevice |
| int | kVideoCaptureDevice |
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceType.kAudioPlayoutDevice = 0;
音频播放设备类型
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceType.kAudioRecordingDevice = 1;
音频录制设备类型
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceType.kVideoRenderDevice = 2;
视频渲染设备类型,该类型暂无使用
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceType.kVideoCaptureDevice = 3;
视频采集设备类型
public static class com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceState
媒体设备状态
| 类型 | 名称 |
|---|---|
| int | kMediaDeviceStateStarted |
| int | kMediaDeviceStateStartFailed |
| int | kMediaDeviceStateStopped |
| int | kMediaDeviceStateStopFailed |
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceState.kMediaDeviceStateStarted = 0;
设备已开启
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceState.kMediaDeviceStateStartFailed = 1;
设备开启失败
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceState.kMediaDeviceStateStopped = 2;
设备已停止
public static final int com.ss.video.rtc.engine.handler.IRtcEngineEventHandler.MediaDeviceState.kMediaDeviceStateStopFailed = 3;
设备停止失败