ArtVideoPlayer
這是一個靈活的視頻播放器。 MediaPlayer
與VideoView
完全分開,可以替換爲其他播放器內核,如ExoPlayer
和ijkPlayer
。 可以完全自定義播放器視圖,我們稱之爲控制面板。 此外,可以使用MediaPlayerManager
來控制播放行爲,例如全屏模式,小屏幕模式以及RecyclerView
中的智能匹配模式。
Features
- 全屏,小屏播放
- 內部支持
RecyclerView
中播放 - 自定義UI
- APP內全局播放
- 靜音
- 循環播放
Preview
Download
Getting started
build.gradle
dependencies {
// required
implementation 'org.salient.artvideoplayer:artplayer-java:0.5'
// optional: Default control panel
implementation 'org.salient.artvideoplayer:artplayer-ui:0.5'
}
Usage
java
import org.salient.artplayer.VideoView;
VideoView videoView = new VideoView(this);
videoView.setUp("http://vfx.mtime.cn/Video/2018/06/27/mp4/180627094726195356.mp4");
videoView.setControlPanel(new ControlPanel(this));
videoView.start();
xml
<org.salient.artplayer.VideoView
android:id="@+id/video_view"
android:layout_width="match_parent"
android:layout_height="200dp"/>
AndroidManifest.xml
<activity
android:name=".YourActivity"
android:configChanges="orientation|screenSize" /> <!-- required -->
Activity
@Override
public void onBackPressed() {
if (MediaPlayerManager.instance().backPress(this)) {
return;
}
super.onBackPressed();
}
@Override
protected void onPause() {
super.onPause();
MediaPlayerManager.instance().pause();
}
@Override
protected void onDestroy() {
super.onDestroy();
MediaPlayerManager.instance().releasePlayerAndView(this);
}
ON-PLAN
- 視頻畫面比例
ijkPlayer
支持ExoPlayer
支持- 音頻播放
- Kotlin版本
NOT-ON-PLAN(不在計劃)
- Multiple MediaPlayer playback
- 多播放器播放
Support (支持)
- Public technical discussion on github is preferred.
- 請在 github 上公開討論技術問題
My Build Environment
- Java 1.7
- Android Studio 3.1.2
- Gradle 3.1.2