1:导言
由于之前项目中有终端直播,并将视频推流,通过后台接口的方式,请求推流,并通过播放器拉流,返回的地址用Android官方播放器是无法播放的,牵涉到流媒体类型(MMS, RTSP, RTMP(直播), HLS(m3u8)),返回的流是flv,协议为RTMP,所以用Android原生SDK videoview是不行的,必须通过三方播放器来做,而ijkplayer又是使用量最多,轻量级的视频播放器
Git官方demo:https://github.com/bilibili/ijkplayer
2:导入—gradle
//ijkplayer
implementation 'tv.danmaku.ijk.media:ijkplayer-java:0.8.8'
implementation 'tv.danmaku.ijk.media:ijkplayer-exo:0.8.8'
//ijkplayer so文件
implementation 'tv.danmaku.ijk.media:ijkplayer-arm64:0.8.8'
implementation 'tv.danmaku.ijk.media:ijkplayer-armv7a:0.8.8'
implementation 'tv.danmaku.ijk.media:ijkplayer-x86:0.8.8'
implementation 'tv.danmaku.ijk.media:ijkplayer-x86_64:0.8.8'
implementation 'tv.danmaku.ijk.media:ijkplayer-armv5:0.8.8'
3:自定义播放控件IjkVideoView,用视频控制类IMediaPlayer播放视频SurfaceView,创建播放监听VideoPlayerListener
public class IjkVideoView extends FrameLayout {