ArtVideoPlayer, 一個優雅的視頻播放器

ArtVideoPlayer

這是一個靈活的視頻播放器。 MediaPlayerVideoView完全分開,可以替換爲其他播放器內核,如ExoPlayerijkPlayer。 可以完全自定義播放器視圖,我們稱之爲控制面板。 此外,可以使用MediaPlayerManager來控制播放行爲,例如全屏模式,小屏幕模式以及RecyclerView中的智能匹配模式。

Github:https://github.com/maiwenchang/ArtVideoPlayer

Features

  • 全屏,小屏播放
  • 內部支持RecyclerView中播放
  • 自定義UI
  • APP內全局播放
  • 靜音
  • 循環播放

Preview

main.pngmediaplayer.png

api.pnglist.png

recyclerview.pngextension.png

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

Authors

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章