使用IJKPlayer播放视频实现了一些播放视频的基本操作
Iijkplayer目前是很流行的音视频框架,集成我这里就不多说了,网上很多,大概就是编译ijkplayer的源码得到里边的so文件,添加到自己项目的libs文件夹中,gradlle依赖下资源。我这里是在IjkVideoView基础上开发的,自己实现了播放、暂停、旋转全屏播放、音量和亮度调节、进度条、拖动进度条播放功能,可以满足普通的播放视频的需求;Demo下载
友情提示我播放的是本地视频需要自己在sd卡目录下放一个视频文件,6.0以上是需要动态申请读写sd卡权限的,我代码里边没有加入,我在手机设置里自己手动开启的。
看下动态效果图:
先看下布局layout,IjkVideoView的高度必须要是>0否则不会创建view就不会创建MediaPalyer对象了。我建议不居中的IjkVideoView高度和宽度填充处理,之后IjkVideoView再根据视频的宽高按比例设置达到自适应的效果。如果想在video上实现滑动控制音量和亮度,我建议再加一层布局就可以自定义它实现手势滑动功能;
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.yangqiang.ijkplayertest.media.IjkVideoView
android:layout_gravity="center"
android:visibility="visible"
android:id="@+id/video_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<SeekBar
android:id="@+id/progress"
android:layout_width="match_parent"
android:layout_height="20dp" />
<RelativeLayout
android:layout_centerVertical="true"
android:layout_below="@+id/video_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:layout_marginLeft="30dp"
android:text="start"
android:id="@+id/start"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<Button
android:layout_toRightOf="@id/start"
android:layout_marginLeft="10d