这今天做电视端项目,需要写一个可以播放组播流的播放器,可以直接播放像CCTV频道的电视节目。
我们先来说说组播流以及它所用到的协议;
组播:一种组播流分发节点接收组播流的方法,效保证了组播流传输的可靠性以及组播业务不发生间断,并保证了双组播源在组网中的应用;
流媒体协议: (rtp/rtcp/rtsp/rtmp/mms/hls)
这里我在网上找到了一篇很好的博客。里面专门详细讲解流媒体协议。地址: 流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls)
如果要播放流媒体,我们也可以搭建一个VLC的服务器,来向网段中分发流,我之前写过关于VLC搭建流媒体的博客。以供大家参考; 使用VLC搭建组播服务器,在客户端进行播放
闲话少说,上代码;
这是从vitaimo官网下载的工程依赖,initActivity,其目录结构如下:
将他导入项目后作为工程依赖即可。
下面就是播放器代码:
import io.vov.vitamio.ChannelChangeImp;
import io.vov.vitamio.LibsChecker;
import io.vov.vitamio.MediaPlayer;
import io.vov.vitamio.MediaPlayer.OnBufferingUpdateListener;
import io.vov.vitamio.MediaPlayer.OnCompletionListener;
import io.vov