KaraokePlayer - 播放器核心接口KaraokePlayerListener - 播放器回调监听器KaraokePlayRequest - 播放请求对象PlayerManager - 播放管理器,提供预加载和播放列表管理PlayPreLoader - 预加载接口及其实现KtvLoginService - 登录服务LoginEvent - 登录事件PlayerDemoActivity - 播放器演示ActivityKtvPlayFragment - 播放Fragment实现onPlayPrepare之后或者onPlayStart回调中进行初始化stop()方法会释放所有播放资源stop()再调用play()STATE_IDLE: 0 - 空闲状态STATE_START: 1 - 开始状态STATE_PLAYING: 2 - 播放中STATE_PAUSE: 3 - 暂停状态STATE_ENDED: 4 - 播放结束DataSourceType.ORIGINAL - 原唱DataSourceType.ACCOMPANY - 伴奏OnScoreListener 细节见 KtvSDK-打分1. onPrePlay - 调用play()方法后立即回调
2. onPrepareResourceBufferingChange - 资源缓冲进度
3. onPlayPrepare - 播放资源准备完成
4. onVideoSizeChanged - 视频尺寸变化
5. onPlayStart - 播放开始
6. onLyricResourceChanged - 歌词资源更新完成(初始化歌词后会异步调用,也可能在onPlayStart前)
7. onPlayPositionChange - 播放进度更新(持续回调)
8. onVideoBufferPercentChange 视频缓冲进度
9. onBufferingStart/onBufferingEnd - 缓冲开始/ 结束
10. onPlayEnd - 播放结束onShowPicture回调非常重要,当视频播放失败时必须实现此回调显示封面图,否则会出现黑屏onAllResourceDownloadFinished回调后才能进行下一首歌曲的预加载,否则会导致当前歌曲下载被取消onPlayPositionChange会持续回调,用于更新播放进度UI登录后
↓
PlayerManager.preload (播放管理器)
↓
PlayPreLoader (预加载器) → KaraokePlayer (播放器)
↓
KaraokePlayerListener (播放回调)
public String getMid(); // 歌曲mid
public String getOriUrl(); // 歌曲原唱URL
public String getAccUrl(); // 歌曲消音伴奏URL
public boolean hasAccUrl(); //是否有伴奏
public boolean hasOriUrl(); //是否有原唱
public byte[] mNodeBytes; // 打分 Note 数据
public byte[] mQycBytes; // 加密 QRC 歌词
public byte[] mLrcBytes; // 加密 LRC 歌词
public int isMvHasLyric(); // MV是否带歌词,0表示无歌词,1表示有歌词
pulic getAlbumImage(); //获取歌曲专辑封面图片URL地址
pulic getMvCoverImage(); //获取MV封面图片
public getSingerLandscapeBigPicUrls(); //歌手横屏大图
public getSingerVerticalBigPicUrls(); //歌手竖屏大图
....KtvSdk视频播放策略 1.