setEnableAutoBitrateDowngrade(true) 时,功能保持关闭。分阶段起播超时属于基础播放保护,默认开启,不依赖智能降码流开关。关闭智能降码流后,资源解析、音频缓冲、MV 首帧和音视频整体起播仍有明确的超时上限。
KaraokePlayerListener.onAutoBitrateChanged 通知接入方。接入方可以根据 trigger 和 action 提示用户:| 字段 | 说明 |
|---|---|
trigger | 触发场景,见下表 |
action | ACTION_* 的按位组合,可以同时包含视频和音频降级 |
oldVideoQuality/newVideoQuality | 降级前后的 MV 清晰度 |
oldAudioQuality/newAudioQuality | 降级前后的音频清晰度 |
networkSpeedKBps | 实测网速,单位 KB/s;-1 表示无法获取 |
playbackRestarted | 是否因音频资源变化重建了当前歌曲播放器 |
reason | REASON_BANDWIDTH_INSUFFICIENT 或 REASON_NETWORK_SPEED_UNKNOWN |
attempt | 当前歌曲第几次执行智能降码流,从 1 开始 |
| 常量 | 触发场景 |
|---|---|
TRIGGER_STARTUP_BANDWIDTH_PREDICTED | 起播阶段检测到带宽不足 |
TRIGGER_STARTUP_AUDIO_BUFFER_TIMEOUT | 起播音频缓冲未及时达到可播放条件 |
TRIGGER_VIDEO_FIRST_FRAME_TIMEOUT | MV 首帧软超时或硬超时 |
TRIGGER_PLAYING_BUFFERING | 播放中 MV 多次缓冲 |
TRIGGER_PLAYING_AUDIO_BUFFERING | 播放中音频资源持续不足 |
| 常量 | 说明 |
|---|---|
ACTION_DOWNGRADE_VIDEO | 已降低 MV 清晰度 |
ACTION_CLOSE_VIDEO | 已关闭当前歌曲 MV,进入大图或本地视频兜底模式 |
ACTION_DOWNGRADE_AUDIO | 已降低音频清晰度 |
onShowPicture 把歌曲封面地址和错误状态通知接入方。SDK 核心不会强制创建 UI 或占用接入方的视频容器,接入方可以自行显示歌曲封面、默认图片或本地循环视频。