1. MVP视频播放器简介
1.1 简介:
MVP视频播放器是一款兼容了大部分视频格式,并增加了手指滑动调节音量,调整进度,全屏播放等功能的播放器。
为了兼容大部分视频格式的播放,我们使用了第三方Vitamio多媒体框架(网址:https://www.vitamio.org/),不知道是不是使用的免费版本,在使用过程中,也发现了此框架的缺点。
优点:和google原生的Mediaplayer框架逻辑架构差不多,可以直接将google的VideoView和Vitamio的Mediaplayer合并使用
缺点:都是使用的软解码,速度不是很快,有时候还会卡顿的现象。
我们还使用了一个开源的多媒体框架VLC,这个速度比较快,它在处理有些格式的时候可以使用了硬解码,但是在移植的时候,底层往上层反馈消息的时机和google原生的逻辑不太一致,不知道是不是底层工程师没有理解逻辑架构,还是其它原因,这样就增加了上层的任务,写了较多的代码和逻辑判断,现在VLC框架也是可以支持的,如果有一天要用到VLC,我觉得还是要修改现有的VLC底层的架构,因为google原生的那套消息流程还是很清晰,容易让人理解的。
1.2 使用:
1.2.1 Vitamio的使用:
首先,将Vitamio工程导入Eclipse,右键-Properties-Android-勾选Is Library, 需要加入Vitamio的工程-右键-Proerties-Android-Library Add -Vitamio-OK.
在AndroidManifest.xml中加入
<activity
android:name="io.vov.vitamio.activity.InitActivity"
android:configChanges="orientation|keyboardHidden|navigation"
android:launchMode="singleTop"
android:theme="@android:style/Theme.NoTitleBar"
android:windowSoftInputMode="stateAlwaysHidden" />
在需要加入的Activity中,
import io.vov.vitamio.LibsChecker;
onCreate()代码段加入初始化动作:
if (!LibsChecker.checkVitamioLibs(this))
return;
1.2.2 MVP视频播放器的使用
在布局文件中加入
<com.mobilead.mvp.player.VipVideoView
android:id="@+id/vip_videoview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"/>
Activity中
import com.mobilead.mvp.player.VipVideoPlayer;
定义变量
private VipVideoPlayer mVideoPlayer;
设置视频Url和名称
mVideoPlayer.setVideoURI(Uri.parse(videoUrl), isIncludeAdvert);
mVideoPlayer.setVideoName(videoName);
通过1.2.1和1.2.2我们就可以完全使用MVP视频播放器了