public class com.ss.bytertc.engine.data.AudioFormat
java音频参数格式
| 类型 | 名称 |
|---|---|
| AudioSampleRate | sampleRate |
| AudioChannel | channel |
public AudioSampleRate com.ss.bytertc.engine.data.AudioFormat.sampleRate;
java音频采样率,参看 AudioSampleRate。
public AudioChannel com.ss.bytertc.engine.data.AudioFormat.channel;
java音频声道,参看 AudioChannel。
public class com.ss.bytertc.engine.data.AudioMixingConfig
java混音配置
| 类型 | 名称 |
|---|---|
| AudioMixingType | type |
| int | playCount |
| int | position |
| long | callbackOnProgressInterval |
public AudioMixingType com.ss.bytertc.engine.data.AudioMixingConfig.type;
java混音播放类型,详见 AudioMixingType
public int com.ss.bytertc.engine.data.AudioMixingConfig.playCount;
java混音播放次数
public int com.ss.bytertc.engine.data.AudioMixingConfig.position;
java混音时音频文件播放进度条位置,参数为整数,单位为毫秒
public long com.ss.bytertc.engine.data.AudioMixingConfig.callbackOnProgressInterval;
java设置音频文件播放进度回调的时间间隔,参数为大于 0 的 10 的倍数,单位为毫秒,设置后 SDK 将按照设置的值触发 onAudioMixingPlayingProgress 回调,默认不回调。
public enum com.ss.bytertc.engine.data.AudioMixingDualMonoMode
java混音播放声道类型
| 类型 | 说明 |
|---|---|
| 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) | 能同时听到音频文件中左右声道的音频 |
public enum com.ss.bytertc.engine.data.AudioMixingError
java混音错误码。
| 类型 | 说明 |
|---|---|
| AUDIO_MIXING_ERROR_OK(0) | 正常 |
| AUDIO_MIXING_ERROR_PRELOAD_FAILED(1) | 预加载失败。找不到混音文件或者文件长度超出 20s |
| AUDIO_MIXING_ERROR_START_FAILED(2) | 混音开启失败。找不到混音文件或者混音文件打开失败 |
| AUDIO_MIXING_ERROR_ID_NOT_FOUND(3) | 混音 ID 异常 |
| AUDIO_MIXING_ERROR_SET_POSITION_FAILED(4) | 设置混音文件的播放位置出错 |
| AUDIO_MIXING_ERROR_INVALID_VOLUME(5) | 音量参数不合法,仅支持设置的音量值为[0, 400] |
| AUDIO_MIXING_ERROR_LOAD_CONFLICT(6) | 播放的文件与预加载的文件不一致。请先使用 unloadAudioMixing 卸载此前的文件。 |
| 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) | 设置混音文件的播放速度不合法 |
public enum com.ss.bytertc.engine.data.AudioMixingState
java音频混音文件播放状态。
| 类型 | 说明 |
|---|---|
| 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) | 准备PCM混音 |
| AUDIO_MIXING_STATE_PCM_DISABLED(7) | PCM混音播放结束 |
public enum com.ss.bytertc.engine.data.AudioMixingType
java混音播放类型
| 类型 | 说明 |
|---|---|
| AUDIO_MIXING_TYPE_PLAYOUT(0) | 仅本地播放 |
| AUDIO_MIXING_TYPE_PUBLISH(1) | 仅远端播放 |
| AUDIO_MIXING_TYPE_PLAYOUT_AND_PUBLISH(2) | 本地和远端同时播放 |
public enum com.ss.bytertc.engine.data.AudioPlaybackDevice
java音频播放设备
音频设备变化时 SDK 通过 onAudioPlaybackDeviceChanged 回调当前音频播放设备。
| 类型 | 说明 |
|---|---|
| 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) | USB设备 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.AudioPlaybackDevice.value()
java获取当前值
返回值
当前值
public enum com.ss.bytertc.engine.data.AudioProcessorMethod
java返回给音频处理器的音频类型。
| 类型 | 说明 |
|---|---|
| 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) | 屏幕共享音频。 |
public class com.ss.bytertc.engine.data.AudioPropertiesConfig
java音频属性信息提示的相关配置
| 类型 | 名称 |
|---|---|
| int | interval |
| boolean | enable_spectrum |
| boolean | enable_vad |
| AudioReportMode | local_main_report_mode |
| AudioPropertiesMode | audio_report_mode |
public int com.ss.bytertc.engine.data.AudioPropertiesConfig.interval;
java信息提示间隔,单位:ms
<= 0: 关闭信息提示 (0,100]: 开启信息提示,不合法的 interval 值,SDK 自动设置为 100ms > 100: 开启信息提示,并将信息提示间隔设置为此值 public boolean com.ss.bytertc.engine.data.AudioPropertiesConfig.enable_spectrum = false;
java是否开启音频频谱检测
public boolean com.ss.bytertc.engine.data.AudioPropertiesConfig.enable_vad = false;
java是否开启人声检测 (VAD)
public AudioReportMode com.ss.bytertc.engine.data.AudioPropertiesConfig.local_main_report_mode = AudioReportMode.AUDIO_REPORT_MODE_NORMAL;
java音量回调模式。详见 AudioReportMode。
public AudioPropertiesMode com.ss.bytertc.engine.data.AudioPropertiesConfig.audio_report_mode = AudioPropertiesMode.AUDIO_PROPERTIES_MODE_MIC/;"
java设置 onLocalAudioPropertiesReport 回调是否包含本地混音音频数据。参看 AudioPropertiesMode。
默认仅包含本地麦克风采集的音频数据和本地屏幕音频采集数据。
public class com.ss.bytertc.engine.data.AudioPropertiesInfo
java音频属性信息
| 类型 | 名称 |
|---|---|
| int | linearVolume |
| int | nonlinearVolume |
| float[] | spectrum |
| int | vad |
public int com.ss.bytertc.engine.data.AudioPropertiesInfo.linearVolume;
java线性音量,与原始音量呈线性关系,数值越大,音量越大。取值范围是:[0,255]。
public int com.ss.bytertc.engine.data.AudioPropertiesInfo.nonlinearVolume;
java非线性音量。由原始音量的对数值转化而来,因此在中低音量时更灵敏,可以用作 Active Speaker(房间内最活跃用户)的识别。取值范围是:[-127,0],单位 dB。
public float[] com.ss.bytertc.engine.data.AudioPropertiesInfo.spectrum = new float[SPECTRUM_SIZE];
java频谱数组
public int com.ss.bytertc.engine.data.AudioPropertiesInfo.vad;
java人声检测(VAD)结果
public enum com.ss.bytertc.engine.data.AudioPropertiesMode
java音频信息提示中是否包含本地混音音频数据。
| 类型 | 说明 |
|---|---|
| AUDIO_PROPERTIES_MODE_MICROPHONE(0) | 音频信息提示中,仅包含本地麦克风采集的音频数据和本地屏幕音频采集数据。 |
| AUDIO_PROPERTIES_MODE_AUDIOMIXING(1) | 音频信息提示中,除本地麦克风采集的音频数据和本地屏幕音频采集数据外,还包含本地混音的音频数据。 |
public enum com.ss.bytertc.engine.data.AudioRenderType
java音频输出源类型
| 类型 | 说明 |
|---|---|
| AUDIO_RENDER_TYPE_EXTERNAL(0) | 自定义渲染 |
| AUDIO_RENDER_TYPE_INTERNAL(1) | 内部渲染 |
public enum com.ss.bytertc.engine.data.AudioReportMode
java音量回调模式。
| 类型 | 说明 |
|---|---|
| AUDIO_REPORT_MODE_NORMAL(0) | 默认始终开启音量回调。 |
| AUDIO_REPORT_MODE_DISCONNECT(1) | 可见用户进房并停止推流后,关闭音量回调。 |
| AUDIO_REPORT_MODE_RESET(2) | 可见用户进房并停止推流后,开启音量回调,回调值重置为0。 |
public enum com.ss.bytertc.engine.data.AudioRoute
java音频播放路由
| 类型 | 说明 |
|---|---|
| AUDIO_ROUTE_UNKNOWN(-1) | 未知设备 |
| AUDIO_ROUTE_HEADSET(1) | 有线耳机 |
| AUDIO_ROUTE_EARPIECE(2) | 听筒。设备自带的,一般用于通话的播放硬件。 |
| AUDIO_ROUTE_SPEAKERPHONE(3) | 扬声器。设备自带的,一般用于免提播放的硬件。 |
| AUDIO_ROUTE_HEADSET_BLUETOOTH(4) | 蓝牙耳机 |
| AUDIO_ROUTE_HEADSET_USB(5) | USB 设备 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.AudioRoute.value()
java获取当前值
返回值
当前值
public enum com.ss.bytertc.engine.data.AudioSourceType
java音频输入源类型
| 类型 | 说明 |
|---|---|
| AUDIO_SOURCE_TYPE_EXTERNAL(0) | 自定义采集音频源 |
| AUDIO_SOURCE_TYPE_INTERNAL(1) | RTC SDK 内部采集音频源 |
public enum com.ss.bytertc.engine.data.AVSyncState
java音视频同步状态
| 类型 | 说明 |
|---|---|
| AV_SYNC_STATE_STREAM_SYNC_BEGIN(0) | 音视频开始同步 |
| AV_SYNC_STATE_AUDIO_STREAM_REMOVE(1) | 音视频同步过程中音频移除,但不影响当前的同步关系 |
| AV_SYNC_STATE_VIDEO_STREAM_REMOVE(2) | 音视频同步过程中视频移除,但不影响当前的同步关系 |
public enum com.ss.bytertc.engine.data.CameraId
java摄像头类型
| 类型 | 说明 |
|---|---|
| CAMERA_ID_FRONT (0) | 前置摄像头 |
| CAMERA_ID_BACK (1) | 后置摄像头(默认设置) |
| CAMERA_ID_EXTERNAL (2) | 外接摄像头 |
| CAMERA_ID_INVALID (3) | 无效值 |
public class com.ss.bytertc.engine.data.CloudProxyInfo
java云代理信息
| 类型 | 名称 |
|---|---|
| String | cloudProxyIp |
| int | cloudProxyPort |
public String com.ss.bytertc.engine.data.CloudProxyInfo.cloudProxyIp;
java云代理服务器 IP
public int com.ss.bytertc.engine.data.CloudProxyInfo.cloudProxyPort;
java云代理服务器端口
public enum com.ss.bytertc.engine.data.ColorSpace
java视频帧色彩空间
| 类型 | 说明 |
|---|---|
| kColorSpaceUnknown(0) | 色彩空间未知 |
| kColorSpaceYCbCrBT601LimitedRange(1) | BT.601数字编码标准,色彩空间[16-235] |
| kColorSpaceYCbCrBT601FullRange(2) | BT.601数字编码标准,颜色空间[0-255] |
| kColorSpaceYCbCrBT709LimitedRange(3) | BT.7091数字编码标准,颜色空间[16-235] |
| kColorSpaceYCbCrBT709FullRange(4) | BT.7091数字编码标准,颜色空间[0-255] |
public enum com.ss.bytertc.engine.data.EarMonitorMode
java是否开启耳返功能。
| 类型 | 说明 |
|---|---|
| EAR_MONITOR_MODE_OFF(0) | 关闭(默认设置) |
| EAR_MONITOR_MODE_ON(1) | 开启 |
public enum com.ss.bytertc.engine.data.EffectBeautyMode
java基础美颜模式
| 类型 | 说明 |
|---|---|
| EFFECT_WHITE_MODE(0) | 美白 |
| EFFECT_SMOOTH_MODE(1) | 磨皮 |
| EFFECT_SHARPEN_MODE(2) | 锐化 |
public class com.ss.bytertc.engine.data.ForwardStreamEventInfo
java跨房间转发媒体流过程中的不同目标房间发生的事件
| 类型 | 名称 |
|---|---|
| String | roomId |
| ForwardStreamEvent | event |
public String com.ss.bytertc.engine.data.ForwardStreamEventInfo.roomId;
java跨房间转发媒体流过程中的发生该事件的目标房间 ID
空字符串代表所有目标房间
public ForwardStreamEvent com.ss.bytertc.engine.data.ForwardStreamEventInfo.event;
java跨房间转发媒体流过程中该目标房间发生的事件,参看 ForwardStreamEvent。
public enum com.ss.bytertc.engine.data.ForwardStreamEventInfo.ForwardStreamEvent
java跨房间转发媒体流过程中该目标房间发生的事件
| 类型 | 说明 |
|---|---|
| FORWARD_STREAM_EVENT_DISCONNECTED(0) | 本端与服务器网络连接断开,暂停转发。 |
| FORWARD_STREAM_EVENT_CONNECTED(1) | 本端与服务器网络连接恢复,转发服务连接成功。 |
| FORWARD_STREAM_EVENT_INTERRUPT(2) | 转发中断。转发过程中,如果相同 user_id 的用户进入目标房间,转发中断。 |
| FORWARD_STREAM_EVENT_DST_ROOM_UPDATED(3) | 目标房间已更新,由 updateForwardStreamToRooms 触发。 |
| FORWARD_STREAM_EVENT_UN_EXPECT_API_CALL(4) | API 调用时序错误。例如,在调用 startForwardStreamToRooms 之前调用 updateForwardStreamToRooms 。 |
public class com.ss.bytertc.engine.data.ForwardStreamInfo
java媒体流跨房间转发的目标房间的相关信息
| 类型 | 名称 |
|---|---|
| String | roomId |
| String | token |
public String com.ss.bytertc.engine.data.ForwardStreamInfo.roomId;
java跨房间转发媒体流过程中目标房间 ID
public String com.ss.bytertc.engine.data.ForwardStreamInfo.token;
java使用转发目标房间 RoomID 和 UserID 生成的 Token。
测试时可使用控制台生成临时 Token,正式上线需要使用密钥 SDK 在你的服务端生成并下发 Token。
如果 Token 无效,转发失败。
public class com.ss.bytertc.engine.data.ForwardStreamStateInfo
java跨房间转发媒体流过程中的不同目标房间的状态和错误信息
| 类型 | 名称 |
|---|---|
| String | roomId |
| ForwardStreamState | state |
| ForwardStreamError | error |
public String com.ss.bytertc.engine.data.ForwardStreamStateInfo.roomId;
java跨房间转发媒体流过程中目标房间 ID
空字符串代表所有目标房间
public ForwardStreamState com.ss.bytertc.engine.data.ForwardStreamStateInfo.state;
java跨房间转发媒体流过程中该目标房间的状态,参看 ForwardStreamState
public ForwardStreamError com.ss.bytertc.engine.data.ForwardStreamStateInfo.error;
java跨房间转发媒体流过程中该目标房间抛出的错误码,参看 ForwardStreamError
public enum com.ss.bytertc.engine.data.ForwardStreamStateInfo.ForwardStreamState
java媒体流跨房间转发状态
| 类型 | 说明 |
|---|---|
| FORWARD_STREAM_STATE_IDLE(0) | 空闲状态 + 成功调用 stopForwardStreamToRooms 后,所有目标房间为空闲状态。 + 成功调用 updateForwardStreamToRooms 减少目标房间后,本次减少的目标房间为空闲状态。 |
| FORWARD_STREAM_STATE_SUCCESS(1) | 开始转发 + 调用 startForwardStreamToRooms 成功向所有房间开始转发媒体流后,返回此状态。 + 调用 updateForwardStreamToRooms 后,成功向新增目标房间开始转发媒体流后,返回此状态。 |
| FORWARD_STREAM_STATE_FAILURE(2) | 转发失败,失败详情参考 ForwardStreamErrorforwardStreamError 调用 startForwardStreamToRooms 或 updateForwardStreamToRooms 后,如遇转发失败,返回此状态。 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.ForwardStreamStateInfo.ForwardStreamState.value()
java获取当前值
public enum com.ss.bytertc.engine.data.ForwardStreamStateInfo.ForwardStreamError
java媒体流跨房间转发过程中抛出的错误码
| 类型 | 说明 |
|---|---|
| FORWARD_STREAM_ERROR_OK(0) | 正常 |
| FORWARD_STREAM_ERROR_INVALID_ARGUMENT(1201) | 参数异常 |
| FORWARD_STREAM_ERROR_INVALID_TOKEN(1202) | token 错误 |
| FORWARD_STREAM_ERROR_RESPONSE(1203) | 服务端异常 |
| FORWARD_STREAM_ERROR_REMOTE_KICKED(1204) | 目标房间有相同 user id 的用户加入,转发中断 |
| FORWARD_STREAM_ERROR_NOT_SUPPORT(1205) | 服务端不支持转发功能 |
public class com.ss.bytertc.engine.data.HumanOrientation
java三维朝向信息,三个向量需要两两垂直。参看 Orientation。
| 类型 | 名称 |
|---|---|
| Orientation | forward |
| Orientation | right |
| Orientation | up |
public Orientation com.ss.bytertc.engine.data.HumanOrientation.forward;
java正前方朝向,默认值为 {1,0,0},即正前方朝向 x 轴正方向
public Orientation com.ss.bytertc.engine.data.HumanOrientation.right;
java正右方朝向,默认值为 {0,1,0},即右手朝向 y 轴正方向
public Orientation com.ss.bytertc.engine.data.HumanOrientation.up;
java正上方朝向,默认值为 {0,0,1},即头顶朝向 z 轴正方向
public class com.ss.bytertc.engine.data.LocalAudioPropertiesInfo
java本地音频属性信息
| 类型 | 名称 |
|---|---|
| StreamIndex | streamIndex |
| AudioPropertiesInfo | audioPropertiesInfo |
public StreamIndex com.ss.bytertc.engine.data.LocalAudioPropertiesInfo.streamIndex;
java流属性,主流或屏幕流。参看 StreamIndex
public AudioPropertiesInfo com.ss.bytertc.engine.data.LocalAudioPropertiesInfo.audioPropertiesInfo;
java音频属性信息,详见 AudioPropertiesInfo。
public enum com.ss.bytertc.engine.data.MediaInputType
java视频输入类型
| 类型 | 说明 |
|---|---|
| MEDIA_INPUT_TYPE_EXTERNAL(0) | 自定义采集。 设置完成后方可直接向 SDK 推送视频帧。 |
| MEDIA_INPUT_TYPE_INTERNAL(1) | 内部 SDK 采集。 此设置仅切换至内部采集,你需继续调用 startVideoCapture 开启内部采集。 |
public enum com.ss.bytertc.engine.data.MirrorType
java镜像类型
| 类型 | 说明 |
|---|---|
| MIRROR_TYPE_NONE(0) | 本地预览和编码传输时均无镜像效果 |
| MIRROR_TYPE_RENDER(1) | 本地预览时有镜像效果,编码传输时无镜像效果 |
| MIRROR_TYPE_RENDER_AND_ENCODER(3) | 本地预览和编码传输时均有镜像效果 |
public enum com.ss.bytertc.engine.data.MulDimSingScoringMode
javaK 歌打分维度。
| 类型 | 说明 |
|---|---|
| MUL_DIM_SING_SCORING_MODE_NOTE(0) | 按照音高进行评分。 |
public enum com.ss.bytertc.engine.data.MuteState
java音视频流的发送/播放状态
| 类型 | 说明 |
|---|---|
| MUTE_STATE_OFF(0) | 发送 |
| MUTE_STATE_ON(1) | 停止发送 |
public class com.ss.bytertc.engine.data.Orientation
java方向朝向信息
| 类型 | 名称 |
|---|---|
| float | x |
| float | y |
| float | z |
public float com.ss.bytertc.engine.data.Orientation.x;
javax 坐标
public float com.ss.bytertc.engine.data.Orientation.y;
javay 坐标
public float com.ss.bytertc.engine.data.Orientation.z;
javaz 坐标
public class com.ss.bytertc.engine.data.Position
java本地用户在房间内的位置坐标,需自行建立空间直角坐标系
| 类型 | 名称 |
|---|---|
| int | x |
| int | y |
| int | z |
public int com.ss.bytertc.engine.data.Position.x;
javax 坐标
public int com.ss.bytertc.engine.data.Position.y;
javay 坐标
public int com.ss.bytertc.engine.data.Position.z;
javaz 坐标
public class com.ss.bytertc.engine.data.ReceiveRange
java本地用户能收听到、且具有衰减效果的音频接收范围
| 类型 | 名称 |
|---|---|
| int | min |
| int | max |
public int com.ss.bytertc.engine.data.ReceiveRange.min;
java能够接收语音、并且具有衰减效果的最小距离值,该值须 ≥ 0,但 ≤ max。
小于该值的范围内没有范围语音效果,即收听到的音频音量相同。
public int com.ss.bytertc.engine.data.ReceiveRange.max;
java能够收听语音的最大距离值,该值须 > 0 且 ≥ min。
当收听者和声源距离处于 [min, max) 之间时,收听到的音量根据距离呈衰减效果。
超出该值范围的音频将无法收听到。
public class com.ss.bytertc.engine.data.RemoteAudioPropertiesInfo
java远端音频属性信息
| 类型 | 名称 |
|---|---|
| RemoteStreamKey | streamKey |
| AudioPropertiesInfo | audioPropertiesInfo |
public RemoteStreamKey com.ss.bytertc.engine.data.RemoteAudioPropertiesInfo.streamKey;
java远端流信息,详见 RemoteStreamKey
public AudioPropertiesInfo com.ss.bytertc.engine.data.RemoteAudioPropertiesInfo.audioPropertiesInfo;
java音频属性信息,详见 AudioPropertiesInfo
public enum com.ss.bytertc.engine.data.ScreenMediaType
java屏幕采集媒体类型
| 类型 | 说明 |
|---|---|
| SCREEN_MEDIA_TYPE_VIDEO_ONLY(0) | 仅采集视频 |
| SCREEN_MEDIA_TYPE_AUDIO_ONLY(1) | 仅采集音频 |
| SCREEN_MEDIA_TYPE_VIDEO_AND_AUDIO(2) | 采集音频和视频 |
public class com.ss.bytertc.engine.data.SingScoringConfig
javaK 歌评分配置。
| 类型 | 名称 |
|---|---|
| AudioSampleRate | sampleRate |
| MulDimSingScoringMode | mode |
| String | lyricsFilepath |
| String | midiFilepath |
public AudioSampleRate com.ss.bytertc.engine.data.SingScoringConfig.sampleRate;
java音频采样率。仅支持 44100 Hz、48000 Hz。
public MulDimSingScoringMode com.ss.bytertc.engine.data.SingScoringConfig.mode;
java打分维度,详见 MulDimSingScoringMode。
public String com.ss.bytertc.engine.data.SingScoringConfig.lyricsFilepath;
java歌词文件路径。打分功能仅支持 KRC 歌词文件。
public String com.ss.bytertc.engine.data.SingScoringConfig.midiFilepath;
java歌曲 midi 文件路径。
public class com.ss.bytertc.engine.data.SingScoringRealtimeInfo
java实时评分信息。
| 类型 | 名称 |
|---|---|
| int | currentPosition |
| int | userPitch |
| int | standardPitch |
| int | sentenceIndex |
| int | sentenceScore |
| int | totalScore |
| int | averageScore |
| 返回 | 名称 |
|---|---|
| String | toString |
public int com.ss.bytertc.engine.data.SingScoringRealtimeInfo.currentPosition;
java当前播放进度。
public int com.ss.bytertc.engine.data.SingScoringRealtimeInfo.userPitch;
java演唱者的音高。
public int com.ss.bytertc.engine.data.SingScoringRealtimeInfo.standardPitch;
java标准音高。
public int com.ss.bytertc.engine.data.SingScoringRealtimeInfo.sentenceIndex;
java歌词分句索引。
public int com.ss.bytertc.engine.data.SingScoringRealtimeInfo.sentenceScore;
java上一句歌词的评分。
public int com.ss.bytertc.engine.data.SingScoringRealtimeInfo.totalScore;
java当前演唱的累计分数。
public int com.ss.bytertc.engine.data.SingScoringRealtimeInfo.averageScore;
java当前演唱的平均分数。
public String com.ss.bytertc.engine.data.SingScoringRealtimeInfo.toString()
javapublic class com.ss.bytertc.engine.data.StandardPitchInfo
java标准音高数据数组。
| 类型 | 名称 |
|---|---|
| int | startTime |
| int | duration |
| int | pitch |
public int com.ss.bytertc.engine.data.StandardPitchInfo.startTime;
java开始时间,单位 ms。
public int com.ss.bytertc.engine.data.StandardPitchInfo.duration;
java持续时间,单位 ms。
public int com.ss.bytertc.engine.data.StandardPitchInfo.pitch;
java音高。
public enum com.ss.bytertc.engine.data.StreamIndex
java流属性
| 类型 | 说明 |
|---|---|
| STREAM_INDEX_MAIN(0) | 主流。包括: + 由摄像头/麦克风通过内部采集机制,采集到的视频/音频; + 通过自定义采集,采集到的视频/音频。 |
| STREAM_INDEX_SCREEN(1) | 屏幕流。屏幕共享时共享的视频流,或来自声卡的本地播放音频流。 |
public class com.ss.bytertc.engine.data.StreamSycnInfoConfig
java媒体流信息同步的相关配置
| 类型 | 名称 |
|---|---|
| StreamIndex | streamIndex |
| int | repeatCount |
| SyncInfoStreamType | streamType |
public StreamIndex com.ss.bytertc.engine.data.StreamSycnInfoConfig.streamIndex;
java流属性,主流或屏幕流。见枚举类 StreamIndex
STREAM_INDEX_MAIN(0): 主流STREAM_INDEX_SCREEN(1): 屏幕流public int com.ss.bytertc.engine.data.StreamSycnInfoConfig.repeatCount;
java信息发送的重复次数。取值范围是 [0,25],建议设置为 [3,5]
public SyncInfoStreamType com.ss.bytertc.engine.data.StreamSycnInfoConfig.streamType;
java媒体流信息同步的流类型,见 SyncInfoStreamType
public enum com.ss.bytertc.engine.data.StreamSycnInfoConfig.SyncInfoStreamType
java媒体流信息同步的流类型
| 类型 | 说明 |
|---|---|
| SYNC_INFO_STREAM_TYPE_AUDIO | 音频流 |
public enum com.ss.bytertc.engine.data.VideoContentType
java视频内容类型
| 类型 | 说明 |
|---|---|
| kVideoContentTypeNormalFrame(0) | 普通视频 |
| kVideoContentTypeBlackFrame(1) | 黑帧视频 |
public enum com.ss.bytertc.engine.data.VideoFrameType
java视频帧的类型,用于标识视频帧是 CPUBuffer 还是 TextureBuffer
| 类型 | 说明 |
|---|---|
| kVideoFrameTypeRawMemory(0) | CPU Buffer |
| kVideoFrameTypeGLTexture(2) | GL Texture |
public enum com.ss.bytertc.engine.data.VideoOrientation
java视频帧朝向
| 类型 | 说明 |
|---|---|
| Adaptive(0) | (默认)使用相机输出的原始视频帧的角度,不对视频帧进行额外旋转。 |
| Portrait(1) | 固定为竖屏,将相机采集到的视频帧转换为竖屏,在整个 RTC 链路中传递竖屏帧。 |
| Landscape(2) | 固定为横屏,将相机采集到的视频帧转换为横屏,在整个 RTC 链路中传递横屏帧。 |
public enum com.ss.bytertc.engine.data.VideoPixelFormat
java视频帧的数据格式
| 类型 | 说明 |
|---|---|
| kVideoPixelFormatUnknown(0) | 未知格式 |
| kVideoPixelFormatI420(1) | I420格式 |
| kVideoPixelFormatNV12(2) | NV12格式 |
| kVideoPixelFormatNV21(3) | NV21格式 |
| kVideoPixelFormatRGBA(5) | RGBA格式 |
| kVideoPixelFormatTexture2D(GLES10.GL_TEXTURE_2D) | Texture2D格式 |
| kVideoPixelFormatTextureOES(GLES11Ext.GL_TEXTURE_EXTERNAL_OES) | TextureOES格式 |
public enum com.ss.bytertc.engine.data.VideoRotationMode
java视频旋转模式
| 类型 | 说明 |
|---|---|
| FollowApp(0) | App 方向 |
| FollowGSensor(1) | 重力方向 |
public class com.ss.bytertc.engine.data.VirtualBackgroundSource
java背景贴纸对象。
| 类型 | 名称 |
|---|---|
| VirtualBackgroundSourceType | sourceType |
| int | sourceColor |
| String | sourcePath |
public VirtualBackgroundSourceType com.ss.bytertc.engine.data.VirtualBackgroundSource.sourceType;
java虚拟背景类型,详见 VirtualBackgroundSourceType 。
public int com.ss.bytertc.engine.data.VirtualBackgroundSource.sourceColor;
java纯色背景使用的颜色。
格式为 0xAARRGGBB 。
public String com.ss.bytertc.engine.data.VirtualBackgroundSource.sourcePath;
java自定义背景图片的绝对路径。
public enum com.ss.bytertc.engine.data.VirtualBackgroundSourceType
java虚拟背景类型。
| 类型 | 说明 |
|---|---|
| SourceTypeColor | 使用纯色背景替换视频原有背景。 |
| SourceTypeImage | 使用自定义图片背景替换视频原有背景。 |
public interface com.ss.bytertc.engine.handler.IRTCASREngineEventHandler
java语音识别服务使用状态回调
| 返回 | 名称 |
|---|---|
| void | onSuccess |
| void | onMessage |
| void | onError |
public void com.ss.bytertc.engine.handler.IRTCASREngineEventHandler.onSuccess()
java语音识别服务开启成功回调
public void com.ss.bytertc.engine.handler.IRTCASREngineEventHandler.onMessage(
String message)
java语音转文字成功后回调,该回调返回识别后的全量消息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| message | String | 识别完成后得到的文字消息 |
注意
若识别过程中发生了网络连接中断,则重连后回调的信息中只包含重连后识别的文字消息,不再包含上一次连接后识别的消息。
public void com.ss.bytertc.engine.handler.IRTCASREngineEventHandler.onError(
int errorCode,
String errorMessage)
java当语音识别服务内部发生错误事件时触发该回调。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| errorCode | int | 错误码 • < 0: 参数错误或 API 调用顺序错误,参看 RTCASRErrorCode; • >0: 参看 语音识别服务错误码 |
| errorMessage | String | 错误原因说明。 |
public enum com.ss.bytertc.engine.handler.IRTCASREngineEventHandler.RTCASRErrorCode
java语音识别服务错误码。
除网络原因导致的错误,语音识别服务内部会自行重试之外,其他错误都会停止服务,此时建议再次调用 startASR 重启语音识别功能。
| 类型 | 说明 |
|---|---|
| RTCASRErrorNetworkInterrupted(-1) | 网络连接中断,服务不可用,内部会进行重连 |
| RTCASRErrorAlreadyStarted(-2) | 重复调用 startASR。开启语音识别服务后,你需要先调用 stopASR 停止语音识别服务,才能二次调用 startASR 再次开启服务。 |
| RTCASRErrorTokenEmpty(-3) | 语音识别服务所需 token 为空 |
| RTCErrorSignatureKeyEmpty(-4) | Signature 鉴权模式下 secretKey 为空 |
| RTCASRErrorUserIdNull(-5) | 用户 ID 为空 |
| RTCASRErrorAPPIDNull(-6) | 应用 ID 为空 |
| RTCASRErrorClusterNull(-7) | 语音识别服务 cluster 为空 |
| RTCASRErrorOperationDenied(-8) | 语音识别服务连接失败,该版本没有语音识别功能,请联系 RTC 技术支持。 |
public enum com.ss.bytertc.engine.live.ByteRTCStreamMixingEvent
java转推直播任务状态
| 类型 | 说明 |
|---|---|
| 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) | 合流加图片 |
public enum com.ss.bytertc.engine.live.ByteRTCStreamMixingType
java合流类型
| 类型 | 说明 |
|---|---|
| STREAM_MIXING_BY_SERVER(0) | 服务端合流 |
| STREAM_MIXING_BY_CLIENT(1) | 端云一体合流 |
| 返回 | 名称 |
|---|---|
| ByteRTCStreamMixingType | ByteRTCStreamMixingType |
com.ss.bytertc.engine.live.ByteRTCStreamMixingType.ByteRTCStreamMixingType(
int value)
javapublic class com.ss.bytertc.engine.live.LiveTranscoding
java转推直播配置参数。
| 类型 | 名称 |
|---|---|
| String | ACTION_START |
| String | ACTION_CHANGED |
| String | ACTION_STOPPED |
| 返回 | 名称 |
|---|---|
| static LiveTranscoding | getDefualtLiveTranscode |
| 返回 | 名称 |
|---|---|
| void | setUrl |
| void | setRoomId |
| void | setUserId |
| void | setAction |
| void | setVideo |
| void | setAudio |
| void | setLayout |
| ByteRTCStreamMixingType | getMixType |
| void | setMixType |
| String | getUrl |
| VideoConfig | getVideo |
| AudioConfig | getAudio |
| Layout | getLayout |
public static final String com.ss.bytertc.engine.live.LiveTranscoding.ACTION_START = "started";
java开启转推直播。
public static final String com.ss.bytertc.engine.live.LiveTranscoding.ACTION_CHANGED = "layoutChanged";
java更新合流视频布局。
public static final String com.ss.bytertc.engine.live.LiveTranscoding.ACTION_STOPPED = "stopped";
java停止直播推流功能。
public static LiveTranscoding com.ss.bytertc.engine.live.LiveTranscoding.getDefualtLiveTranscode()
java获取默认的转推直播配置参数。
返回值
默认的转推直播配置参数。参看 LiveTranscoding。
public void com.ss.bytertc.engine.live.LiveTranscoding.setUrl(
String url)
java设置推流 CDN 地址。
public void com.ss.bytertc.engine.live.LiveTranscoding.setRoomId(
String roomId)
java设置roomId。
public void com.ss.bytertc.engine.live.LiveTranscoding.setUserId(
String userId)
java设置userId。
public void com.ss.bytertc.engine.live.LiveTranscoding.setAction(
String action)
java设置转推直播动作参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| action | String | 转推直播动作。可选取值如下: • ACTION_START: 开启转推直播功能 • ACTION_CHANGED: 更新转推直播视频合流布局 • ACTION_STOPPED: 停止转推直播功能 |
public void com.ss.bytertc.engine.live.LiveTranscoding.setVideo(
VideoConfig video)
java设置视频转码配置参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| video | VideoConfig | 视频转码配置参数。详见 VideoConfig 数据类型。 |
public void com.ss.bytertc.engine.live.LiveTranscoding.setAudio(
AudioConfig audio)
java设置音频转码配置参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| audio | AudioConfig | 音频转码配置参数。详见 AudioConfig 数据类型。 |
public void com.ss.bytertc.engine.live.LiveTranscoding.setLayout(
Layout layout)
java设置视频流合流整体布局信息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| layout | Layout | 视频流合流整体布局参数。详见 Layout 数据类型。 |
public ByteRTCStreamMixingType com.ss.bytertc.engine.live.LiveTranscoding.getMixType()
java获取合流类型。
返回值
合流类型,参看 ByteRTCStreamMixingType。
public void com.ss.bytertc.engine.live.LiveTranscoding.setMixType(
ByteRTCStreamMixingType mixType)
java设置合流类型。本参数不支持过程中更新。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| mixType | ByteRTCStreamMixingType | 合流类型,参看 ByteRTCStreamMixingType。 |
public String com.ss.bytertc.engine.live.LiveTranscoding.getUrl()
java获取推流的 CDN 地址。
返回值
CDN 的 URL 地址。
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.getVideo()
java获取视频转码配置参数。
返回值
当前视频转码配置参数。详见 VideoConfig 数据类型。
public AudioConfig com.ss.bytertc.engine.live.LiveTranscoding.getAudio()
java获取音频转码配置参数。
返回值
当前音频转码配置参数。详见 AudioConfig 数据类型。
public Layout com.ss.bytertc.engine.live.LiveTranscoding.getLayout()
java获取视频流合流整体布局信息。
返回值
当前视频流合流整体布局。详见 Layout 数据类型。
public enum com.ss.bytertc.engine.live.LiveTranscoding.TranscoderContentControlType
java合流输出内容类型
| 类型 | 说明 |
|---|---|
| HAS_AUDIO_AND_VIDEO(0) | 输出的混流包含音频和视频 |
| HAS_AUDIO_ONLY(1) | 输出的混流只包含音频 |
| HAS_VIDEO_ONLY(2) | 输出的混流只包含视频 |
| 返回 | 名称 |
|---|---|
| int | getValue |
public int com.ss.bytertc.engine.live.LiveTranscoding.TranscoderContentControlType.getValue()
java获取合流输出内容类型。
返回值
合流输出内容类型
public enum com.ss.bytertc.engine.live.LiveTranscoding.TranscoderRenderMode
java视频渲染的缩放模式
| 类型 | 说明 |
|---|---|
| RENDER_HIDDEN(1) | 视窗填满优先。 视频尺寸等比缩放,直至视窗被填满。当视频尺寸与显示窗口尺寸不一致时,多出的视频将被截掉。 |
| RENDER_FIT(2) | 视频帧内容全部显示优先。 视频尺寸等比缩放,优先保证视频内容全部显示。当视频尺寸与显示窗口尺寸不一致时,会把窗口未被填满的区域填充成背景颜色。 |
| RENDER_ADAPTIVE(3) | 视频帧自适应画布。 视频尺寸非等比例缩放,把窗口充满。在此过程中,视频帧的长宽比例可能会发生变化。 |
| 返回 | 名称 |
|---|---|
| int | getValue |
public int com.ss.bytertc.engine.live.LiveTranscoding.TranscoderRenderMode.getValue()
java获取视频内容的缩放模式。
返回值
视频内容的缩放模式。
public enum com.ss.bytertc.engine.live.LiveTranscoding.TranscoderLayoutRegionType
java合流布局区域类型
| 类型 | 说明 |
|---|---|
| LAYOUT_REGION_TYPE_VIDEO_STREAM(0) | 合流布局区域类型为视频。 |
| LAYOUT_REGION_TYPE_IMAGE(1) | 合流布局区域类型为图片。 |
| 返回 | 名称 |
|---|---|
| int | getValue |
public int com.ss.bytertc.engine.live.LiveTranscoding.TranscoderLayoutRegionType.getValue()
java获取合流布局区域类型。
返回值
合流布局区域类型。
public enum com.ss.bytertc.engine.live.LiveTranscoding.AACProfile
javaAAC 编码类型。
| 类型 | 说明 |
|---|---|
| AAC_PROFILE_LC("LC") | 编码等级 AAC-LC |
| AAC_PROFILE_HEV1("HEv1") | 编码等级 HE-AAC v1 |
| AAC_PROFILE_HEV2("HEv2") | 编码等级 HE-AAC v2 |
| 返回 | 名称 |
|---|---|
| String | getValue |
public String com.ss.bytertc.engine.live.LiveTranscoding.AACProfile.getValue()
java获取 AAC 编码类型。
返回值
AAC 编码类型。
public static class com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig
java视频转码配置参数。
| 返回 | 名称 |
|---|---|
| VideoConfig | setCodec |
| VideoConfig | setFps |
| VideoConfig | setGop |
| VideoConfig | setLowLatency |
| VideoConfig | setKBitRate |
| VideoConfig | setWidth |
| VideoConfig | setHeight |
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.setCodec(
String codec)
java设置视频编码器。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| codec | String | 编码器。默认值为 0。 • 值为 0 时,使用 H.264; • 值为 1 时,使用 byteVC1。此时,你必须调用 setKBitRate 设置视频码率。 |
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.setFps(
int fps)
java设置合流视频帧率信息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| fps | int | 合流的视频帧率。默认值为 15,取值范围是 [1, 60]。值不合法时,自动调整为默认值。 |
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.setGop(
int gop)
java设置视频 I 帧间隔。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| gop | int | I 帧间隔。默认值为 4,取值范围为 [1, 5],单位为秒。值不合法时,自动调整为默认值。 |
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.setLowLatency(
boolean lowLatency)
java设置是否使用低延时特性。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| lowLatency | boolean | 是否使用低延时特性。取值含义如下: • true: 使用低延时特性 • false: 不使用低延时特性 |
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.setKBitRate(
int kBitRate)
java设置合流视频码率
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| kBitRate | int | 合流视频码率。单位为 kbps,取值范围为 [1,10000],默认值为自适应。值不合法时,自动调整为默认值。 |
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.setWidth(
int width)
java设置合流视频宽度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | int | 合流视频宽度。单位为 px,范围为 [2, 1920],必须是偶数。默认值为 640。 |
public VideoConfig com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.setHeight(
int height)
java设置合流视频高度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| height | int | 合流视频高度。单位为 px,范围为 [2, 1080],必须是偶数。默认值为 480。 |
public enum com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.VideoCodecType
java转推直播视频编码器格式
| 类型 | 说明 |
|---|---|
| VIDEO_CODEC_TYPE_H264("H264") | 标准 H264 编码格式 |
| VIDEO_CODEC_TYPE_BYTEVC1("ByteVC1") | ByteVC1 编码格式 |
| 返回 | 名称 |
|---|---|
| String | getValue |
public String com.ss.bytertc.engine.live.LiveTranscoding.VideoConfig.VideoCodecType.getValue()
java获取转推直播视频编码器格式。
返回值
转推直播视频编码器格式。
public static class com.ss.bytertc.engine.live.LiveTranscoding.AudioConfig
java音频转码配置参数。
| 返回 | 名称 |
|---|---|
| AudioConfig | setCodec |
| AudioConfig | setKBitRate |
| AudioConfig | setSampleRate |
| AudioConfig | setChannels |
| AudioConfig | setAacProfile |
public AudioConfig com.ss.bytertc.engine.live.LiveTranscoding.AudioConfig.setCodec(
String codec)
java设置音频编码格式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| codec | String | 音频编码格式,仅支持AAC编码格式。 |
public AudioConfig com.ss.bytertc.engine.live.LiveTranscoding.AudioConfig.setKBitRate(
int kBitRate)
java设置音频码率。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| kBitRate | int | 音频码率,单位 Kbps。可取范围 [32Kbps, 192Kbps],默认值为 64Kbps。 |
public AudioConfig com.ss.bytertc.engine.live.LiveTranscoding.AudioConfig.setSampleRate(
int sampleRate)
java设置音频采样率。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| sampleRate | int | 音频采样率,单位 Hz。可取 32000Hz、44100Hz、48000Hz,默认值为 48000Hz。 |
public AudioConfig com.ss.bytertc.engine.live.LiveTranscoding.AudioConfig.setChannels(
int channels)
java设置声道数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| channels | int | 音频声道数。可取 1、2,默认值为 2。 |
public AudioConfig com.ss.bytertc.engine.live.LiveTranscoding.AudioConfig.setAacProfile(
AACProfile aacProfile)
java设置 AAC 等级。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| AACProfile | **** | AAC 等级,参看 AACProfile。默认值为 AAC_PROFILE_LC("LC")。 |
public static class com.ss.bytertc.engine.live.LiveTranscoding.Region
java单个图片或视频流在合流中的布局信息。
开启转推直播功能后,在多路视频流合流时,你可以设置其中一路视频流在合流中的预设布局信息。
| 返回 | 名称 |
|---|---|
| Region | uid |
| Region | roomId |
| Region | zorder |
| Region | alpha |
| Region | contentControl |
| Region | renderMode |
| Region | position |
| Region | size |
| boolean | isScreenStream |
| Region | setScreenStream |
| boolean | isLocalUser |
| Region | setLocalUser |
| Region | type |
| Region | data |
| Region | dataParam |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.uid(
String)
java设置视频流发布用户的用户 ID。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| uid | String | 用户 ID。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.roomId(
String)
java设置视频流发布用户的房间 ID。必填。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 房间 ID。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.zorder(
int)
java设置用户视频布局在画布中的层级。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| zorder | int | 用户视频布局在画布中的层级。取值范围为[0 - 100]。0为底层,值越大越上层。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.alpha(
double)
java设置透明度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| alpha | double | 透明度,可选范围为 [0.0, 1.0],0.0 为全透明。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.contentControl(
TranscoderContentControlType)
java设置合流内容类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| contentControl | TranscoderContentControlType | 合流内容控制。默认值为 TranscoderContentControlType.HAS_AUDIO_AND_VIDEO,参看 TranscoderContentControlType。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.renderMode(
TranscoderRenderMode)
java设置图片或视频流渲染的缩放模式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| renderMode | TranscoderRenderMode | 图片或视频流的缩放模式,参看 TranscoderRenderMode。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.position(
double x,
double y)
java设置用户视频布局的相对位置。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| x | double | 视频流对应区域左上角的横坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。 |
| y | double | 视频流对应区域左上角的纵坐标相对整体画面的归一化比例,取值的范围为 [0.0, 1.0)。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.size(
double width,
double height)
java设置用户视频相对大小。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | double | 视频流对应区域宽度相对整体画面的归一化比例,取值的范围为 (0.0, 1.0]。 |
| height | double | 视频流对应区域高度相对整体画面的归一化比例,取值的范围为 (0.0, 1.0]。 |
public boolean com.ss.bytertc.engine.live.LiveTranscoding.Region.isScreenStream()
java是否是屏幕流。
返回值
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.setScreenStream(
boolean screenStream)
java设置是否是屏幕流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| screenStream | boolean | 标识是否是屏幕流 |
public boolean com.ss.bytertc.engine.live.LiveTranscoding.Region.isLocalUser()
java是否本地用户。
返回值
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.setLocalUser(
boolean localUser)
java设置是否是本地用户。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| localUser | boolean | 标识是否是本地用户 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.type(
TranscoderLayoutRegionType)
java设置合流布局区域类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| type | TranscoderLayoutRegionType | 合流布局区域类型,详见 TranscoderLayoutRegionType。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.data(
byte[])
java设置图片合流区域类型对应的数据。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| data | byte[] | 图片合流布局区域类型对应的数据。类型为图片时传入图片 RGBA 数据,当类型为视频流时传空。 |
public Region com.ss.bytertc.engine.live.LiveTranscoding.Region.dataParam(
Region.DataParam)
java设置合流布局区域数据的对应参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| dataParam | Region.DataParam | 合流布局区域数据的对应参数。当类型为视频流时传空,类型为图片时传入对应图片的参数,参看 DataParam。 |
public static class com.ss.bytertc.engine.live.LiveTranscoding.Region.DataParam
java图片合流相关参数
| 返回 | 名称 |
|---|---|
| Region.DataParam | setImageWidth |
| Region.DataParam | setImageHeight |
public Region.DataParam com.ss.bytertc.engine.live.LiveTranscoding.Region.DataParam.setImageWidth(
int imageWidth)
java原始图片的宽度,单位为 px。
public Region.DataParam com.ss.bytertc.engine.live.LiveTranscoding.Region.DataParam.setImageHeight(
int imageHeight)
java原始图片的高度,单位为 px。
public static class com.ss.bytertc.engine.live.LiveTranscoding.Layout
java视频流合流整体布局信息。
开启转推直播功能后,你可以设置参与合流的每路视频流的预设布局信息和合流背景信息等。
| 返回 | 名称 |
|---|---|
| Region[] | getRegions |
| void | setRegions |
| String | getAppData |
| void | setAppData |
| String | getBackgroundColor |
| void | setBackgroundColor |
public Region[] com.ss.bytertc.engine.live.LiveTranscoding.Layout.getRegions()
java获取用户布局信息列表。
返回值
当前合流的用户布局信息列表。
public void com.ss.bytertc.engine.live.LiveTranscoding.Layout.setRegions(
Region[] regions)
java设置用户布局信息列表。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| regions | Region[] | 用户布局信息列表。为 Region 数据类型的数组。每一个该类型对象为一路单独的视频流的布局信息。 |
public String com.ss.bytertc.engine.live.LiveTranscoding.Layout.getAppData()
java获取透传的 App 数据。
返回值
当前透传的 App 数据。
public void com.ss.bytertc.engine.live.LiveTranscoding.Layout.setAppData(
String appData)
java设置透传的 App 数据。长度不超过 4KB。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| appData | String | 透传的 App 数据。 |
public String com.ss.bytertc.engine.live.LiveTranscoding.Layout.getBackgroundColor()
java获取画布的背景颜色。
返回值
当前画布的背景颜色。
public void com.ss.bytertc.engine.live.LiveTranscoding.Layout.setBackgroundColor(
String backgroundColor)
java设置画布的背景颜色。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| backgroundColor | String | 画布的背景颜色。格式为 RGB 定义下的 Hex 值,如 #FFB6C1 表示浅粉色。默认值 #000000,表示为黑色 |
public static class com.ss.bytertc.engine.live.LiveTranscoding.Layout.Builder
java构建参数组合
| 返回 | 名称 |
|---|---|
| Builder | appData |
| Builder | backgroundColor |
public Builder com.ss.bytertc.engine.live.LiveTranscoding.Layout.Builder.appData(
String)
java透传的 app 数据
public Builder com.ss.bytertc.engine.live.LiveTranscoding.Layout.Builder.backgroundColor(
String)
java画布的背景颜色
public class com.ss.bytertc.engine.live.PushSingleStreamParam
java单流转推直播配置参数。
| 类型 | 名称 |
|---|---|
| String | roomId |
| String | userId |
| String | url |
| boolean | isScreen |
public String com.ss.bytertc.engine.live.PushSingleStreamParam.roomId;
java媒体流所在的房间 ID
public String com.ss.bytertc.engine.live.PushSingleStreamParam.userId;
java媒体流所属的用户 ID
public String com.ss.bytertc.engine.live.PushSingleStreamParam.url;
java推流地址
public boolean com.ss.bytertc.engine.live.PushSingleStreamParam.isScreen = false;
java媒体流是否为屏幕流。
public interface com.ss.bytertc.engine.loader.RTCNativeLibraryLoader
java用户自定义动态库加载器实现
| 返回 | 名称 |
|---|---|
| boolean | load |
boolean com.ss.bytertc.engine.loader.RTCNativeLibraryLoader.load(
String libraryName)
javaSDK在需要加载动态库时通过该方法回调
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| libraryName | String | 要加载的动态库名称 |
public class com.ss.bytertc.engine.publicstream.PublicStreaming
java公共流参数。
| 类型 | 名称 |
|---|---|
| String | ACTION_START |
| String | ACTION_CHANGED |
| String | ACTION_STOPPED |
| 返回 | 名称 |
|---|---|
| static PublicStreaming | getDefualtPublicStreaming |
| 返回 | 名称 |
|---|---|
| void | setRoomId |
| void | setAction |
| void | setVideo |
| void | setLayout |
| VideoConfig | getVideo |
| Layout | getLayout |
public static final String com.ss.bytertc.engine.publicstream.PublicStreaming.ACTION_START = "started";
java设置公共流发布动作参数:开启公共流推流功能。
public static final String com.ss.bytertc.engine.publicstream.PublicStreaming.ACTION_CHANGED = "layoutChanged";
java设置公共流发布动作参数:更新视频公共流布局。
public static final String com.ss.bytertc.engine.publicstream.PublicStreaming.ACTION_STOPPED = "stopped";
java设置公共流发布动作参数:停止公共流推流功能。
public static PublicStreaming com.ss.bytertc.engine.publicstream.PublicStreaming.getDefualtPublicStreaming()
java获取默认的公共流配置属性。
返回值
默认的推公共流转码配置属性。详见 PublicStreaming 数据类型。
public void com.ss.bytertc.engine.publicstream.PublicStreaming.setRoomId(
String roomId)
java设置 roomId。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String |
public void com.ss.bytertc.engine.publicstream.PublicStreaming.setAction(
String action)
java设置公共流发布动作参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| action | String | 公共流发布动作。可选取值如下: • ACTION_START: 开启发布 • ACTION_CHANGED: 更新公共流布局 • ACTION_STOPPED: 停止发布 |
public void com.ss.bytertc.engine.publicstream.PublicStreaming.setVideo(
VideoConfig video)
java设置公共流视频参数。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| video | VideoConfig | 公共流视频参数,必填。详见 VideoConfig 数据类型。 |
注意
建议先调用 getDefualtPublicStreaming 获取包含默认参数的数据结构体。
public void com.ss.bytertc.engine.publicstream.PublicStreaming.setLayout(
Layout layout)
java设置公共流整体布局信息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| layout | Layout | 公共流整体布局参数,必填。详见 Layout 数据类型。 |
public VideoConfig com.ss.bytertc.engine.publicstream.PublicStreaming.getVideo()
java获取公共流视频编码参数。
返回值
公共流视频参数。详见 VideoConfig 数据类型。
public Layout com.ss.bytertc.engine.publicstream.PublicStreaming.getLayout()
java获取公共流整体布局信息。
返回值
当前公共流整体布局。详见 Layout 数据类型。
public static class com.ss.bytertc.engine.publicstream.PublicStreaming.VideoConfig
java公共流的视频编码参数
| 返回 | 名称 |
|---|---|
| VideoConfig | setFps |
| VideoConfig | setKBitRate |
| VideoConfig | setWidth |
| VideoConfig | setHeight |
public VideoConfig com.ss.bytertc.engine.publicstream.PublicStreaming.VideoConfig.setFps(
int fps)
java设置公共流视频帧率。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| fps | int | 公共流视频帧率。必填 范围:[1, 60] 默认值:30 fps |
返回值
公共流视频参数。详见 VideoConfig 数据类型。
public VideoConfig com.ss.bytertc.engine.publicstream.PublicStreaming.VideoConfig.setKBitRate(
int kBitRate)
java设置公共流视频码率
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| kBitRate | int | 视频码率,必填 范围:[1,10000000] 单位为 bps,默认值为 500 。 |
返回值
公共流视频参数。详见 VideoConfig 数据类型。
public VideoConfig com.ss.bytertc.engine.publicstream.PublicStreaming.VideoConfig.setWidth(
int width)
java设置公共流视频宽度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | int | 公共流视频宽度,必填。单位为 px,范围为 [16, 1920],必须是偶数。默认值为 360 px。 |
返回值
公共流视频参数。详见 VideoConfig 数据类型。
public VideoConfig com.ss.bytertc.engine.publicstream.PublicStreaming.VideoConfig.setHeight(
int height)
java设置公共流视频高度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| height | int | 公共流视频高度,必填。单位为 px,范围为 [16, 1280],必须是偶数。默认值为 640。 |
返回值
公共流视频参数。详见 VideoConfig 数据类型。
public static class com.ss.bytertc.engine.publicstream.PublicStreaming.SourceCrop
java公共流布局中的视频裁剪参数。
| 返回 | 名称 |
|---|---|
| SourceCrop | setLocationX |
| SourceCrop | setLocationY |
| SourceCrop | setWidthProportion |
| SourceCrop | setHeightProportion |
public SourceCrop com.ss.bytertc.engine.publicstream.PublicStreaming.SourceCrop.setLocationX(
double x)
java设置左上角横坐标。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| x | double | 裁剪后得到的视频帧左上角横坐标相对于裁剪前整体画面的归一化比例,取值范围[0.0, 1.0)。 |
返回值
裁剪配置。详见 SourceCrop 数据类型。
public SourceCrop com.ss.bytertc.engine.publicstream.PublicStreaming.SourceCrop.setLocationY(
double y)
java设置左上角纵坐标。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| y | double | 裁剪后得到的视频帧左上角纵坐标相对于裁剪前整体画面的归一化比例,取值范围[0.0, 1.0)。 |
返回值
裁剪配置。详见 SourceCrop 数据类型。
public SourceCrop com.ss.bytertc.engine.publicstream.PublicStreaming.SourceCrop.setWidthProportion(
double w)
java设置视频宽度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| w | double | 裁剪后得到的视频帧宽度相对于裁剪前整体画面的归一化比例,取值范围(0.0, 1.0] |
返回值
裁剪配置。详见 SourceCrop 数据类型。
public SourceCrop com.ss.bytertc.engine.publicstream.PublicStreaming.SourceCrop.setHeightProportion(
double h)
java设置视频高度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| h | double | 裁剪后得到的视频帧高度相对于裁剪前整体画面的归一化比例,取值范围(0.0, 1.0]。 |
返回值
裁剪配置。详见 SourceCrop 数据类型。
public static class com.ss.bytertc.engine.publicstream.PublicStreaming.Layout
java公共流的合流布局
| 返回 | 名称 |
|---|---|
| Region[] | getRegions |
| void | setRegions |
| int | getInterpolationMode |
| void | setInterpolationMode |
| int | getLayoutMode |
| void | setLayoutMode |
| String | getBackgroundImage |
| void | setBackgroundImage |
| String | getBackgroundColor |
| void | setBackgroundColor |
public Region[] com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.getRegions()
java获取当前公共流的用户布局信息列表。
返回值
当前公共流的用户布局信息列表。
public void com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.setRegions(
Region[] regions)
java设置合成公共流的各路流的布局信息。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| regions | Region[] | 各路流的布局信息列表。为 Region 数据类型的数组。每一个该类型对象为一路单独的视频流的布局信息。 |
public int com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.getInterpolationMode()
java获取插帧模式。
返回值
插帧模式。
0: 补最后一帧1: 补背景图片,如果没有设置背景图片则补黑帧public void com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.setInterpolationMode(
int interMode)
java设置插帧模式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| interMode | int | 插帧模式。 • 0: 补最后一帧• 1: 补背景图片或者黑帧 |
public int com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.getLayoutMode()
java获取当前公共流的布局模式。
返回值
当前使用的布局模式。
0: 自动模式。默认值。2: 自定义模式。public void com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.setLayoutMode(
int layoutMode)
java设置公共流的布局模式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| layoutMode | int | 公共流的目标布局模式: • 0: 自动模式。默认值。 • 2: 自定义模式。 |
public String com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.getBackgroundImage()
java获取视频的背景图片链接。
返回值
当前背景图片链接
public void com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.setBackgroundImage(
String bgImage)
java设置背景图片链接。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| bgImage | String | 背景图片链接。 |
public String com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.getBackgroundColor()
java获取画布的背景颜色。
返回值
当前画布的背景颜色。
public void com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.setBackgroundColor(
String backgroundColor)
java设置画布的背景颜色。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| backgroundColor | String | 画布的背景颜色。格式为 RGB 定义下的 Hex 值,如 #FFB6C1 表示浅粉色。默认值 #000000,表示为黑色 |
public static class com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region
java合成公共流的每条流的布局信息
| 返回 | 名称 |
|---|---|
| Region | userId |
| Region | roomId |
| Region | zorder |
| Region | alpha |
| Region | mediaType |
| Region | streamType |
| Region | renderMode |
| Region | position |
| Region | size |
| Region | sourceCropPosition |
| Region | sourceCropSize |
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.userId(
String uid)
java指定视频流所属用户的 ID。服务端将通过用户 ID 和 房间 ID,找到需要合成到公共流中的媒体流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| uid | String | 用户 ID。必填。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.roomId(
String)
java设置媒体流所在房间的房间 ID。服务端将通过用户 ID 和 房间 ID,找到需要合成到公共流中的媒体流。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| roomId | String | 必填。如果此媒体流是通过 startForwardStreamToRooms 转发到你所在房间的媒体流时,你应将房间 ID 设置为你所在的房间 ID。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.zorder(
int)
java设置用户视频布局在画布中的层级。当前 Region 的位置与其他 Region 重合时,将按照此处设置的层级属性进行渲染。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| zorder | int | 用户视频布局在画布中的层级。取值范围为[0, 100]。0(默认)为底层,100 为顶层。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.alpha(
double)
java设置透明度。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| alpha | double | 透明度。必填。可选范围为 [0.0, 1.0]。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.mediaType(
int)
java设置公共流内容类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| mediaType | int | 公共流内容类型。默认值为0,可选取值如下: • 0: 输出的混流包含音视频 • 1: 只包含音频 • 2: 只包含视频 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.streamType(
int)
java设置公共流媒体类型。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| streamType | int | 公共流媒体类型。默认值为 0,可选取值如下: • 0: 普通音视频流 • 1: 屏幕流 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.renderMode(
int)
java设置视频显示模式。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| renderMode | int | 视频显示模式。可选取值如下: • 1: 视频尺寸等比缩放,优先保证窗口被填满。当视频尺寸与显示窗口尺寸不一致时,多出的视频将被截掉。 • 2: 视频尺寸等比缩放,优先保证视频内容全部显示。当视频尺寸与显示窗口尺寸不一致时,会把窗口未被填满的区域填充成黑色。 • 3: 视频尺寸非等比例缩放,把窗口充满。当视频尺寸与显示窗口尺寸不一致时,视频高或宽方向会被拉伸。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.position(
double x,
double y)
java设置用户视频布局的相对位置。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| x | double | 视频流对应区域左上角的横坐标相对整体画面的比例,取值的范围为 [0.0, 1.0)。必填。 |
| y | double | 视频流对应区域左上角的纵坐标相对整体画面的比例,取值的范围为 [0.0, 1.0)。必填。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.size(
double width,
double height)
java设置用户视频相对大小。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | double | 视频流对应区域宽度相对整体画面的比例,取值的范围为 (0.0, 1.0]。必填。 |
| height | double | 视频流对应区域高度相对整体画面的比例,取值的范围为 (0.0, 1.0]。必填。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.sourceCropPosition(
double x,
double y)
java设置用户视频布局的相对位置。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| x | double | 裁剪后得到的视频帧左上角横坐标相对于裁剪前整体画面的比例,取值的范围为 [0.0, 1.0)。 |
| y | double | 裁剪后得到的视频帧左上角纵坐标相对于裁剪前整体画面的比例,取值的范围为 [0.0, 1.0)。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public Region com.ss.bytertc.engine.publicstream.PublicStreaming.Layout.Region.sourceCropSize(
double width,
double height)
java设置裁剪视频相对大小。
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | double | 裁剪后得到的视频帧宽度相对于裁剪前整体画面的比例,取值的范围为 (0.0, 1.0]。 |
| height | double | 裁剪后得到的视频帧高度相对于裁剪前整体画面的比例,取值的范围为 (0.0, 1.0]。 |
返回值
当前流在公共流中的布局信息。详见 Region。
public class com.ss.bytertc.engine.utils.AudioFrame
javaPCM 音频帧
| 类型 | 名称 |
|---|---|
| byte[] | buffer |
| int | samples |
| AudioSampleRate | sampleRate |
| AudioChannel | channel |
public byte[] com.ss.bytertc.engine.utils.AudioFrame.buffer;
javaPCM 数据
public int com.ss.bytertc.engine.utils.AudioFrame.samples;
java采样点个数
public AudioSampleRate com.ss.bytertc.engine.utils.AudioFrame.sampleRate;
java采样率,参看 AudioSampleRate。
public AudioChannel com.ss.bytertc.engine.utils.AudioFrame.channel;
java音频声道,参看 AudioChannel。
public interface com.ss.bytertc.engine.utils.IAudioFrame
java音频数据
| 返回 | 名称 |
|---|---|
| long | timestamp_us |
| AudioSampleRate | sample_rate |
| AudioChannel | channel |
| ByteBuffer | getDataBuffer |
| int | data_size |
| AudioFrameType | frame_type |
| void | release |
long com.ss.bytertc.engine.utils.IAudioFrame.timestamp_us()
java获取音频帧时间戳。
返回值
音频帧时间戳,单位:微秒。
AudioSampleRate com.ss.bytertc.engine.utils.IAudioFrame.sample_rate()
java获取音频采样率,参看 AudioSampleRate。
返回值
音频采样率
AudioChannel com.ss.bytertc.engine.utils.IAudioFrame.channel()
java获取音频声道,参看 AudioChannel。
返回值
音频声道
注意
双声道的情况下,左右声道的音频帧数据以 LRLRLR 形式排布。
ByteBuffer com.ss.bytertc.engine.utils.IAudioFrame.getDataBuffer()
java获取音频帧内存块地址
返回值
音频帧的 ByteBuffer
int com.ss.bytertc.engine.utils.IAudioFrame.data_size()
java获取音频帧数据大小。
返回值
音频帧数据大小,单位:字节。
AudioFrameType com.ss.bytertc.engine.utils.IAudioFrame.frame_type()
java获取音频帧类型,目前只支持 PCM,参看 AudioFrameType。
返回值
音频帧类型
void com.ss.bytertc.engine.utils.IAudioFrame.release()
java释放音频帧。
public enum com.ss.bytertc.engine.type.AttenuationType
java空间音频音量随距离衰减模式
| 类型 | 说明 |
|---|---|
| ATTENUATION_TYPE_NONE(0) | 不随距离衰减 |
| ATTENUATION_TYPE_LINEAR(1) | 线性衰减,音量随距离增大而线性减小 |
| ATTENUATION_TYPE_EXPONENTIAL(2) | 指数型衰减,音量随距离增大进行指数衰减 |
public enum com.ss.bytertc.engine.type.AudioDeviceType
java音频设备类型
| 类型 | 说明 |
|---|---|
| AUDIO_DEVICE_TYPE_UNKNOWN(-1) | 未知设备 |
| AUDIO_DEVICE_TYPE_RENDER_DEVICE(0) | 音频渲染设备 |
| AUDIO_DEVICE_TYPE_CAPTURE_DEVICE(1) | 音频采集设备类型 |
| AUDIO_DEVICE_TYPE_SCREEN_CAPTURE_DEVICE(2) | 屏幕流音频设备 |
public enum com.ss.bytertc.engine.type.AudioProfileType
java音质档位
| 类型 | 说明 |
|---|---|
| AUDIO_PROFILE_DEFAULT(0) | 默认音质 服务器下发或客户端已设置的 ChannelProfile 的音质配置 |
| AUDIO_PROFILE_FLUENT(1) | 流畅。 单声道,采样率为 16 kHz,编码码率为 32 Kbps。 流畅优先、低功耗、低流量消耗,适用于大部分游戏场景,如小队语音、组队语音、国战语音等。 |
| AUDIO_PROFILE_STANDARD(2) | 单声道标准音质。 采样率为 24 kHz,编码码率为 48 Kbps。 适用于对音质有一定要求的场景,同时延时、功耗和流量消耗相对适中,适合教育场景和狼人杀等游戏。 |
| AUDIO_PROFILE_HD(3) | 双声道音乐音质 采样率为 48 kHz,编码码率为 128 kbps。 超高音质,同时延时、功耗和流量消耗相对较大,适用于连麦 PK 等音乐场景。 游戏场景不建议使用。 |
| AUDIO_PROFILE_STANDARD_STEREO(4) | 双声道标准音质。采样率为 48 KHz,编码码率最大值为 80 Kbps |
| AUDIO_PROFILE_HD_MONO(5) | 单声道音乐音质。采样率为 48 kHz,编码码率最大值为 64 Kbps |
public enum com.ss.bytertc.engine.type.AudioScenarioType
java音频场景类型。
选择音频场景后,SDK 会自动根据客户端音频采集播放设备和状态,适用通话音量/媒体音量。
你可以调用 setAudioScenario 设置音频场景。
如果以下音频场景类型无法满足你的业务需要,请联系技术支持人员。
| 类型 | 说明 | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AUDIO_SCENARIO_MUSIC(0) | (默认)音乐场景。 此场景适用于对音乐表现力有要求的场景,如音乐直播等。 音频采集播放设备和采集播放状态,到音量类型的映射如下:
| ||||||||||||||||
| AUDIO_SCENARIO_HIGHQUALITY_COMMUNICATION(1) | 高质量通话场景。 此场景适用于对音乐表现力有要求,但又希望能够使用蓝牙耳机上自带的麦克风进行音频采集的场景。 此场景下,更倾向于使用媒体音量。由此,可能引起开关麦时音量突变。如不希望有此突变,请使用 AUDIO_SCENARIO_HIGHQUALITY_CHAT。此场景可以兼顾外放/使用蓝牙耳机时的音频体验,并避免使用蓝牙耳机时音量类型切换导致的听感突变。 音频采集播放设备和采集播放状态,到音量类型的映射如下:
| ||||||||||||||||
| AUDIO_SCENARIO_COMMUNICATION(2) | 纯通话音量场景。 此场景下,无论客户端音频采集播放设备和采集播放状态,全程使用通话音量。 适用于需要频繁上下麦的通话或会议场景。 此场景可以保持统一的音频模式,不会有音量突变的听感。 此场景可以最大程度地消除回声,使通话清晰度达到最优。 使用蓝牙耳机时,能够使用蓝牙耳机上自带的麦克风进行音频采集。 但是,此场景会压低使用媒体音量进行播放的其他音频的音量,且音质会变差。 | ||||||||||||||||
| AUDIO_SCENARIO_MEDIA(3) | 纯媒体场景。一般不建议使用。 此场景下,无论客户端音频采集播放设备和采集播放状态,全程使用媒体音量。 外放通话时,可能出现回声和啸叫,请联系技术支持人员。 | ||||||||||||||||
| AUDIO_SCENARIO_GAME_STREAMING(4) | 游戏媒体场景。 此场景下,蓝牙耳机使用通话音量,其它设备使用媒体音量。 若外放通话且无游戏音效消除优化时音质不理想,请联系技术支持人员。 | ||||||||||||||||
| AUDIO_SCENARIO_HIGHQUALITY_CHAT(5) | 高质量畅聊场景。 此场景和 AUDIO_SCENARIO_HIGHQUALITY_COMMUNICATION 高度类似,唯一的差异在于:此场景下,在使用设备自带的麦克风和扬声器/听筒进行通话时,开关麦始终采用通话音量,不会引起音量类型突变。 音频采集播放设备和采集播放状态,到音量类型的映射如下:
|
public enum com.ss.bytertc.engine.type.ChannelProfile
java房间模式
根据所需场景,选择合适的房间模式,应用不同的音视频算法、视频参数和网络配置
调用 setAudioProfile 改变音频参数配置
| 类型 | 说明 |
|---|---|
| CHANNEL_PROFILE_COMMUNICATION(0) | 默认场景,通用模式 |
| CHANNEL_PROFILE_GAME(2) | 游戏语音模式,低功耗、低流量消耗。 低端机在此模式下运行时,进行了额外的性能优化: + 部分低端机型配置编码帧长 40/60 + 部分低端机型关闭软件 3A 音频处理 增强对 iOS 其他屏幕录制进行的兼容性,避免音频录制被 RTC 打断。 |
| CHANNEL_PROFILE_CLOUD_GAME(3) | 云游戏模式。 如果你的游戏场景需要低延迟的配置,使用此设置。 此设置下,弱网抗性较差。 |
| CHANNEL_PROFILE_LOW_LATENCY(4) | 云渲染模式。超低延时配置。 如果你的应用并非游戏但又对延时要求较高时,选用此模式 该模式下,音视频通话延时会明显降低,但同时弱网抗性、通话音质等均会受到一定影响。 |
| CHANNEL_PROFILE_CHAT(5) | 适用于 1 vs 1 音视频通话 |
| CHANNEL_PROFILE_CHAT_ROOM(6) | 适用于 3 人及以上纯语音通话。 通话中,闭麦时为是媒体模式,上麦后切换为通话模式。 |
| CHANNEL_PROFILE_LW_TOGETHER(7) | 实现多端同步播放音视频,适用于 “一起看” 或 “一起听” 场景。 该场景中,使用 RTC 信令同步播放进度,共享的音频内容不通过 RTC 进行传输。 |
| CHANNEL_PROFILE_GAME_HD(8) | 适用于对音质要求较高的游戏场景,优化音频 3A 策略,只通过媒体模式播放音频 |
| CHANNEL_PROFILE_CO_HOST(9) | 适用于直播中主播之间连麦的业务场景。 该场景中,直播时通过 CDN,发起连麦 PK 时使用 RTC。 |
| CHANNEL_PROFILE_INTERACTIVE_PODCAST(10) | 适用于单主播和观众进行音视频互动的直播。通话模式,上下麦不会有模式切换,避免音量突变现象 |
| CHANNEL_PROFILE_KTV(11) | 线上 KTV 场景,音乐音质,低延迟 使用 RTC 传输伴奏音乐,混音后的歌声,适合独唱或单通合唱 |
| CHANNEL_PROFILE_CHORUS(12) | 适合在线实时合唱场景,高音质,超低延迟。使用本配置前请联系技术支持进行协助完成其他配置。 |
| CHANNEL_PROFILE_GAME_STREAMING(14) | 适用于 1 vs 1 游戏串流,支持公网或局域网。 |
| CHANNEL_PROFILE_LAN_LIVE_STREAMING(15) | 适用于局域网的 1 对多视频直播,最高支持 8K, 60 帧/秒, 100 Mbps 码率 需要在局域网配置私有化部署媒体服务器。 |
| CHANNEL_PROFIEL_MEETING(16) | 适用于云端会议中的会议室终端设备,例如 Rooms,投屏盒子等。 |
| CHANNEL_PROFILE_MEETING_ROOM(17) | 适用于云端会议中的会议室终端设备,例如 Rooms,投屏盒子等。 |
| CHANNEL_PROFILE_CLASSROOM(18) | 适用于课堂互动,房间内所有成员都可以进行音视频互动 当你的场景中需要同时互动的成员超过 10人时使用此模式 |
public enum com.ss.bytertc.engine.type.ConnectionState
javaSDK 与 RTC 服务器连接状态。
| 类型 | 说明 |
|---|---|
| CONNECTION_STATE_DISCONNECTED(1) | 连接断开超过 12s,此时 SDK 会尝试自动重连。 |
| CONNECTION_STATE_CONNECTING(2) | 首次请求建立连接,正在连接中。 |
| CONNECTION_STATE_CONNECTED(3) | 首次连接成功。 |
| CONNECTION_STATE_RECONNECTING(4) | 涵盖了以下情况: + 首次连接时,10 秒内未连接成功; + 连接成功后,断连 10 秒。自动重连中。 |
| CONNECTION_STATE_RECONNECTED(5) | 连接断开后,重连成功。 |
| CONNECTION_STATE_LOST(6) | 处于 CONNECTION_STATE_DISCONNECTED 状态超过 10 秒,且期间重连未成功。SDK 仍将继续尝试重连。 |
| CONNECTION_STATE_FAILED(7) | 连接失败,服务端状态异常。SDK 不会自动重连,请重新进房,或联系技术支持。 |
public enum com.ss.bytertc.engine.type.EchoTestResult
java音视频回路测试结果
| 类型 | 说明 |
|---|---|
| ECHO_TEST_SUCCESS(0) | 接收到采集的音视频的回放,通话回路检测成功 |
| ECHO_TEST_TIMEOUT(1) | 测试超过 60s 仍未完成,已自动停止 |
| ECHO_TEST_INTERVAL_SHORT(2) | 上一次测试结束和下一次测试开始之间的时间间隔少于 5s |
| 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) | 内部错误,不可恢复 |
public enum com.ss.bytertc.engine.type.FallbackOrRecoverReason
java远端订阅流发生回退或恢复的原因
| 类型 | 说明 |
|---|---|
| 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) | 由性能恢复导致的发布端音视频流恢复。 |
public enum com.ss.bytertc.engine.type.FirstFramePlayState
java首帧播放状态
| 类型 | 说明 |
|---|---|
| FIRST_FRAME_PLAY_STATE_PLAYING(0) | 播放中 |
| FIRST_FRAME_PLAY_STATE_PLAYED(1) | 播放成功 |
| FIRST_FRAME_PLAY_STATE_END(2) | 播放失败 |
public enum com.ss.bytertc.engine.type.FirstFrameSendState
java首帧发送状态
| 类型 | 说明 |
|---|---|
| FIRST_FRAME_SEND_STATE_SENDING(0) | 发送中 |
| FIRST_FRAME_SEND_STATE_SENT(1) | 发送成功 |
| FIRST_FRAME_SEND_STAT_END(2) | 发送失败 |
public class com.ss.bytertc.engine.type.LocalAudioStats
java本地音频流统计信息,统计周期为 2s 。
本地用户发布音频流成功后,SDK 会周期性地通过 onLocalStreamStats 通知用户发布的音频流在此次统计周期内的发送状况。此数据结构即为回调给用户的参数类型。
| 类型 | 名称 |
|---|---|
| float | audioLossRate |
| float | sendKBitrate |
| int | recordSampleRate |
| int | statsInterval |
| int | rtt |
| int | numChannels |
| int | sentSampleRate |
public float com.ss.bytertc.engine.type.LocalAudioStats.audioLossRate;
java音频丢包率。此次统计周期内的音频上行丢包率,单位为 % ,取值范围为 [0, 1] 。
public float com.ss.bytertc.engine.type.LocalAudioStats.sendKBitrate;
java发送码率。此次统计周期内的音频发送码率,单位为 kbps 。
public int com.ss.bytertc.engine.type.LocalAudioStats.recordSampleRate;
java采集采样率。此次统计周期内的音频采集采样率信息,单位为 Hz 。
public int com.ss.bytertc.engine.type.LocalAudioStats.statsInterval;
java统计间隔。此次统计周期的间隔,单位为 ms 。
此字段用于设置回调的统计周期,默认设置为 2s 。
public int com.ss.bytertc.engine.type.LocalAudioStats.rtt;
java往返时延。单位为 ms 。
public int com.ss.bytertc.engine.type.LocalAudioStats.numChannels;
java音频声道数。
public int com.ss.bytertc.engine.type.LocalAudioStats.sentSampleRate;
java音频发送采样率。此次统计周期内的音频发送采样率信息,单位为 Hz 。
public class com.ss.bytertc.engine.type.LocalStreamStats
java本地音/视频流统计信息,统计周期为 2s 。
本地用户发布音/视频流成功后,SDK 会周期性地通过 onLocalStreamStats 通知本地用户发布的音/视频流在此次统计周期内的发送状况。此数据结构即为回调给用户的参数类型。
| 类型 | 名称 |
|---|---|
| LocalAudioStats | audioStats |
| LocalVideoStats | videoStats |
| boolean | isScreen |
public LocalAudioStats com.ss.bytertc.engine.type.LocalStreamStats.audioStats;
java本地设备发送音频流的统计信息,详见 LocalAudioStats 。
public LocalVideoStats com.ss.bytertc.engine.type.LocalStreamStats.videoStats;
java本地设备发送视频流的统计信息,详见 LocalVideoStats 。
public boolean com.ss.bytertc.engine.type.LocalStreamStats.isScreen;
java所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。
public class com.ss.bytertc.engine.type.LocalVideoStats
java本地视频流统计信息,统计周期为 2s 。
本地用户发布视频流成功后,SDK 会周期性地通过 onLocalStreamStats
通知用户发布的视频流在此次统计周期内的发送状况。此数据结构即为回调给用户的参数类型。
| 类型 | 名称 |
|---|---|
| float | sentKBitrate |
| int | inputFrameRate |
| int | sentFrameRate |
| int | encoderOutputFrameRate |
| int | rendererOutputFrameRate |
| int | statsInterval |
| float | videoLossRate |
| int | rtt |
| int | encodedBitrate |
| int | encodedFrameWidth |
| int | encodedFrameHeight |
| int | encodedFrameCount |
| int | codecType |
| boolean | isScreen |
public float com.ss.bytertc.engine.type.LocalVideoStats.sentKBitrate;
java发送码率。此次统计周期内实际发送的分辨率最大的视频流的发送码率,单位为 Kbps
public int com.ss.bytertc.engine.type.LocalVideoStats.inputFrameRate;
java采集帧率。此次统计周期内的视频采集帧率,单位为 fps 。
public int com.ss.bytertc.engine.type.LocalVideoStats.sentFrameRate;
java发送帧率。此次统计周期内实际发送的分辨率最大的视频流的视频发送帧率,单位为 fps 。
public int com.ss.bytertc.engine.type.LocalVideoStats.encoderOutputFrameRate;
java编码器输出帧率。当前编码器在此次统计周期内实际发送的分辨率最大的视频流的输出帧率,单位为 fps 。
public int com.ss.bytertc.engine.type.LocalVideoStats.rendererOutputFrameRate;
java本地渲染帧率。此次统计周期内的本地视频渲染帧率,单位为 fps 。
public int com.ss.bytertc.engine.type.LocalVideoStats.statsInterval;
java统计间隔,单位为 ms 。
此字段用于设置回调的统计周期,默认设置为 2s 。
public float com.ss.bytertc.engine.type.LocalVideoStats.videoLossRate;
java视频丢包率。此次统计周期内的视频上行丢包率,取值范围: [0,1] 。
public int com.ss.bytertc.engine.type.LocalVideoStats.rtt;
java往返时延,单位为 ms 。
public int com.ss.bytertc.engine.type.LocalVideoStats.encodedBitrate;
java视频编码码率。此次统计周期内的实际发送的分辨率最大的视频流视频编码码率,单位为 Kbps 。
public int com.ss.bytertc.engine.type.LocalVideoStats.encodedFrameWidth;
java实际发送的分辨率最大的视频流的视频编码宽度,单位为 px 。
public int com.ss.bytertc.engine.type.LocalVideoStats.encodedFrameHeight;
java实际发送的分辨率最大的视频流的视频编码高度,单位为 px 。
public int com.ss.bytertc.engine.type.LocalVideoStats.encodedFrameCount;
java此次统计周期内实际发送的分辨率最大的视频流的发送的视频帧总数。
public int com.ss.bytertc.engine.type.LocalVideoStats.codecType;
java视频的编码类型,具体参考 VideoCodecType 。
public boolean com.ss.bytertc.engine.type.LocalVideoStats.isScreen;
java所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。
public enum com.ss.bytertc.engine.type.LocalVideoStreamError
java本地视频状态改变时的错误码
| 类型 | 说明 |
|---|---|
| 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) | 通话过程中本地视频采集设备被其他程序抢占,导致设备连接中断 |
public enum com.ss.bytertc.engine.type.LocalVideoStreamState
java本地视频流状态
| 类型 | 说明 |
|---|---|
| LOCAL_VIDEO_STREAM_STATE_STOPPED(0) | 本地视频采集停止状态(默认初始状态) 本地视频采集关闭时回调该状态,对应错误码 LocalVideoStreamError 中的 LOCAL_VIDEO_STREAM_ERROR_OK |
| LOCAL_VIDEO_STREAM_STATE_RECORDING(1) | 本地视频采集设备启动成功 本地视频采集开启时回调该状态,对应错误码 LocalVideoStreamError 中的 LOCAL_VIDEO_STREAM_ERROR_OK |
| LOCAL_VIDEO_STREAM_STATE_ENCODING(2) | 本地视频采集后,首帧编码成功 本地视频首帧编码成功时回调该状态,对应错误码 LocalVideoStreamError 中的 LOCAL_VIDEO_STREAM_ERROR_OK |
| LOCAL_VIDEO_STREAM_STATE_FAILED(3) | 本地视频启动失败 + 本地视频采集设备启动失败,对应错误码 LocalVideoStreamError 中的 LOCAL_VIDEO_STREAM_ERROR_FAILURE + 检测到没有视频采集设备权限,对应错误码 LocalVideoStreamError 中的 LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION + 视频编码失败,对应错误码 LocalVideoStreamError 中的 LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE |
public class com.ss.bytertc.engine.type.MediaDeviceError
java媒体设备错误类型
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_OK = 0;
java媒体设备正常
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_NOPERMISSION = 1;
java没有权限启动媒体设备
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_DEVICEBUSY = 2;
java媒体设备已经在使用中
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_DEVICEFAILURE = 3;
java媒体设备错误
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_DEVICENOTFOUND = 4;
java未找到指定的媒体设备
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_DEVICEDISCONNECTED = 5;
java媒体设备被移除
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_DEVICENOCALLBACK = 6;
java无采集数据。当媒体设备的预期行为是正常采集,但没有收到采集数据时,将收到该错误。
public static final int com.ss.bytertc.engine.type.MediaDeviceError.MEDIA_DEVICE_ERROR_UNSUPPORTFORMAT = 7;
java设备采样率不支持
public class com.ss.bytertc.engine.type.MediaDeviceState
java媒体设备状态
通过 onAudioDeviceStateChanged 或 onVideoDeviceStateChanged 回调设备状态。
public static final int com.ss.bytertc.engine.type.MediaDeviceState.MEDIA_DEVICE_STATE_STARTED = 1;
java设备开启采集
public static final int com.ss.bytertc.engine.type.MediaDeviceState.MEDIA_DEVICE_STATE_STOPPED = 2;
java设备停止采集
public static final int com.ss.bytertc.engine.type.MediaDeviceState.MEDIA_DEVICE_STATE_RUNTIMEERROR = 3;
java设备运行时错误
例如,当媒体设备的预期行为是正常采集,但没有收到采集数据时,将回调该状态。
public static final int com.ss.bytertc.engine.type.MediaDeviceState.MEDIA_DEVICE_STATE_ADDED = 10;
java设备已插入
public static final int com.ss.bytertc.engine.type.MediaDeviceState.MEDIA_DEVICE_STATE_REMOVED = 11;
java设备被移除
public static final int com.ss.bytertc.engine.type.MediaDeviceState.MEDIA_DEVICE_STATE_INTERRUPTION_BEGAN= 12;
java系统通话打断了音视频通话。将在通话结束后自动恢复。
public static final int com.ss.bytertc.engine.type.MediaDeviceState.MEDIA_DEVICE_STATE_INTERRUPTION_ENDED= 13;
java音视频通话已从系统电话中恢复
public class com.ss.bytertc.engine.type.MediaDeviceWarning
java媒体设备警告
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_OK = 0;
java无警告
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_OPERATION_DENIED = 1;
java非法设备操作。在使用外部设备时,调用了 SDK 内部设备 API。
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_CAPTURE_SILENCE = 2;
java采集到的数据为静音帧。
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_ANDROID_SYS_SILENCE = 3;
javaAndroid 特有的静音,系统层面的静音上报
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_ANDROID_SYS_SILENCE_DISAPPEAR = 4;
javaAndroid 特有的静音消失
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_INVALID_SCENARIO = 20;
java当前 AudioScenario 不支持更改音频路由,设置音频路由失败
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_NOT_EXISTS = 21;
java音频设备不存在,设置音频路由失败
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_FAILED_BY_PRIORITY = 22;
java音频路由被系统或其他应用占用,设置音频路由失败
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_NOT_VOIP_MODE = 23;
java当前非通话模式,不支持设置音频路由
public static final int com.ss.bytertc.engine.type.MediaDeviceWarning.MEDIA_DEVICE_WARNING_SET_AUDIO_ROUTE_DEVICE_NOT_START = 24;
java音频设备未启动,设置音频路由失败
public enum com.ss.bytertc.engine.type.MediaStreamType
java媒体流类型
| 类型 | 说明 |
|---|---|
| RTC_MEDIA_STREAM_TYPE_AUDIO(1) | 只控制音频 |
| RTC_MEDIA_STREAM_TYPE_VIDEO(2) | 只控制视频 |
| RTC_MEDIA_STREAM_TYPE_BOTH(3) | 同时控制音频和视频 |
public enum com.ss.bytertc.engine.type.MessageConfig
java发送消息的可靠有序性
| 类型 | 说明 |
|---|---|
| MessageConfigReliableOrdered (0) | 低延时可靠有序消息 |
| MessageConfigUnreliableOrdered (1) | 超低延时有序消息 |
| MessageConfigUnreliableUnordered (2) | 超低延时无序消息 |
public enum com.ss.bytertc.engine.type.NetworkDetectionLinkType
java通话前探测链接的类型。 onNetworkDetectionResult 回调的参数类型
| 类型 | 说明 |
|---|---|
| NetworkDetectionLinkTypeUp (0) | 上行网络探测 |
| NetworkDetectionLinkTypeDown (1) | 下行网络探测 |
public enum com.ss.bytertc.engine.type.NetworkDetectionStopReason
java通话前探测的停止原因。 onNetworkDetectionStopped 回调的参数类型
| 类型 | 说明 |
|---|---|
| NetworkDetectionStopReasonUser (0) | 用户主动停止 |
| NetworkDetectionStopReasonTimeout (1) | 探测超过三分钟 |
| NetworkDetectionStopReasonConnectionLost (2) | 探测网络连接断开。 当超过 12s 没有收到回复,SDK 将断开网络连接,并且不再尝试重连。 |
| NetworkDetectionStopReasonStreaming (3) | 本地开始推拉流,停止探测 |
| NetworkDetectionStopReasonInnerErr (4) | 网络探测失败,内部异常 |
public class com.ss.bytertc.engine.type.NetworkQuality
java所属用户的媒体流网络质量。
| 类型 | 名称 |
|---|---|
| int | NETWORK_QUALITY_UNKNOWN |
| int | NETWORK_QUALITY_EXCELLENT |
| int | NETWORK_QUALITY_GOOD |
| int | NETWORK_QUALITY_POOR |
| int | NETWORK_QUALITY_BAD |
| int | NETWORK_QUALITY_VERY_BAD |
| int | NETWORK_QUALITY_DISCONNECTED |
public static final int com.ss.bytertc.engine.type.NetworkQuality.NETWORK_QUALITY_UNKNOWN = 0;
java媒体流网络质量未知。
public static final int com.ss.bytertc.engine.type.NetworkQuality.NETWORK_QUALITY_EXCELLENT = 1;
java媒体流网络质量极好。
public static final int com.ss.bytertc.engine.type.NetworkQuality.NETWORK_QUALITY_GOOD = 2;
java媒体流网络质量好。
public static final int com.ss.bytertc.engine.type.NetworkQuality.NETWORK_QUALITY_POOR = 3;
java媒体流网络质量较差但不影响沟通。
public static final int com.ss.bytertc.engine.type.NetworkQuality.NETWORK_QUALITY_BAD = 4;
java媒体流网络质量差沟通不顺畅。
public static final int com.ss.bytertc.engine.type.NetworkQuality.NETWORK_QUALITY_VERY_BAD = 5;
java媒体流网络质量非常差。
public static final int com.ss.bytertc.engine.type.NetworkQuality.NETWORK_QUALITY_DISCONNECTED = 6;
java12 s 内无应答,代表网络断开,将返回本枚举值。
你也可以通过 onConnectionStateChanged 监听 CONNECTION_STATE_DISCONNECTED(1) 感知网络断开。
更多网络状态信息参见 连接状态提示。
public class com.ss.bytertc.engine.type.NetworkQualityStats
java上行/下行网络质量
| 类型 | 名称 |
|---|---|
| String | uid |
| double | fractionLost |
| int | rtt |
| int | totalBandwidth |
| int | txQuality |
| int | rxQuality |
| 返回 | 名称 |
|---|---|
| String | toString |
public String com.ss.bytertc.engine.type.NetworkQualityStats.uid;
java用户 id
public double com.ss.bytertc.engine.type.NetworkQualityStats.fractionLost;
java本端的上行/下行的丢包率,范围 [0.0,1.0]
当 uid 为本地用户时,代表发布流的上行丢包率。
当 uid 为远端用户时,代表接收所有订阅流的下行丢包率。
public int com.ss.bytertc.engine.type.NetworkQualityStats.rtt;
java当 uid 为本地用户时有效,客户端到服务端的往返延时(RTT),单位:ms
public int com.ss.bytertc.engine.type.NetworkQualityStats.totalBandwidth;
java本端的音视频 RTP 包 2 秒内的平均传输速率,单位:bps
当 uid 为本地用户时,代表发送速率。
当 uid 为远端用户时,代表所有订阅流的接收速率。
public int com.ss.bytertc.engine.type.NetworkQualityStats.txQuality;
java上行网络质量分。范围 [0,5],分数越高网络质量越差。
public int com.ss.bytertc.engine.type.NetworkQualityStats.rxQuality;
java下行网络质量分。范围 [0,5],分数越高网络质量越差。
public String com.ss.bytertc.engine.type.NetworkQualityStats.toString()
javapublic enum com.ss.bytertc.engine.type.PauseResumeControlMediaType
java暂停/恢复接收远端的媒体流类型。
| 类型 | 说明 |
|---|---|
| RTC_PAUSE_RESUME_CONTROL_AUDIO | 只控制音频,不影响视频 |
| RTC_PAUSE_RESUME_CONTROL_VIDEO | 只控制视频,不影响音频 |
| RTC_PAUSE_RESUME_CONTROL_AUDIO_AND_VIDEO | 同时控制音频和视频 |
public enum com.ss.bytertc.engine.type.PerformanceAlarmMode
java性能回退的模式
| 类型 | 说明 |
|---|---|
| PERFORMANCE_ALARM_MODE_NORMAL | 未开启发布性能回退 |
| PERFORMANCE_ALARM_MODE_SIMULCAST | 已开启发布性能回退 |
public enum com.ss.bytertc.engine.type.PerformanceAlarmReason
java性能相关告警的原因
| 类型 | 说明 |
|---|---|
| PERFORMANCE_ALARM_REASON_BANDWIDTH_FALLBACKED | 网络原因差,造成了发送性能回退。仅在开启发送性能回退时,会收到此原因。 |
| PERFORMANCE_ALARM_REASON_BANDWIDTH_RESUMED | 网络性能恢复,发送性能回退恢复。仅在开启发送性能回退时,会收到此原因。 |
| PERFORMANCE_ALARM_REASON_PERFORMANCE_FALLBACKED | 如果未开启发送性能回退,收到此告警时,意味着性能不足; 如果开启了发送性能回退,收到此告警时,意味着性能不足,且已发生发送性能回退。 |
| PERFORMANCE_ALARM_REASON_PERFORMANCE_RESUMED | 如果未开启发送性能回退,收到此告警时,意味着性能不足已恢复; 如果开启了发送性能回退,收到此告警时,意味着性能不足已恢复,且已发生发送性能回退恢复。 |
public enum com.ss.bytertc.engine.type.ProblemFeedback
java音视频质量反馈问题类型
| 类型 | 说明 |
|---|---|
| PROBLEM_NONE(0, "No problem") | 没有问题 |
| PROBLEM_OTHER_MSG (1,"Other Issues") | 其他问题 |
| PROBLEM_AUDIO_NOT_CLEAR (1 << 1, "Sound is not clear") | 有杂音 |
| PROBLEM_VIDEO_NOT_CLEAR (1 << 2, "Video is not clear") | 视频模糊 |
| PROBLEM_SYNC (1 << 3, "Audio and video is not synchronized") | 音视频不同步 |
| PROBLEM_AUDIO_LAGGING (1 << 4, "Audio lagging") | 音频卡顿 |
| PROBLEM_VIDEO_DELAY (1 << 5, "Video Delay") | 视频延迟 |
| PROBLEM_DISCONNECT (1 << 6, "Disconnect") | 连接失败 |
| PROBLEM_NO_AUDIO (1 << 7, "No audio") | 无声音 |
| PROBLEM_NO_VIDEO (1 << 8, "No video") | 无画面 |
| PROBLEM_AUDIO_STRENGTH (1 << 9, "Too quiet") | 声音过小 |
| PROBLEM_ECHO (1 << 10, "Echo Noise") | 有回声 |
| PROBLEM_EAR_BACK_DELAY(1 << 11,"Ear back delay") | 耳返延迟大 |
public enum com.ss.bytertc.engine.type.PublishFallbackOption
java发布端音视频流回退选项
| 类型 | 说明 |
|---|---|
| kPublishFallbackDisable(0) | 上行网络不佳或设备性能不足时,不对音视频流作回退处理。默认设置。 |
| kPublishFallbackSimulcastSmallVideoOnly(1) | 上行网络不佳或设备性能不足时,发布的视频流会从大流到小流依次降级,直到与当前网络性能匹配,具体降级规则参看性能回退文档。 |
public class com.ss.bytertc.engine.type.RangeAudioInfo
java范围语音流信息
| 类型 | 名称 |
|---|---|
| String | userId |
| int | factor |
public String com.ss.bytertc.engine.type.RangeAudioInfo.userId;
java远端音频发布用户 ID
public int com.ss.bytertc.engine.type.RangeAudioInfo.factor;
java本地用户听到该远端音频发布用户的衰减系数,范围 [0,100],数值为 0 时表示远端用户音频音量为 0。
public enum com.ss.bytertc.engine.type.RecordingErrorCode
java本地录制的错误码
| 类型 | 说明 |
|---|---|
| RECORDING_ERROR_CODE_OK(0) | 录制正常 |
| RECORDING_ERROR_CODE_NO_PERMISSION(-1) | 没有文件写权限 |
| RECORDING_ERROR_CODE_NOT_SUPPORT(-2) | 当前版本 SDK 不支持本地录制功能,请联系技术支持人员 |
| RECORDING_ERROR_CODE_NO_OTHER(-3) | 其他异常 |
public enum com.ss.bytertc.engine.type.RecordingFileType
java本地录制文件的存储格式
| 类型 | 说明 |
|---|---|
| RECORDING_FILE_TYPE_AAC(0) | aac 格式文件 |
| RECORDING_FILE_TYPE_MP4(1) | mp4 格式文件 |
public enum com.ss.bytertc.engine.type.RecordingState
java本地录制的状态
| 类型 | 说明 |
|---|---|
| RECORDING_STATE_ERROE(0) | 录制异常 |
| RECORDING_STATE_PROCESSING(1) | 录制进行中 |
| RECORDING_STATE_SUCCESS(2) | 录制文件保存成功,调用 stopFileRecording 结束录制之后才会收到该状态码。 |
public enum com.ss.bytertc.engine.type.RecordingType
java本地录制的媒体类型
| 类型 | 说明 |
|---|---|
| RECORD_AUDIO_ONLY(0) | 只录制音频 |
| RECORD_VIDEO_ONLY(1) | 只录制视频 |
| RECORD_VIDEO_AND_AUDIO(2) | 同时录制音频和视频 |
public class com.ss.bytertc.engine.type.RemoteAudioStats
java远端音频流统计信息,统计周期为 2s。
本地用户订阅远端音频流成功后,SDK 会周期性地通过 onRemoteStreamStats 通知本地用户订阅的音频流在此次统计周期内的接收状况。此数据结构即为回调给本地用户的参数类型。
| 类型 | 名称 |
|---|---|
| float | audioLossRate |
| float | receivedKBitrate |
| int | stallCount |
| int | stallDuration |
| long | e2eDelay |
| int | playoutSampleRate |
| int | statsInterval |
| int | rtt |
| int | total_rtt |
| int | quality |
| int | jitterBufferDelay |
| int | numChannels |
| int | receivedSampleRate |
| int | frozenRate |
| int | concealedSamples |
| int | concealmentEvent |
| int | decSampleRate |
| int | decDuration |
public float com.ss.bytertc.engine.type.RemoteAudioStats.audioLossRate;
java音频丢包率。统计周期内的音频下行丢包率,取值范围为 [0, 1] 。
public float com.ss.bytertc.engine.type.RemoteAudioStats.receivedKBitrate;
java接收码率。统计周期内的音频接收码率,单位为 kbps 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.stallCount;
java音频卡顿次数。统计周期内的卡顿次数。
public int com.ss.bytertc.engine.type.RemoteAudioStats.stallDuration;
java音频卡顿时长。统计周期内的卡顿时长,单位为 ms 。
public long com.ss.bytertc.engine.type.RemoteAudioStats.e2eDelay;
java用户体验级别的端到端延时。从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为 ms 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.playoutSampleRate;
java播放采样率。统计周期内的音频播放采样率信息,单位为 Hz 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.statsInterval;
java统计间隔。此次统计周期的间隔,单位为 ms 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.rtt;
java客户端到服务端数据传输的往返时延,单位为 ms 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.total_rtt;
java发送端——服务端——接收端全链路数据传输往返时延。单位为 ms 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.quality;
java远端用户发送的音频流质量。值含义参考 NetworkQuality 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.jitterBufferDelay;
java因引入 jitter buffer 机制导致的延时。单位为 ms 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.numChannels;
java音频声道数。
public int com.ss.bytertc.engine.type.RemoteAudioStats.receivedSampleRate;
java音频接收采样率。统计周期内接收到的远端音频采样率信息,单位为 Hz 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.frozenRate;
java远端用户在加入房间后发生音频卡顿的累计时长占音频总有效时长的百分比。音频有效时长是指远端用户进房发布音频流后,除停止发送音频流和禁用音频模块之外的音频时长。
public int com.ss.bytertc.engine.type.RemoteAudioStats.concealedSamples;
java音频丢包补偿(PLC) 样点总个数。
public int com.ss.bytertc.engine.type.RemoteAudioStats.concealmentEvent;
java音频丢包补偿(PLC) 累计次数。
public int com.ss.bytertc.engine.type.RemoteAudioStats.decSampleRate;
java音频解码采样率。统计周期内的音频解码采样率信息,单位为 Hz 。
public int com.ss.bytertc.engine.type.RemoteAudioStats.decDuration;
java此次订阅中,对远端音频流进行解码的累计耗时。单位为 s。
public class com.ss.bytertc.engine.type.RemoteStreamStats
java用户订阅的远端音/视频流统计信息以及网络状况,统计周期为 2s 。
订阅远端用户发布音/视频流成功后,SDK 会周期性地通过 onRemoteStreamStats 通知本地用户订阅的远端音/视频流在此次统计周期内的接收状况。此数据结构即为回调给本地用户的参数类型。
| 类型 | 名称 |
|---|---|
| String | uid |
| RemoteAudioStats | audioStats |
| RemoteVideoStats | videoStats |
| boolean | isScreen |
public String com.ss.bytertc.engine.type.RemoteStreamStats.uid;
java用户 ID 。音/视频来源的远端用户 ID 。
public RemoteAudioStats com.ss.bytertc.engine.type.RemoteStreamStats.audioStats;
java远端音频流的统计信息,详见 RemoteAudioStats
public RemoteVideoStats com.ss.bytertc.engine.type.RemoteStreamStats.videoStats;
java远端视频流的统计信息,详见 RemoteVideoStats
public boolean com.ss.bytertc.engine.type.RemoteStreamStats.isScreen;
java所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。
public class com.ss.bytertc.engine.type.RemoteStreamSwitch
java流切换信息。本地用户订阅的远端流触发回退策略时的流切换信息。
| 类型 | 名称 |
|---|---|
| String | uid |
| boolean | isScreen |
| int | before_video_index |
| int | after_video_index |
| boolean | before_enable |
| boolean | after_enable |
| FallbackOrRecoverReason | reason |
public String com.ss.bytertc.engine.type.RemoteStreamSwitch.uid;
java订阅的音视频流的发布者的用户 ID
public boolean com.ss.bytertc.engine.type.RemoteStreamSwitch.isScreen;
java是否是屏幕共享流
public int com.ss.bytertc.engine.type.RemoteStreamSwitch.before_video_index;
java流切换前订阅视频流的分辨率对应的索引
public int com.ss.bytertc.engine.type.RemoteStreamSwitch.after_video_index;
java流切换后订阅视频流的分辨率对应的索引
public boolean com.ss.bytertc.engine.type.RemoteStreamSwitch.before_enable;
java流切换前是否有视频流
public boolean com.ss.bytertc.engine.type.RemoteStreamSwitch.after_enable;
java流切换后是否有视频流
public FallbackOrRecoverReason com.ss.bytertc.engine.type.RemoteStreamSwitch.reason;
java流切换原因,详见类型 FallbackOrRecoverReason 。
public enum com.ss.bytertc.engine.type.RemoteUserPriority
java远端用户优先级,在性能不足需要回退时,会优先回退优先级低的用户的音视频流。
| 类型 | 说明 |
|---|---|
| REMOTE_USER_PRIORITY_LOW(0) | 用户优先级为低,默认值。 |
| REMOTE_USER_PRIORITY_MEDIUM(100) | 用户优先级为正常。 |
| REMOTE_USER_PRIORITY_HIGH(200) | 用户优先级为高。 |
public enum com.ss.bytertc.engine.type.RemoteVideoState
java远端视频流状态。状态改变时,会收到回调:onRemoteVideoStateChanged
| 类型 | 说明 |
|---|---|
| REMOTE_VIDEO_STATE_STOPPED(0) | 远端视频流默认初始状态 在以下时机回调该状态: + 本地用户停止接收远端视频流,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_LOCAL_MUTED。 + 远端用户停止发送视频流,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_REMOTE_MUTED。 + 远端用户离开房间,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_REMOTE_OFFLINE。 |
| REMOTE_VIDEO_STATE_STARTING(1) | 本地用户已接收远端视频首包 收到远端视频首包时回调该状态,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_LOCAL_UNMUTED。 |
| REMOTE_VIDEO_STATE_DECODING(2) | 远端视频流正在解码,正常播放 在以下时机回调该状态: + 成功解码远端视频首帧,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_LOCAL_UNMUTED。 + 网络由阻塞恢复正常,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_NETWORK_RECOVERY。 + 本地用户恢复接收远端视频流,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_LOCAL_UNMUTED。 + 远端用户恢复发送视频流,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_STATE_CHANGE_REASON_NETWORK_CONGESTION。 |
| REMOTE_VIDEO_STATE_FROZEN(3) | 远端视频流卡顿 网络阻塞、丢包率大于40%时回调该状态,对应错误码 RemoteVideoStateChangeReason 中的 REMOTE_VIDEO_REASON_NETWORK_CONGESTION 。 |
| REMOTE_VIDEO_STATE_FAILED(4) | 远端视频流播放失败 |
public enum com.ss.bytertc.engine.type.RemoteVideoStateChangeReason
java远端视频流状态改变的原因
| 类型 | 说明 |
|---|---|
| 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) | 远端用户离开房间 状态转换参看 onUserUnpublishStream/onUserUnpublishScreen。 |
public class com.ss.bytertc.engine.type.RemoteVideoStats
java远端视频流统计信息,统计周期为 2s 。
本地用户订阅远端视频流成功后,SDK 会周期性地通过 onRemoteStreamStats
通知本地用户订阅的远端视频流在此次统计周期内的接收状况。此数据结构即为回调给本地用户的参数类型。
| 类型 | 名称 |
|---|---|
| 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 | codecType |
| int | videoIndex |
public int com.ss.bytertc.engine.type.RemoteVideoStats.width;
java远端视频流宽度
public int com.ss.bytertc.engine.type.RemoteVideoStats.height;
java远端视频流高度
public float com.ss.bytertc.engine.type.RemoteVideoStats.videoLossRate;
java视频丢包率。统计周期内的视频下行丢包率,单位为 % ,取值范围为 [0,1] 。
public float com.ss.bytertc.engine.type.RemoteVideoStats.receivedKBitrate;
java接收码率。统计周期内的视频接收码率,单位为 kbps 。
public int com.ss.bytertc.engine.type.RemoteVideoStats.decoderOutputFrameRate;
java解码器输出帧率。统计周期内的视频解码器输出帧率,单位 fps 。
public int com.ss.bytertc.engine.type.RemoteVideoStats.rendererOutputFrameRate;
java渲染帧率。统计周期内的视频渲染帧率,单位 fps 。
public int com.ss.bytertc.engine.type.RemoteVideoStats.stallCount;
java卡顿次数。统计周期内的卡顿次数。
public int com.ss.bytertc.engine.type.RemoteVideoStats.stallDuration;
java卡顿时长。统计周期内的视频卡顿总时长。单位 ms 。
public long com.ss.bytertc.engine.type.RemoteVideoStats.e2eDelay;
java用户体验级别的端到端延时,从发送端采集完成编码开始到接收端解码完成渲染开始的延时,单位为毫秒
public boolean com.ss.bytertc.engine.type.RemoteVideoStats.isScreen;
java所属用户的媒体流是否为屏幕流。你可以知道当前统计数据来自主流还是屏幕流。
public int com.ss.bytertc.engine.type.RemoteVideoStats.statsInterval;
java统计间隔,此次统计周期的间隔,单位为 ms 。
此字段用于设置回调的统计周期,目前设置为 2s 。
public int com.ss.bytertc.engine.type.RemoteVideoStats.rtt;
java往返时延,单位为 ms 。
public int com.ss.bytertc.engine.type.RemoteVideoStats.frozenRate;
java远端用户在进房后发生视频卡顿的累计时长占视频总有效时长的百分比(%)。视频有效时长是指远端用户进房发布视频流后,除停止发送视频流和禁用视频模块之外的视频时长。
public int com.ss.bytertc.engine.type.RemoteVideoStats.codecType;
java视频的编码类型,具体参考 VideoCodecType 。
public int com.ss.bytertc.engine.type.RemoteVideoStats.videoIndex;
java对应多种分辨率的流的下标。
public class com.ss.bytertc.engine.type.RTCRoomStats
java通话相关的统计信息
| 类型 | 名称 |
|---|---|
| int | totalDuration |
| long | txBytes |
| long | rxBytes |
| int | txKBitRate |
| int | rxKBitRate |
| int | txAudioKBitRate |
| int | rxAudioKBitRate |
| int | txVideoKBitRate |
| int | rxVideoKBitRate |
| int | txScreenKBitRate |
| int | rxScreenKBitRate |
| int | users |
| double | cpuTotalUsage |
| double | cpuAppUsage |
| double | txLostrate |
| double | rxLostrate |
| int | rtt |
| int | txJitter |
| int | rxJitter |
| int | txCellularKBitrate |
| int | rxCellularKBitrate |
| 返回 | 名称 |
|---|---|
| void | reset |
public int com.ss.bytertc.engine.type.RTCRoomStats.totalDuration;
java进房到退房之间累计时长,单位为 s
public long com.ss.bytertc.engine.type.RTCRoomStats.txBytes;
java本地用户的总发送字节数 (bytes),累计值
public long com.ss.bytertc.engine.type.RTCRoomStats.rxBytes;
java本地用户的总接收字节数 (bytes),累计值
public int com.ss.bytertc.engine.type.RTCRoomStats.txKBitRate;
java发送码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.rxKBitRate;
java接收码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.txAudioKBitRate;
java音频包的发送码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.rxAudioKBitRate;
java音频接收码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.txVideoKBitRate;
java视频发送码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.rxVideoKBitRate;
java视频接收码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.txScreenKBitRate;
java屏幕发送码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.rxScreenKBitRate;
java屏幕接收码率(kbps),获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.users;
java当前房间内的可见用户人数。
public double com.ss.bytertc.engine.type.RTCRoomStats.cpuTotalUsage;
java当前系统的 CPU 使用率 (%)
public double com.ss.bytertc.engine.type.RTCRoomStats.cpuAppUsage;
java当前应用的 CPU 使用率 (%)
public double com.ss.bytertc.engine.type.RTCRoomStats.txLostrate;
java当前应用的上行丢包率,取值范围为 [0, 1]
public double com.ss.bytertc.engine.type.RTCRoomStats.rxLostrate;
java当前应用的下行丢包率,取值范围为 [0, 1]
public int com.ss.bytertc.engine.type.RTCRoomStats.rtt;
java客户端到服务端数据传输的往返时延(单位 ms)
public int com.ss.bytertc.engine.type.RTCRoomStats.txJitter;
java系统上行网络抖动(ms)
public int com.ss.bytertc.engine.type.RTCRoomStats.rxJitter;
java系统下行网络抖动(ms)
public int com.ss.bytertc.engine.type.RTCRoomStats.txCellularKBitrate;
java蜂窝路径发送的码率 (kbps),为获取该数据时的瞬时值
public int com.ss.bytertc.engine.type.RTCRoomStats.rxCellularKBitrate;
java蜂窝路径接收码率 (kbps),为获取该数据时的瞬时值
public void com.ss.bytertc.engine.type.RTCRoomStats.reset()
java重置所有的 RTCRoomStats 成员变量的值,重新开始统计。
public class com.ss.bytertc.engine.type.RtcUser
java用户信息
| 类型 | 名称 |
|---|---|
| String | userId |
| String | metaData |
public String com.ss.bytertc.engine.type.RtcUser.userId;
java用户 id
public String com.ss.bytertc.engine.type.RtcUser.metaData;
java元数据
public enum com.ss.bytertc.engine.type.SEIStreamUpdateEvent
java黑帧视频流状态
| 类型 | 说明 |
|---|---|
| SEIStreamUpdateEventStreamAdd (0) | 远端用户发布黑帧视频流。 纯语音通话场景下,远端用户调用 sendSEIMessage 发送 SEI 数据时,SDK 会自动发布一路黑帧视频流,并触发该回调。 |
| SEIStreamUpdateEventStreamRemove (1) | 远端黑帧视频流移除。该回调的触发时机包括: + 远端用户开启摄像头采集,由语音通话切换至视频通话,黑帧视频流停止发布; + 远端用户调用 sendSEIMessage 后 1min 内未有 SEI 数据发送,黑帧视频流停止发布; + 远端用户调用 setVideoSourceType 切换至自定义视频采集时,黑帧视频流停止发布。 |
public class com.ss.bytertc.engine.type.SourceWantedData
java性能回退相关数据
| 类型 | 名称 |
|---|---|
| int | width |
| int | height |
| int | frameRate |
public int com.ss.bytertc.engine.type.SourceWantedData.width;
java如果未开启发送性能回退,此值表示推荐的视频输入宽度;
如果开启了发送性能回退,此值表示当前推流的最大宽度。
public int com.ss.bytertc.engine.type.SourceWantedData.height;
java如果未开启发送性能回退,此值表示推荐的视频输入高度;
如果开启了发送性能回退,此值表示当前推流的最大高度。
public int com.ss.bytertc.engine.type.SourceWantedData.frameRate;
java如果未开启发送性能回退,此值表示推荐的视频输入帧率,单位 fps;
如果开启了发送性能回退,此值表示当前推流的最大帧率,单位 fps。
public enum com.ss.bytertc.engine.type.StreamRemoveReason
java房间内远端流移除原因。
| 类型 | 说明 |
|---|---|
| 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) | 其他原因。 |
public enum com.ss.bytertc.engine.type.SubscribeFallbackOptions
java订阅端音视频流回退选项。
| 类型 | 说明 |
|---|---|
| SUBSCRIBE_FALLBACK_OPTIONS_DISABLED(0) | 下行网络不佳或设备性能不足时,不对音视频流作回退处理。默认设置。 |
| SUBSCRIBE_FALLBACK_OPTIONS_STREAM_LOW(1) | 下行网络不佳或设备性能不足时,对视频流做回退处理,具体降级规则参看音视频流回退。 该设置仅对发布端调用 enableSimulcastMode 开启发送多路流功能的情况生效。 |
| SUBSCRIBE_FALLBACK_OPTIONS_AUDIO_ONLY(2) | 下行网络不佳或设备性能不足时,先对视频流做回退处理。当网络状况不满足接收弱流时,则自动取消接收视频,仅接收音频。 该设置仅对发布端调用 enableSimulcastMode 开启发送多路流功能的情况生效。 |
public enum com.ss.bytertc.engine.type.SubscribeMediaType
java订阅的媒体类型
| 类型 | 说明 |
|---|---|
| RTC_SUBSCRIBE_MEDIA_TYPE_NONE | 既不订阅音频,也不订阅视频 |
| RTC_SUBSCRIBE_MEDIA_TYPE_AUDIO_ONLY | 只订阅音频,不订阅视频 |
| RTC_SUBSCRIBE_MEDIA_TYPE_VIDEO_ONLY | 只订阅视频,不订阅音频 |
| RTC_SUBSCRIBE_MEDIA_TYPE_AUDIO_AND_VIDEO | 同时订阅音频和视频 |
public enum com.ss.bytertc.engine.type.TorchState
java相机闪光灯状态
| 类型 | 说明 |
|---|---|
| TORCH_STATE_OFF(0) | 关闭 |
| TORCH_STATE_ON(1) | 打开 |
public class com.ss.bytertc.engine.type.UserOnlineStatus
java用户在线状态
| 类型 | 名称 |
|---|---|
| int | USER_ONLINE_STATUS_OFFLINE |
| int | USER_ONLINE_STATUS_ONLINE |
| int | USER_ONLINE_STATUS_UNREACHABLE |
public static final int com.ss.bytertc.engine.type.UserOnlineStatus.USER_ONLINE_STATUS_OFFLINE = 0;
java对端用户离线
对端用户已经调用 logout,或者没有调用 login 进行登录
public static final int com.ss.bytertc.engine.type.UserOnlineStatus.USER_ONLINE_STATUS_ONLINE = 1;
java对端用户在线
对端用户调用 login 登录,并且连接状态正常。
public static final int com.ss.bytertc.engine.type.UserOnlineStatus.USER_ONLINE_STATUS_UNREACHABLE = 2;
java无法获取对端用户在线状态
发生级联错误、对端用户在线状态异常时返回
public enum com.ss.bytertc.engine.type.VideoDeviceType
java当前视频设备类型
| 类型 | 说明 |
|---|---|
| VIDEO_DEVICE_TYPE_UNKNOWN(-1) | 未知设备类型 |
| VIDEO_DEVICE_TYPE_RENDER_DEVICE(0) | 视频渲染设备类型 |
| VIDEO_DEVICE_TYPE_CAPTURE_DEVICE(1) | 视频采集设备类型 |
| VIDEO_DEVICE_TYPE_SCREEN_CAPTURE_DEVICE(2) | 屏幕流视频设备 |
public enum com.ss.bytertc.engine.type.VoiceChangerType
java变声特效类型。
| 类型 | 说明 |
|---|---|
| VOICE_CHANGER_ORIGINAL(0) | 原声,不含特效 |
| VOICE_CHANGER_GIANT(1) | 巨人 |
| VOICE_CHANGER_CHIPMUNK(2) | 花栗鼠 |
| VOICE_CHANGER_MINIONST(3) | 小黄人 |
| VOICE_CHANGER_VIBRATO(4) | 颤音 |
| VOICE_CHANGER_ROBOT(5) | 机器人 |
public enum com.ss.bytertc.engine.type.VoiceReverbType
java混响特效类型。
| 类型 | 说明 |
|---|---|
| VOICE_REVERB_ORIGINAL(0) | 原声,不含特效 |
| VOICE_REVERB_ECHO(1) | 回声 |
| VOICE_REVERB_CONCERT(2) | 演唱会 |
| VOICE_REVERB_ETHEREAL(3) | 空灵 |
| VOICE_REVERB_KTV(4) | KTV |
| VOICE_REVERB_STUDIO(5) | 录音棚 |
public class com.ss.bytertc.engine.video.ByteWatermark
java水印图片相对视频流的位置和大小。
| 类型 | 名称 |
|---|---|
| float | x |
| float | y |
| float | width |
| float | height |
public float com.ss.bytertc.engine.video.ByteWatermark.x;
java水印图片相对视频流左上角的横向偏移与视频流宽度的比值,取值范围为 [0,1)。
public float com.ss.bytertc.engine.video.ByteWatermark.y;
java水印图片相对视频流左上角的纵向偏移与视频流高度的比值,取值范围为 [0,1)。
public float com.ss.bytertc.engine.video.ByteWatermark.width;
java水印图片宽度与视频流宽度的比值,取值范围 [0,1)。
public float com.ss.bytertc.engine.video.ByteWatermark.height;
java水印图片高度与视频流高度的比值,取值范围为 [0,1)。
public class com.ss.bytertc.engine.video.FaceDetectionResult
java人脸检测结果
| 类型 | 名称 |
|---|---|
| int | detectResult |
| int | imageWidth |
| int | imageHeight |
| Rectangle[] | faces |
| 返回 | 名称 |
|---|---|
| String | toString |
public int com.ss.bytertc.engine.video.FaceDetectionResult.detectResult;
java人脸检测结果
public int com.ss.bytertc.engine.video.FaceDetectionResult.imageWidth;
java原始图片宽度(px)
public int com.ss.bytertc.engine.video.FaceDetectionResult.imageHeight;
java原始图片高度(px)
public Rectangle[] com.ss.bytertc.engine.video.FaceDetectionResult.faces;
java识别到人脸的矩形框。数组的长度和检测到的人脸数量一致。参看 Rectangle。
public String com.ss.bytertc.engine.video.FaceDetectionResult.toString()
javapublic interface com.ss.bytertc.engine.video.IVideoSink
java自定义视频渲染器。
| 返回 | 名称 |
|---|---|
| void | onFrame |
void com.ss.bytertc.engine.video.IVideoSink.onFrame(
VideoFrame frame)
java视频帧回调
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| frame | VideoFrame | 视频帧结构类,参看 VideoFrame |
public @interface com.ss.bytertc.engine.video.IVideoSink.PixelFormat
java视频帧数据格式
| 类型 | 名称 |
|---|---|
| int | Original |
| int | I420 |
int com.ss.bytertc.engine.video.IVideoSink.PixelFormat.Original = 0;
java原始视频帧格式
int com.ss.bytertc.engine.video.IVideoSink.PixelFormat.I420 = 1;
javaI420数据格式
public class com.ss.bytertc.engine.video.Rectangle
java矩形区域
| 类型 | 名称 |
|---|---|
| int | x |
| int | y |
| int | width |
| int | height |
| 返回 | 名称 |
|---|---|
| Rectangle | Rectangle |
| String | toString |
public int com.ss.bytertc.engine.video.Rectangle.x = 0;
java矩形区域左上角的 x 坐标
public int com.ss.bytertc.engine.video.Rectangle.y = 0;
java矩形区域左上角的 y 坐标
public int com.ss.bytertc.engine.video.Rectangle.width = 0;
java矩形宽度(px)
public int com.ss.bytertc.engine.video.Rectangle.height = 0;
java矩形高度(px)
public com.ss.bytertc.engine.video.Rectangle.Rectangle(
int x,
int y,
int w,
int h)
javapublic String com.ss.bytertc.engine.video.Rectangle.toString()
javapublic class com.ss.bytertc.engine.video.RTCWatermarkConfig
java水印参数
| 类型 | 名称 |
|---|---|
| boolean | visibleInPreview |
| ByteWatermark | positionInLandscapeMode |
| ByteWatermark | positionInPortraitMode |
public boolean com.ss.bytertc.engine.video.RTCWatermarkConfig.visibleInPreview = true;
java水印是否在视频预览中可见,默认可见。
public ByteWatermark com.ss.bytertc.engine.video.RTCWatermarkConfig.positionInLandscapeMode;
java横屏时的水印位置和大小,参看 ByteWatermark。
public ByteWatermark com.ss.bytertc.engine.video.RTCWatermarkConfig.positionInPortraitMode;
java竖屏时的水印位置和大小,参看 ByteWatermark。
public class com.ss.bytertc.engine.video.ScreenSharingParameters
java屏幕共享的编码参数配置
| 类型 | 名称 |
|---|---|
| int | maxWidth |
| int | maxHeight |
| int | frameRate |
| int | bitrate |
public int com.ss.bytertc.engine.video.ScreenSharingParameters.maxWidth = 0;
java屏幕采集编码最大宽度,
public int com.ss.bytertc.engine.video.ScreenSharingParameters.maxHeight = 0;
java屏幕采集编码最大高度
public int com.ss.bytertc.engine.video.ScreenSharingParameters.frameRate = 15;
java屏幕采集编码帧率, 单位 fps
public int com.ss.bytertc.engine.video.ScreenSharingParameters.bitrate = -1;
java屏幕采集编码码率, -1 为自动码率, SDK 会根据宽高信息选择合适的码率,单位 kbps
public class com.ss.bytertc.engine.video.VideoCaptureConfig
java视频采集配置
| 类型 | 名称 |
|---|---|
| CapturePreference | capturePreference |
| int | width |
| int | height |
| int | frameRate |
public CapturePreference com.ss.bytertc.engine.video.VideoCaptureConfig.capturePreference = CapturePreference.AUTO;
java视频采集模式,参看 CapturePreference。
public int com.ss.bytertc.engine.video.VideoCaptureConfig.width;
java视频采集分辨率的宽度,单位:px。
public int com.ss.bytertc.engine.video.VideoCaptureConfig.height;
java视频采集分辨率的高度,单位:px。
public int com.ss.bytertc.engine.video.VideoCaptureConfig.frameRate;
java视频采集帧率,单位:fps。
public enum com.ss.bytertc.engine.video.VideoCaptureConfig.CapturePreference
java视频采集模式
| 类型 | 说明 |
|---|---|
| AUTO(0) | (默认)自动设置采集参数。 SDK在开启采集时根据服务端下发的采集配置结合编码参数设置最佳采集参数。 |
| MANUAL(1) | 手动设置采集参数,包括采集分辨率、帧率。 |
| AUTO_PERFORMANCE(2) | 采集参数与编码参数一致,即在 setVideoEncoderConfig 中设置的参数。 |
public class com.ss.bytertc.engine.video.VideoEncoderConfiguration
java视频编码配置。参考 设置视频发布参数
| 类型 | 名称 |
|---|---|
| VideoDimensions | dimensions |
| FrameRate | frameRate |
| int | kBitrate |
| OrientationMode | orientationMode |
public VideoDimensions com.ss.bytertc.engine.video.VideoEncoderConfiguration.dimensions;
java视频编码像素
public FrameRate com.ss.bytertc.engine.video.VideoEncoderConfiguration.frameRate;
java视频编码帧率
public int com.ss.bytertc.engine.video.VideoEncoderConfiguration.kBitrate;
java视频编码码率
public OrientationMode com.ss.bytertc.engine.video.VideoEncoderConfiguration.orientationMode;
java视频编码方向模式
public static enum com.ss.bytertc.engine.video.VideoEncoderConfiguration.OrientationMode
java视频编码的方向模式
| 类型 | 说明 |
|---|---|
| ORIENTATION_MODE_ADAPTIVE(0) | 视频输出方向与采集方向一致。 |
| ORIENTATION_MODE_FIXED_LANDSCAPE(1) | 固定横屏输出视频。若采集到的视频是竖屏模式,则视频编码器会对其进行裁剪。 |
| ORIENTATION_MODE_FIXED_PORTRAIT(2) | 固定竖屏输出视频。若采集到的视频是横屏模式,则视频编码器会对其进行裁剪。 |
public abstract class com.ss.bytertc.engine.video.VideoFrame
java视频帧
| 返回 | 名称 |
|---|---|
| synchronized void | setReleaseCallback |
| synchronized boolean | hasReleaseCallback |
| abstract VideoFrameType | getFrameType |
| abstract VideoPixelFormat | getPixelFormat |
| abstract VideoContentType | getContentType |
| abstract long | getTimeStampUs |
| abstract int | getWidth |
| abstract int | getHeight |
| abstract VideoRotation | getRotation |
| abstract ColorSpace | getColorSpace |
| abstract CameraId | getCameraId |
| abstract int | getNumberOfPlanes |
| abstract ByteBuffer | getPlaneData |
| abstract int | getPlaneStride |
| abstract ByteBuffer | getExternalDataInfo |
| abstract ByteBuffer | getSupplementaryInfo |
| abstract int | getTextureID |
| abstract float[] | getTextureMatrix |
| abstract EGLContext | getEGLContext |
| synchronized void | retain |
| synchronized void | release |
public synchronized void com.ss.bytertc.engine.video.VideoFrame.setReleaseCallback(
Runnable releaseCallback)
java设置视频帧释放回调,当视频帧的引用计数归 0 时,会执行 releaseCallback
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| releaseCallback | Runnable | 视频帧释放回调 |
public synchronized boolean com.ss.bytertc.engine.video.VideoFrame.hasReleaseCallback()
java用于检查当前的视频帧是否已设置 releaseCallback
返回值
public abstract VideoFrameType com.ss.bytertc.engine.video.VideoFrame.getFrameType()
java获取视频帧类型,参看 VideoFrameType
public abstract VideoPixelFormat com.ss.bytertc.engine.video.VideoFrame.getPixelFormat()
java获取视频帧格式,参看 VideoPixelFormat
public abstract VideoContentType com.ss.bytertc.engine.video.VideoFrame.getContentType()
java获取视频内容类型
返回值
视频内容类型,参看 VideoContentType。
public abstract long com.ss.bytertc.engine.video.VideoFrame.getTimeStampUs()
java获取视频帧时间戳,单位:微秒
public abstract int com.ss.bytertc.engine.video.VideoFrame.getWidth()
java获取视频帧宽度,单位:px
public abstract int com.ss.bytertc.engine.video.VideoFrame.getHeight()
java获取视频帧高度,单位:px
public abstract VideoRotation com.ss.bytertc.engine.video.VideoFrame.getRotation()
java获取视频帧旋转角度
public abstract ColorSpace com.ss.bytertc.engine.video.VideoFrame.getColorSpace()
java获取视频帧色彩空间,参看 ColorSpace
public abstract CameraId com.ss.bytertc.engine.video.VideoFrame.getCameraId()
java获取视频帧的摄像头信息,参看 CameraId
public abstract int com.ss.bytertc.engine.video.VideoFrame.getNumberOfPlanes()
java获取视频帧像素平面数量
注意
yuv 数据存储格式分为打包(packed)存储格式和平面(planar)存储格式,planar 格式中 Y、U、V 分平面存储,packed 格式中 Y、U、V 交叉存储
public abstract ByteBuffer com.ss.bytertc.engine.video.VideoFrame.getPlaneData(
int planeIndex)
java获取 plane 数据
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| planeIndex | int | plane 数据索引 |
public abstract int com.ss.bytertc.engine.video.VideoFrame.getPlaneStride(
int planeIndex)
java获取指定 plane 中数据行的长度
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| planeIndex | int | plane 数据索引 |
public abstract ByteBuffer com.ss.bytertc.engine.video.VideoFrame.getExternalDataInfo()
java获取 SEI 数据
public abstract ByteBuffer com.ss.bytertc.engine.video.VideoFrame.getSupplementaryInfo()
java获取补充数据指针
public abstract int com.ss.bytertc.engine.video.VideoFrame.getTextureID()
java获取纹理ID
public abstract float[] com.ss.bytertc.engine.video.VideoFrame.getTextureMatrix()
java获取纹理矩阵
public abstract EGLContext com.ss.bytertc.engine.video.VideoFrame.getEGLContext()
java获取纹理使用的 EGLContext
public synchronized void com.ss.bytertc.engine.video.VideoFrame.retain()
java对当前的视频帧进行一次引用计数
public synchronized void com.ss.bytertc.engine.video.VideoFrame.release()
java对当前的视频帧减少一次引用计数
public enum com.ss.bytertc.engine.video.VideoDecoderConfig
java视频解码方式
| 类型 | 说明 |
|---|---|
| VIDEO_DECODER_CONFIG_RAW(0) | 开启 SDK 内部解码,只回调解码后的数据 |
| VIDEO_DECODER_CONFIG_ENCODE(1) | 开启自定义解码,只回调解码前数据 |
| VIDEO_DECODER_CONFIG_BOTH(2) | 开启 SDK 内部解码,同时回调解码前和解码后的数据 |
public class com.ss.bytertc.engine.video.VideoPreprocessorConfig
java视频处理配置参数。
| 类型 | 名称 |
|---|---|
| VideoPixelFormat | required_pixel_format |
public VideoPixelFormat com.ss.bytertc.engine.video.VideoPreprocessorConfig.required_pixel_format = VideoPixelFormat.kVideoPixelFormatUnknown;
java设置请求的像素格式,参看 VideoPixelFormat。
public class com.ss.bytertc.engine.VideoEncoderConfig
java视频流参数描述
| 类型 | 名称 |
|---|---|
| int | width |
| int | height |
| int | frameRate |
| int | maxBitrate |
| EncoderPreference | encodePreference |
public int com.ss.bytertc.engine.VideoEncoderConfig.width;
java视频宽度,单位:px
public int com.ss.bytertc.engine.VideoEncoderConfig.height;
java视频高度,单位:px
public int com.ss.bytertc.engine.VideoEncoderConfig.frameRate;
java视频帧率,单位:fps
public int com.ss.bytertc.engine.VideoEncoderConfig.maxBitrate = -1;
java最大编码码率,使用 SDK 内部采集时可选设置,自定义采集时必须设置,单位:kbps。
设为 -1 即适配码率模式,系统将根据输入的分辨率和帧率自动计算适用的码率。
设为 0 则不对视频流进行编码发送。
3.44.1 及以上版本,内部采集时默认值为 -1,3.44.1 以前版本无默认值,需手动设置。
public EncoderPreference com.ss.bytertc.engine.VideoEncoderConfig.encodePreference =
java编码策略偏好,默认为帧率优先。参看 EncoderPreference。
public enum com.ss.bytertc.engine.VideoEncoderConfig.CodecMode
java编码器Mode(使用软编码或者硬编码)
| 类型 | 说明 |
|---|---|
| CODEC_MODE_AUTO(0) | 自动模式 |
| CODEC_MODE_HARDWARE(1) | 硬编码模式 |
| CODEC_MODE_SOFTWARE(2) | 软编码模式 |
public enum com.ss.bytertc.engine.VideoEncoderConfig.VideoCodecType
java编码模式(H264, ByteVC1)
| 类型 | 说明 |
|---|---|
| CODEC_TYPE_AUTO(0) | 自动选择编码模式 |
| CODEC_TYPE_H264(1) | H264 |
| CODEC_TYPE_BYTEVC1(2) | ByteVC1 |
public enum com.ss.bytertc.engine.VideoEncoderConfig.EncoderPreference
java编码策略偏好。
| 类型 | 说明 |
|---|---|
| Disabled(0) | 无偏好。不降低帧率和分辨率。 |
| MaintainFramerate(1) | (默认值)帧率优先。 |
| MaintainQuality(2) | 分辨率优先。 |
| Balance(3) | 平衡帧率与分辨率。 |
public enum com.ss.bytertc.engine.data.AudioChannel
java音频声道
| 类型 | 说明 |
|---|---|
| AUDIO_CHANNEL_AUTO(-1) | 自动声道,适用于从 SDK 获取音频数据,使用 SDK 内部处理的声道,不经过 resample。 当你需要从 SDK 获取音频数据时,建议设置成该值,避免 resample 带来的性能损失。 |
| AUDIO_CHANNEL_MONO(1) | 单声道 |
| AUDIO_CHANNEL_STEREO(2) | 双声道 |
public enum com.ss.bytertc.engine.data.AudioFrameCallbackMethod
java音频回调方法
| 类型 | 说明 |
|---|---|
| AUDIO_FRAME_CALLBACK_RECORD(0) | 本地麦克风录制的音频数据回调 |
| AUDIO_FRAME_CALLBACK_PLAYBACK(1) | 订阅的远端所有用户混音后的音频数据回调 |
| AUDIO_FRAME_CALLBACK_MIXED(2) | 本地麦克风录制和订阅的远端所有用户混音后的音频数据回调 |
| AUDIO_FRAME_CALLBACK_REMOTE_USER(3) | 订阅的远端每个用户混音前的音频数据回调 |
public enum com.ss.bytertc.engine.data.AudioFrameType
java音频帧类型
| 类型 | 说明 |
|---|---|
| FRAME_TYPE_PCM16(0) | PCM 16bit |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.AudioFrameType.value()
java获取当前值
返回值
当前值
public enum com.ss.bytertc.engine.data.AudioSampleRate
java音频采样率,单位为 Hz。
| 类型 | 说明 |
|---|---|
| AUDIO_SAMPLE_RATE_AUTO(-1) | 自动采样率,适用于从 SDK 获取音频数据,使用 SDK 内部处理的采样率,不经过 resample。 当你需要从 SDK 获取音频数据时,建议设置成该值,避免 resample 带来的性能损失。 |
| AUDIO_SAMPLE_RATE_8000(8000) | 8000 采样率 |
| AUDIO_SAMPLE_RATE_16000(16000) | 16000 采样率 |
| AUDIO_SAMPLE_RATE_32000(32000) | 32000 采样率 |
| AUDIO_SAMPLE_RATE_44100(44100) | 44100 采样率 |
| AUDIO_SAMPLE_RATE_48000(48000) | 48000 采样率 |
public class com.ss.bytertc.engine.data.EchoTestConfig
java音视频回路测试参数
| 类型 | 名称 |
|---|---|
| View | view |
| String | uid |
| String | roomId |
| String | token |
| boolean | enableAudio |
| boolean | enableVideo |
| int | audioReportInterval |
| 返回 | 名称 |
|---|---|
| View | getEchoRenderView |
| String | getEchoUid |
| String | getEchoRoomId |
| String | getEchoToken |
| boolean | getEchoEnabledAudio |
| boolean | getEchoEnabledVideo |
| int | getAudioReportInterval |
public View com.ss.bytertc.engine.data.EchoTestConfig.view;
java用于渲染接收到的视频的视图
public String com.ss.bytertc.engine.data.EchoTestConfig.uid;
java进行音视频通话回路测试的用户 ID
public String com.ss.bytertc.engine.data.EchoTestConfig.roomId;
java测试用户加入的房间 ID
public String com.ss.bytertc.engine.data.EchoTestConfig.token;
java对用户进房时进行鉴权验证的动态密钥,用于保证音视频通话回路测试的安全性。
public boolean com.ss.bytertc.engine.data.EchoTestConfig.enableAudio;
java是否检测音频。检测设备为系统默认音频设备。
onLocalAudioPropertiesReport 回调,你可以根据该回调判断麦克风的工作状态 public boolean com.ss.bytertc.engine.data.EchoTestConfig.enableVideo;
java是否检测视频。PC 端默认检测列表中第一个视频设备。
注意:
视频的发布参数固定为:分辨率 640px × 360px,帧率 15fps。
视频的发布参数固定为:分辨率 640px × 360px,帧率 15fps。
public int com.ss.bytertc.engine.data.EchoTestConfig.audioReportInterval;
java音量信息提示间隔,单位:ms,默认为 100ms
<= 0: 关闭信息提示 (0,100]: 开启信息提示,不合法的 interval 值,SDK 自动设置为 100ms > 100: 开启信息提示,并将信息提示间隔设置为此值 public View com.ss.bytertc.engine.data.EchoTestConfig.getEchoRenderView()
javapublic String com.ss.bytertc.engine.data.EchoTestConfig.getEchoUid()
javapublic String com.ss.bytertc.engine.data.EchoTestConfig.getEchoRoomId()
javapublic String com.ss.bytertc.engine.data.EchoTestConfig.getEchoToken()
javapublic boolean com.ss.bytertc.engine.data.EchoTestConfig.getEchoEnabledAudio()
javapublic boolean com.ss.bytertc.engine.data.EchoTestConfig.getEchoEnabledVideo()
javapublic int com.ss.bytertc.engine.data.EchoTestConfig.getAudioReportInterval()
javapublic enum com.ss.bytertc.engine.data.LocalAudioStreamError
java本地音频流状态改变时的错误码。
SDK 通过 onLocalAudioStateChanged 回调该错误码。
| 类型 | 说明 |
|---|---|
| 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) | 没有可用的音频录制设备 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.LocalAudioStreamError.value()
java获取当前值
返回值
当前值
public enum com.ss.bytertc.engine.data.LocalAudioStreamState
java本地音频流状态。
SDK 通过 onLocalAudioStateChanged 回调该状态。
| 类型 | 说明 |
|---|---|
| LOCAL_AUDIO_STREAM_STATE_STOPPED(0) | 本地音频默认初始状态。 麦克风停止工作时回调该状态,对应错误码 LocalAudioStreamError 中的 kLocalAudioStreamErrorOk 。 |
| LOCAL_AUDIO_STREAM_STATE_RECORDING(1) | 本地音频录制设备启动成功。 采集到音频首帧时回调该状态,对应错误码 LocalAudioStreamError 中的 kLocalAudioStreamErrorOk 。 |
| LOCAL_AUDIO_STREAM_STATE_ENCODING(2) | 本地音频首帧编码成功。 音频首帧编码成功时回调该状态,对应错误码 LocalAudioStreamError 中的 kLocalAudioStreamErrorOk 。 |
| LOCAL_AUDIO_STREAM_STATE_FAILED(3) | 本地音频启动失败,在以下时机回调该状态: + 本地录音设备启动失败,对应错误码 LocalAudioStreamError 中的 kLocalAudioStreamErrorRecordFailure 。 + 检测到没有录音设备权限,对应错误码 LocalAudioStreamError 中的 kLocalAudioStreamErrorDeviceNoPermission。 + 音频编码失败,对应错误码 LocalAudioStreamError 中的 kLocalAudioStreamErrorEncodeFailure。 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.LocalAudioStreamState.value()
java获取当前值
返回值
当前值
public class com.ss.bytertc.engine.data.RecordingConfig
java本地录制参数配置
| 类型 | 名称 |
|---|---|
| String | dirPath |
| RecordingFileType | recordingFileType |
public String com.ss.bytertc.engine.data.RecordingConfig.dirPath;
java录制文件保存的绝对路径。你需要指定一个有读写权限的合法路径。
public RecordingFileType com.ss.bytertc.engine.data.RecordingConfig.recordingFileType = RecordingFileType.RECORDING_FILE_TYPE_MP4;
java录制存储文件格式,参看 RecordingFileType
public class com.ss.bytertc.engine.data.RecordingInfo
java本地录制的详细信息
| 类型 | 名称 |
|---|---|
| String | filePath |
| VideoCodecType | videoCodecType |
| int | width |
| int | height |
public String com.ss.bytertc.engine.data.RecordingInfo.filePath;
java录制文件的绝对路径,包含文件名和文件后缀
public VideoCodecType com.ss.bytertc.engine.data.RecordingInfo.videoCodecType;
java录制文件的视频编码类型,参看 参看 VideoCodecType
public int com.ss.bytertc.engine.data.RecordingInfo.width;
java录制视频的宽,单位:像素。纯音频录制请忽略该字段
public int com.ss.bytertc.engine.data.RecordingInfo.height;
java录制视频的高,单位:像素。纯音频录制请忽略该字段
public class com.ss.bytertc.engine.data.RecordingProgress
java本地录制进度
| 类型 | 名称 |
|---|---|
| long | duration |
| long | fileSize |
public long com.ss.bytertc.engine.data.RecordingProgress.duration;
java当前文件的累计录制时长,单位:毫秒
public long com.ss.bytertc.engine.data.RecordingProgress.fileSize;
java当前录制文件的大小,单位:byte
public enum com.ss.bytertc.engine.data.RemoteAudioState
java用户订阅的远端音频流状态。
SDK 通过 onRemoteAudioStateChanged 回调该状态。
| 类型 | 说明 |
|---|---|
| REMOTE_AUDIO_STATE_STOPPED(0) | 远端音频流默认初始状态,在以下时机回调该状态: + 本地用户停止接收远端音频流,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonLocalMuted + 远端用户停止发送音频流,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonRemoteMuted + 远端用户离开房间,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonRemoteOffline |
| REMOTE_AUDIO_STATE_STARTING(1) | 开始接收远端音频流首包。 刚收到远端音频流首包时,会触发回调 onRemoteAudioStateChanged, 对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonLocalUnmuted 。 |
| REMOTE_AUDIO_STATE_DECODING(2) | 远端音频流正在解码,正常播放,在以下时机回调该状态: + 成功解码远端音频首帧,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonLocalUnmuted + 网络由阻塞恢复正常,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonNetworkRecovery + 本地用户恢复接收远端音频流,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonLocalUnmuted + 远端用户恢复发送音频流,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonRemoteUnmuted |
| REMOTE_AUDIO_STATE_FROZEN(3) | 远端音频流卡顿。 网络阻塞导致丢包率大于 40% 时回调该状态,对应原因是 RemoteAudioStateChangeReason 中的 kRemoteAudioReasonNetworkCongestion |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.RemoteAudioState.value()
java获取当前值
返回值
当前值
public enum com.ss.bytertc.engine.data.RemoteAudioStateChangeReason
java远端音频流状态改变的原因。
SDK 通过 onRemoteAudioStateChanged 回调该错误码。
| 类型 | 说明 |
|---|---|
| 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) | 远端用户离开房间 |
| 返回 | 名称 |
|---|---|
| int | value |
public int com.ss.bytertc.engine.data.RemoteAudioStateChangeReason.value()
java获取当前值
返回值
当前值
public class com.ss.bytertc.engine.data.RemoteStreamKey
java远端流信息
| 返回 | 名称 |
|---|---|
| String | getRoomId |
| String | getUserId |
| StreamIndex | getStreamIndex |
public String com.ss.bytertc.engine.data.RemoteStreamKey.getRoomId()
java获取房间 ID
public String com.ss.bytertc.engine.data.RemoteStreamKey.getUserId()
java获取用户 ID
public StreamIndex com.ss.bytertc.engine.data.RemoteStreamKey.getStreamIndex()
java获取流属性,包括主流、屏幕流。参看 StreamIndex
public class com.ss.bytertc.engine.data.RemoteVideoConfig
java远端视频帧信息
| 返回 | 名称 |
|---|---|
| RemoteVideoConfig | RemoteVideoConfig |
public com.ss.bytertc.engine.data.RemoteVideoConfig.RemoteVideoConfig(
int width,
int height,
int framerate)
java远端视频参数设置
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | int | 视频宽度,单位:px |
| height | int | 视频高度,单位:px |
| framerate | int | 期望订阅的最高帧率,单位:fps,默认值为 0 即满帧订阅,设为大于 0 的值时开始生效。 当发布端帧率低于设定帧率,或订阅端开启性能回退后下行弱网,则帧率会相应下降。 仅码流支持 SVC 分级编码特性时方可生效。 |
public class com.ss.bytertc.engine.data.RTCASRConfig
java使用自动语音识别服务所需校验信息
| 类型 | 名称 |
|---|---|
| String | userId |
| String | accessToken |
| String | secretKey |
| ASRAuthorizationType | authorizationType |
| String | cluster |
| String | appId |
public String com.ss.bytertc.engine.data.RTCASRConfig.userId;
java用户 ID
public String com.ss.bytertc.engine.data.RTCASRConfig.accessToken;
java访问令牌
public String com.ss.bytertc.engine.data.RTCASRConfig.secretKey;
java私钥。Signature 鉴权模式下不能为空,token 鉴权模式下为空。参看关于鉴权
public ASRAuthorizationType com.ss.bytertc.engine.data.RTCASRConfig.authorizationType;
java鉴权方式
public String com.ss.bytertc.engine.data.RTCASRConfig.cluster;
java场景信息,参看业务集群
public String com.ss.bytertc.engine.data.RTCASRConfig.appId;
java应用 ID
public enum com.ss.bytertc.engine.data.RTCASRConfig.ASRAuthorizationType
java语音识别服务鉴权方式,详情请咨询语音识别服务相关人员
| 类型 | 说明 |
|---|---|
| ASR_AUTHORIZATION_TYPE_TOKEN(0) | Token 鉴权 |
| ASR_AUTHORIZATION_TYPE_SIGNATURE(1) | Signature 鉴权 |
public class com.ss.bytertc.engine.data.VideoFrameInfo
java视频帧信息
| 类型 | 名称 |
|---|---|
| VideoRotation | rotation |
| 返回 | 名称 |
|---|---|
| int | getWidth |
| int | getHeight |
public VideoRotation com.ss.bytertc.engine.data.VideoFrameInfo.rotation = VideoRotation.VIDEO_ROTATION_0;
java视频帧顺时针旋转角度。参看 VideoRotation。
public int com.ss.bytertc.engine.data.VideoFrameInfo.getWidth()
java获取宽度(像素)
public int com.ss.bytertc.engine.data.VideoFrameInfo.getHeight()
java获取高度(像素)
public enum com.ss.bytertc.engine.data.VideoPictureType
java编码帧类型
| 类型 | 说明 |
|---|---|
| VIDEO_PICTURE_TYPE_UNKNOWN(0) | 未知类型 |
| VIDEO_PICTURE_TYPE_I(1) | I帧,关键帧,编解码不需要参考其他视频帧 |
| VIDEO_PICTURE_TYPE_P(2) | P帧,向前参考帧,编解码需要参考前一帧视频帧 |
| VIDEO_PICTURE_TYPE_B(3) | B帧,前后参考帧,编解码需要参考前后两帧视频帧 |
public enum com.ss.bytertc.engine.data.VideoRotation
java视频帧旋转角度
| 类型 | 说明 |
|---|---|
| VIDEO_ROTATION_0(0) | 顺时针旋转 0 度 |
| VIDEO_ROTATION_90(90) | 顺时针旋转 90 度 |
| VIDEO_ROTATION_180(180) | 顺时针旋转 180 度 |
| VIDEO_ROTATION_270(270) | 顺时针旋转 270 度 |
public enum com.ss.bytertc.engine.data.VideoSourceType
java视频输入源类型
| 类型 | 说明 |
|---|---|
| VIDEO_SOURCE_TYPE_EXTERNAL(0) | 自定义采集视频源 |
| VIDEO_SOURCE_TYPE_INTERNAL(1) | 内部采集视频源 |
| VIDEO_SOURCE_TYPE_ENCODED_WITH_SIMULCAST(2) | 自定义编码视频源。 你仅需推送分辨率最大的一路编码后视频流,SDK 将自动转码生成多路小流 |
| VIDEO_SOURCE_TYPE_ENCODED_WITHOUT_SIMULCAST(3) | 自定义编码视频源。 SDK 不会自动生成多路流,你需要自行生成并推送多路流 |
public class com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame
java视频帧信息
| 类型 | 名称 |
|---|---|
| ByteBuffer | buffer |
| long | timestampUs |
| long | timestampDtsUs |
| int | width |
| int | height |
| VideoCodecType | videoCodecType |
| VideoPictureType | videoPictureType |
| VideoRotation | videoRotation |
public final ByteBuffer com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.buffer;
java视频帧数据指针地址
public long com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.timestampUs;
java视频采集时间戳,单位:微秒
public long com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.timestampDtsUs;
java视频编码时间戳,单位:微秒
public int com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.width;
java视频分辨率的宽度,单位:px
public int com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.height;
java视频分辨率的高度,单位:px
public VideoCodecType com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.videoCodecType;
java视频编码类型。参看 VideoCodecType
public VideoPictureType com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.videoPictureType;
java视频帧类型。参看 VideoPictureType
public VideoRotation com.ss.bytertc.engine.mediaio.RTCEncodedVideoFrame.videoRotation;
java视频帧旋转角度,默认旋转 0 度。参看 VideoRotation
public class com.ss.bytertc.engine.video.VideoDimensions
java视频编码像素
| 类型 | 名称 |
|---|---|
| int | width |
| int | height |
public int com.ss.bytertc.engine.video.VideoDimensions.width;
java宽
public int com.ss.bytertc.engine.video.VideoDimensions.height;
java高
public class com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder
java构建 CpuBuffer 的视频帧
| 返回 | 名称 |
|---|---|
| CpuBufferVideoFrameBuilder | setTimeStampUs |
| CpuBufferVideoFrameBuilder | setWidth |
| CpuBufferVideoFrameBuilder | setHeight |
| CpuBufferVideoFrameBuilder | setRotation |
| CpuBufferVideoFrameBuilder | setColorSpace |
| CpuBufferVideoFrameBuilder | setPlaneData |
| CpuBufferVideoFrameBuilder | setPlaneStride |
| CpuBufferVideoFrameBuilder | setExternalDataInfo |
| CpuBufferVideoFrameBuilder | setSupplementaryInfo |
| CpuBufferVideoFrameBuilder | setReleaseCallback |
| VideoFrame | build |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setTimeStampUs(
long timeStampUs)
java设置视频帧的时间戳
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| timeStampUs | long | 视频帧时间戳 |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setWidth(
int width)
java设置视频帧宽度
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | int | 视频帧宽度,单位:像素 |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setHeight(
int height)
java设置视频帧高度
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| height | int | 视频帧高度,单位:像素 |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setRotation(
VideoRotation rotation)
java设置视频帧旋转角度
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| rotation | VideoRotation | 视频帧旋转角度,参看 VideoRotation |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setColorSpace(
ColorSpace colorSpace)
java设置视频帧色彩空间
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| colorSpace | ColorSpace | 视频帧色彩空间,参看 ColorSpace |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setPlaneData(
int planeIndex,
ByteBuffer buffer)
java设置像素平面数据
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| planeIndex | int | 像素平面数据索引 |
| buffer | ByteBuffer | plane 要设置的 ByteBuffer,如果设置的是一个 DirectBuffer,则不会发生拷贝,如果不是,则会发生一次拷贝 |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setPlaneStride(
int planeIndex,
int stride)
java设置指定像素平面的跨距
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| planeIndex | int | 像素平面数据索引 |
| stride | int | 当前像素平面的跨度 |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setExternalDataInfo(
ByteBuffer externalDataInfo)
java设置 SEI 数据
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| externalDataInfo | ByteBuffer | SEI 数据,如果设置的是一个 DirectBuffer,则不会发生拷贝,如果不是,则会发生一次拷贝 |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setSupplementaryInfo(
ByteBuffer supplementaryInfo)
java设置补充数据指针
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| supplementaryInfo | ByteBuffer | 补充数据指针,如果设置的是一个 DirectBuffer,则不会发生拷贝,如果不是,则会发生一次拷贝 |
public CpuBufferVideoFrameBuilder com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.setReleaseCallback(
Runnable releaseCallback)
java设置视频帧的释放回调,当视频帧的引用计数归 0 时,会执行 releaseCallback
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| releaseCallback | Runnable | 视频帧的释放回调 |
public VideoFrame com.ss.bytertc.engine.video.builder.CpuBufferVideoFrameBuilder.build()
java获取到创建好的视频帧
返回值
创建好的视频帧,参看 VideoFrame
public class com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder
java构建纹理格式视频数据返回帧
| 返回 | 名称 |
|---|---|
| GLTextureVideoFrameBuilder | setTimeStampUs |
| GLTextureVideoFrameBuilder | setWidth |
| GLTextureVideoFrameBuilder | setHeight |
| GLTextureVideoFrameBuilder | setRotation |
| GLTextureVideoFrameBuilder | setColorSpace |
| GLTextureVideoFrameBuilder | setExternalDataInfo |
| GLTextureVideoFrameBuilder | setSupplementaryInfo |
| GLTextureVideoFrameBuilder | setTextureID |
| GLTextureVideoFrameBuilder | setTextureMatrix |
| GLTextureVideoFrameBuilder | setEGLContext |
| GLTextureVideoFrameBuilder | setReleaseCallback |
| VideoFrame | build |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setTimeStampUs(
long timeStampUs)
java设置视频帧的时间戳
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| timeStampUs | long | 视频帧时间戳 |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setWidth(
int width)
java设置视频帧宽度
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| width | int | 视频帧宽度,单位:像素 |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setHeight(
int height)
java设置视频帧高度
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| height | int | 视频帧高度,单位:像素 |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setRotation(
VideoRotation rotation)
java设置视频帧旋转角度
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| rotation | VideoRotation | 视频帧旋转角度,参看 VideoRotation |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setColorSpace(
ColorSpace colorSpace)
java设置视频帧色彩空间
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| colorSpace | ColorSpace | 视频帧色彩空间,参看 ColorSpace |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setExternalDataInfo(
ByteBuffer externalDataInfo)
java设置 SEI 数据
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| externalDataInfo | ByteBuffer | SEI 数据,如果设置的是一个 DirectBuffer,则不会发生拷贝,如果不是,则会发生一次拷贝 |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setSupplementaryInfo(
ByteBuffer supplementaryInfo)
java设置补充数据指针
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| supplementaryInfo | ByteBuffer | 补充数据指针,如果设置的是一个 DirectBuffer,则不会发生拷贝,如果不是,则会发生一次拷贝 |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setTextureID(
int textureID)
java设置视频帧的纹理 ID
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| textureID | int | 纹理 ID |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setTextureMatrix(
float[] textureMatrix)
java设置视频帧纹理矩阵
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| textureMatrix | float[] | 视频帧纹理矩阵 |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setEGLContext(
EGLContext eglContext)
java设置视频帧的 EGLContext
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| eglContext | EGLContext | 视频帧的 EGLContext |
public GLTextureVideoFrameBuilder com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.setReleaseCallback(
Runnable releaseCallback)
java设置视频帧的释放回调,当视频帧的引用计数归 0 时,会执行 releaseCallback
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| releaseCallback | Runnable | 视频帧的释放回调 |
public VideoFrame com.ss.bytertc.engine.video.builder.GLTextureVideoFrameBuilder.build()
java获取到创建好的视频帧
返回值
创建好的视频帧,参看 VideoFrame
public class com.ss.bytertc.engine.RTCRoomConfig
java房间参数配置
| 类型 | 名称 |
|---|---|
| ChannelProfile | profile |
| boolean | isAutoPublish |
| boolean | isAutoSubscribeAudio |
| boolean | isAutoSubscribeVideo |
| RemoteVideoConfig | remoteVideoConfig |
public ChannelProfile com.ss.bytertc.engine.RTCRoomConfig.profile;
java房间模式,参看 ChannelProfile,默认为 CHANNEL_PROFILE_COMMUNICATION,进房后不可更改。
public boolean com.ss.bytertc.engine.RTCRoomConfig.isAutoPublish;
java是否自动发布音视频流,默认为自动发布。
创建和加入多房间时,只能将其中一个房间设置为自动发布。若每个房间均不做设置,则默认在第一个加入的房间内自动发布流。
若调用 setUserVisibility 将自身可见性设为 false,无论是默认的自动发布流还是手动设置的自动发布流都不会进行发布,你需要将自身可见性设为 true 后方可发布。
public boolean com.ss.bytertc.engine.RTCRoomConfig.isAutoSubscribeAudio;
java是否自动订阅音频流,默认为自动订阅。
包含主流和屏幕流。
public boolean com.ss.bytertc.engine.RTCRoomConfig.isAutoSubscribeVideo;
java是否自动订阅视频流,默认为自动订阅。
包含主流和屏幕流。
public RemoteVideoConfig com.ss.bytertc.engine.RTCRoomConfig.remoteVideoConfig = null;
java远端视频流参数,参看 RemoteVideoConfig
public class com.ss.bytertc.engine.SubscribeConfig
java选择订阅配置
| 类型 | 名称 |
|---|---|
| boolean | isScreen |
| boolean | subVideo |
| boolean | subAudio |
| int | sub_width |
| int | sub_height |
| int | framerate |
| 返回 | 名称 |
|---|---|
| SubscribeConfig | SubscribeConfig |
public boolean com.ss.bytertc.engine.SubscribeConfig.isScreen;
java是否是屏幕流
public boolean com.ss.bytertc.engine.SubscribeConfig.subVideo;
java是否订阅视频
public boolean com.ss.bytertc.engine.SubscribeConfig.subAudio;
java是否订阅音频
public int com.ss.bytertc.engine.SubscribeConfig.sub_width = 0;
java视频宽度,单位:px
public int com.ss.bytertc.engine.SubscribeConfig.sub_height = 0;
java视频高度,单位:px
public int com.ss.bytertc.engine.SubscribeConfig.framerate = 0;
java期望订阅的最高帧率,单位:fps,默认值为 0,设为大于 0 的值时开始生效。
当发布端帧率低于设定帧率,或订阅端开启性能回退后下行弱网,则帧率会相应下降。
仅码流支持 SVC 分级编码特性时方可生效。
public com.ss.bytertc.engine.SubscribeConfig.SubscribeConfig(
boolean isScreen,
boolean subVideo,
boolean subAudio,
int videoIndex,
int svcLayer,
int sub_width,
int sub_height,
int sub_video_index)
javapublic enum com.ss.bytertc.engine.SubscribeConfig.SVCLayer
java时域分层订阅层级
| 类型 | 说明 |
|---|---|
| SVCLayerDefault(0) | 不指定分层(默认值) |
| SVCLayerBase(1) | T0层 |
| SVCLayerMain(2) | T0+T1层 |
| SVCLayerHigh(3) | T0+T1+T2层 |
public enum com.ss.bytertc.engine.SubscribeState
java订阅媒体流状态
| 类型 | 说明 |
|---|---|
| SUBSCRIBE_STATE_SUCCESS | 订阅/取消订阅流成功 |
| SUBSCRIBE_STATE_FAILED_NOT_IN_ROOM | 订阅/取消订阅流失败,本地用户未在房间中 |
| SUBSCRIBE_STATE_FAILED_STREAM_NOT_FOUND | 订阅/取消订阅流失败,房间内未找到指定的音视频流 |
| SUBSCRIBE_STATE_FAILED_SIGNAL | 订阅/取消订阅流失败,信令错误,请重试 |
public class com.ss.bytertc.engine.SubscribeVideoConfig
java视频订阅配置信息
| 返回 | 名称 |
|---|---|
| SubscribeVideoConfig | SubscribeVideoConfig |
public com.ss.bytertc.engine.SubscribeVideoConfig.SubscribeVideoConfig(
int videoIndex,
int priority)
java视频订阅配置信息
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| videoIndex | int | 订阅的视频流分辨率下标。 通过此参数指定希望订阅的流。在此之前,远端用户已经通过调用 setVideoEncoderConfig 方法,启动发布多路不同分辨率的视频流。编号 0 至 3代表流质量从高至低。默认值为 0,即订阅第一路流。 如果不想更改之前的设置,可以输入 -1。 |
| priority | int | 远端用户优先级,参看 RemoteUserPriority,默认值为 0。 |
public class com.ss.bytertc.engine.SysStats
javaCPU 和内存统计信息
| 类型 | 名称 |
|---|---|
| int | cpu_cores |
| double | cpu_app_usage |
| double | cpu_total_usage |
| double | memory_usage |
| long | full_memory |
| long | total_memory_usage |
| long | free_memory |
| double | memory_ratio |
| double | total_memory_ratio |
public int com.ss.bytertc.engine.SysStats.cpu_cores;
java设备的 CPU 核数
public double com.ss.bytertc.engine.SysStats.cpu_app_usage;
java应用的 CPU 使用率,取值范围为 [0, 1]。
public double com.ss.bytertc.engine.SysStats.cpu_total_usage;
java系统的 CPU 使用率,取值范围为 [0, 1]。
public double com.ss.bytertc.engine.SysStats.memory_usage;
java应用的内存占用大小(单位 MB)
public long com.ss.bytertc.engine.SysStats.full_memory;
java设备的内存大小 单位:MB
public long com.ss.bytertc.engine.SysStats.total_memory_usage;
java系统已使用内存 MB
public long com.ss.bytertc.engine.SysStats.free_memory;
java系统当前空闲内存(MB)
public double com.ss.bytertc.engine.SysStats.memory_ratio;
java当前应用的内存使用率(单位 %)
public double com.ss.bytertc.engine.SysStats.total_memory_ratio;
java系统内存使用率(单位 %)
public class com.ss.bytertc.engine.UserInfo
java用户信息
| 返回 | 名称 |
|---|---|
| UserInfo | UserInfo |
public com.ss.bytertc.engine.UserInfo.UserInfo(
String uid,
String extraInfo)
java用户信息
传入参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| uid | String | 用户 ID。该字符串符合正则表达式:[a-zA-Z0-9_@\-]{1,128}。 |
| extraInfo | String | 用户的额外信息,最大长度为 200 字节。会在 onUserJoined 中回调给远端用户。 |
public class com.ss.bytertc.engine.VideoCanvas
java视频帧渲染设置
| 类型 | 名称 |
|---|---|
| int | RENDER_MODE_HIDDEN |
| int | RENDER_MODE_FIT |
| int | RENDER_MODE_Fill |
| View | renderView |
| int | renderMode |
| String | roomId |
| String | uid |
| String | streamId |
| boolean | isScreen |
| int | background_color |
public static final int com.ss.bytertc.engine.VideoCanvas.RENDER_MODE_HIDDEN = 1;
java视窗填满优先。
视频帧等比缩放,直至视窗被视频填满。如果视频帧长宽比例与视窗不同,视频帧的多出部分将无法显示。
缩放完成后,视频帧的一边长和视窗的对应边长一致,另一边长大于等于视窗对应边长。
public static final int com.ss.bytertc.engine.VideoCanvas.RENDER_MODE_FIT = 2;
java视频帧内容全部显示优先。
视频帧等比缩放,直至视频帧能够在视窗上全部显示。如果视频帧长宽比例与视窗不同,视窗上未被视频帧填满区域将填充 background_color。
缩放完成后,视频帧的一边长和视窗的对应边长一致,另一边长小于等于视窗对应边长。
public static final int com.ss.bytertc.engine.VideoCanvas.RENDER_MODE_Fill = 3;
java视频帧自适应画布
视频帧非等比缩放,直至画布被填满。在此过程中,视频帧的长宽比例可能会发生变化。
public View com.ss.bytertc.engine.VideoCanvas.renderView;
java本地视图句柄
public int com.ss.bytertc.engine.VideoCanvas.renderMode;
java渲染模式:可选 RENDER_MODE_HIDDEN, RENDER_MODE_FIT 和 RENDER_MODE_Fill。
public String com.ss.bytertc.engine.VideoCanvas.roomId;
java房间 ID,必填。
public String com.ss.bytertc.engine.VideoCanvas.uid;
java用户 ID
public String com.ss.bytertc.engine.VideoCanvas.streamId;
java视图对应的公共流ID
public boolean com.ss.bytertc.engine.VideoCanvas.isScreen;
java是否是屏幕流
public int com.ss.bytertc.engine.VideoCanvas.background_color;
java用于填充画布空白部分的背景颜色。取值范围是 [0x00000000, 0xFFFFFFFF]。默认值是 0x000000000。其中,透明度设置无效。
public enum com.ss.bytertc.ktv.data.AudioPlayType
java音乐播放类型。
| 类型 | 说明 |
|---|---|
| AUDIO_PLAY_TYPE_LOCAL(0) | 仅本地播放。 |
| AUDIO_PLAY_TYPE_REMOTE(1) | 仅远端播放。 |
| AUDIO_PLAY_TYPE_LOCAL_AND_REMOTE(2) | 本地、远端同时播放。 |
public enum com.ss.bytertc.ktv.data.AudioTrackType
java原唱伴唱类型。
| 类型 | 说明 |
|---|---|
| AUDIO_TRACK_TYPE_ORIGINAL(1) | 播放原唱。 |
| AUDIO_TRACK_TYPE_ACCOMPANY(2) | 播放伴唱。 |
public enum com.ss.bytertc.ktv.data.DownloadFileType
java下载文件类型。
| 类型 | 说明 |
|---|---|
| DOWNLOAD_FILE_TYPE_MUSIC(1) | 音频文件。 |
| DOWNLOAD_FILE_TYPE_KRC(2) | KRC 歌词文件。 |
| DOWNLOAD_FILE_TYPE_LRC(3) | LRC 歌词文件。 |
| DOWNLOAD_FILE_TYPE_MIDI(4) | MIDI 文件。 |
public enum com.ss.bytertc.ktv.data.DownloadLyricType
java歌词文件类型。
| 类型 | 说明 |
|---|---|
| DOWNLOAD_LYRIC_TYPE_KRC(0) | KRC 歌词文件。 |
| DOWNLOAD_LYRIC_TYPE_LRC(1) | LRC 歌词文件。 |
public class com.ss.bytertc.ktv.data.DownloadResult
java歌曲下载信息。
| 类型 | 名称 |
|---|---|
| String | musicId |
| DownloadFileType | fileType |
| String | filePath |
public String com.ss.bytertc.ktv.data.DownloadResult.musicId;
java音乐 ID。
public DownloadFileType com.ss.bytertc.ktv.data.DownloadResult.fileType;
java下载文件类型,参看 DownloadFileType。
public String com.ss.bytertc.ktv.data.DownloadResult.filePath;
java文件存放路径。
public class com.ss.bytertc.ktv.data.HotMusicInfo
java热榜歌曲数据。
| 类型 | 名称 |
|---|---|
| MusicHotType | hotType |
| String | hotName |
| Music[] | musics |
public MusicHotType com.ss.bytertc.ktv.data.HotMusicInfo.hotType;
java热榜类别,参看 MusicHotType。多个热榜类别可以按位或组合。
public String com.ss.bytertc.ktv.data.HotMusicInfo.hotName;
java热榜名称。
public Music[] com.ss.bytertc.ktv.data.HotMusicInfo.musics;
java歌曲数据,参看 Music。
public enum com.ss.bytertc.ktv.data.LyricStatus
java歌词格式类型。
| 类型 | 说明 |
|---|---|
| LYRIC_STATUS_NONE(0) | 无歌词。 |
| LYRIC_STATUS_KRC(1) | KRC 歌词。 |
| LYRIC_STATUS_LRC(2) | LRC 歌词。 |
| LYRIC_STATUS_KRC_AND_LRC(4) | KRC 歌词和 LRC 歌词均有。 |
public class com.ss.bytertc.ktv.data.Music
java歌曲数据。
| 类型 | 名称 |
|---|---|
| String | musicId |
| String | musicName |
| String | singer |
| String | vendorId |
| String | vendorName |
| long | updateTimestamp |
| String | posterUrl |
| LyricStatus | lyricStatus |
| int | duration |
| boolean | enableScore |
| int | climaxStartTime |
| int | climaxEndTime |
public String com.ss.bytertc.ktv.data.Music.musicId;
java音乐 ID。
public String com.ss.bytertc.ktv.data.Music.musicName;
java音乐名称。
public String com.ss.bytertc.ktv.data.Music.singer;
java歌手。
public String com.ss.bytertc.ktv.data.Music.vendorId;
java版权商 ID。
public String com.ss.bytertc.ktv.data.Music.vendorName;
java版权商名称。
public long com.ss.bytertc.ktv.data.Music.updateTimestamp;
java最新更新时间戳,单位为毫秒。
public String com.ss.bytertc.ktv.data.Music.posterUrl;
java封面地址。
public LyricStatus com.ss.bytertc.ktv.data.Music.lyricStatus;
java歌词格式类型,参看 LyricStatus。
public int com.ss.bytertc.ktv.data.Music.duration;
java歌曲长度,单位为毫秒。
public boolean com.ss.bytertc.ktv.data.Music.enableScore;
java歌曲是否支持打分。
public int com.ss.bytertc.ktv.data.Music.climaxStartTime;
java歌曲高潮片段开始时间,单位为毫秒。
public int com.ss.bytertc.ktv.data.Music.climaxEndTime;
java歌曲高潮片段停止时间,单位为毫秒。
public enum com.ss.bytertc.ktv.data.MusicFilterType
java歌曲过滤方式。
| 类型 | 说明 |
|---|---|
| MUSIC_FILTER_TYPE_NONE(0) | 不过滤。 |
| MUSIC_FILTER_TYPE_WITHOUT_LYRIC(1<<0) | 过滤没有歌词的歌曲。 |
| MUSIC_FILTER_TYPE_UNSUPPORTED_SCORE(1<<1) | 过滤不支持打分的歌曲。 |
| MUSIC_FILTER_TYPE_UNSUPPORTED_ACCOMPANY(1<<2) | 过滤不支持伴唱切换的歌曲。 |
| MUSIC_FILTER_TYPE_UNSUPPORTED_CLIMAX(1<<3) | 过滤没有高潮片段的歌曲。 |
public enum com.ss.bytertc.ktv.data.MusicHotType
java热榜类别。
| 类型 | 说明 |
|---|---|
| MUSIC_HOT_TYPE_CONTENT_CENTER(1 << 0) | 火山内容中心热歌榜。 |
| MUSIC_HOT_TYPE_PROJECT(1 << 1) | 项目热歌榜。 |
public enum com.ss.bytertc.ktv.data.PlayState
java音乐播放状态。
| 类型 | 说明 |
|---|---|
| PLAY_STATE_PLAYING(1) | 播放中。 |
| PLAY_STATE_PAUSED(2) | 暂停中。 |
| PLAY_STATE_STOPPED(3) | 已停止。 |
| PLAY_STATE_FAILED(4) | 播放失败。 |
| PLAY_STATE_FINISHED(5) | 播放结束。 |