前言
现在媒体播放使用很多项目都使用bilibili开源的IjkPlayer,当然也用系统自带的MediaPlayer,都有回调onError()和onInfo(),因此这里整理一下常见的INFO码。
@Override public boolean onError(MediaPlayer mp, int what, int extra) { } @Override public boolean onInfo(MediaPlayer mp, int whatInfo, int extra) { }
正文
下面简单的介绍一下onInfo()回调的INFO码,一般扩展的都在MediaPlayer的基础上扩展。
MediaPlayer的常见INFO码
//使用查看方式 MediaPlayer.MEDIA_INFO_VIDEO_RENDERING_START
// 未知信息 int MEDIA_INFO_UNKNOWN = 1; // 播放下一条 int MEDIA_INFO_STARTED_AS_NEXT = 2; // 视频开始 int MEDIA_INFO_VIDEO_RENDERING_START = 3; // 缓冲开始 int MEDIA_INFO_BUFFERING_START = 701; // 缓冲结束 int MEDIA_INFO_BUFFERING_END = 702; // 网络宽带,网速方面 int MEDIA_INFO_NETWORK_BANDWIDTH = 703; // 音视频数据错误 int MEDIA_INFO_BAD_INTERLEAVING = 800; // 不支持seek+/- int MEDIA_INFO_NOT_SEEKABLE = 801; // 音频不支持 MEDIA_INFO_AUDIO_NOT_PLAYING = 804; // 视频不支持 MEDIA_INFO_VIDEO_NOT_PLAYING = 805; // 不支持字幕 MEDIA_INFO_UNSUPPORTED_SUBTITLE = 901; // 字幕超时 MEDIA_INFO_SUBTITLE_TIMED_OUT = 902;
IjkPlayer的常见INFO码
//使用查看方式(部分跟上面的MediaPlayer一样的,具体看上面) tv.danmaku.ijk.media.player.IMediaPlayer.MEDIA_INFO_VIDEO_DECODED_START:
// 字幕超时 int MEDIA_INFO_SUBTITLE_TIMED_OUT = 902; // /视频方向改变,也是视频信息开始准备的开始 int MEDIA_INFO_VIDEO_ROTATION_CHANGED = 10001; // 音频准备开始 int MEDIA_INFO_AUDIO_RENDERING_START = 10002; // 音频解码开始 int MEDIA_INFO_AUDIO_DECODED_START = 10003; // 视频解码开始 int MEDIA_INFO_VIDEO_DECODED_START = 10004; //10008和10009跟开始播放前seek的打印(10009 见得多) int MEDIA_INFO_VIDEO_SEEK_RENDERING_START = 10008; int MEDIA_INFO_AUDIO_SEEK_RENDERING_START = 10009;
参考文章
© 版权声明