android exoplayer最好用的视频播放器,倍速播放

集成安卓播放器

 

1,主要内容来自官方文档,下面为本人学习后总结的一个播放器。

官方文档:https://exoplayer.dev/hello-world.html

2,第一步:添加依赖,和java 8语法支持

implementation 'com.google.android.exoplayer:exoplayer:2.10.5'

android exoplayer最好用的视频播放器,倍速播放_第1张图片

 

3,第二步,创建布局和实现

class PlayerActivity : BaseActivityK() {
    override val contentViewId = com.robot.ocean9.R.layout.play_act
    lateinit var player: SimpleExoPlayer
    lateinit var videoSource: ProgressiveMediaSource

    override fun init() { 
       //创建播放实例
        player = ExoPlayerFactory.newSimpleInstance(this)
      //播放实例赋值给UI。
        play_view.player = player
      //数据源
        var dataSourceFactory = DefaultDataSourceFactory(this, Util.getUserAgent(this, "hua"))
        var url = "http://clips.vorwaerts-gmbh.de/VfE_html5.mp4"
        videoSource =
            ProgressiveMediaSource.Factory(dataSourceFactory).createMediaSource(Uri.parse(url))
        player.prepare(videoSource)
      //缓存好自动播放
        player.playWhenReady = true

    }

    override fun widgetListener() {
       //一倍播放速率
        btn_cut.setOnClickListener {
            player.playbackParameters = PlaybackParameters(1f)
        }
      //3倍播放速度
        btn_cut2.setOnClickListener {
            player.playbackParameters = PlaybackParameters(3f)
        }


    }


    override fun onDestroy() {
        super.onDestroy()
        player.release()//释放资源
    }

}

布局如下:


 
     
    

4,运行项目,就可以播放了。更多功能看官方文档

5,如果想自定义视频控件,可以代替原生的控件。控件名字为exo_player_control_view.xml

只要把控件的Id和原生的保持一致,功能就可以保存。例如原生的播放按钮id 为 exo_play

下面为我自定义的控件。如下:




    

    

    

        

        

        

    

 

运行后如下:

android exoplayer最好用的视频播放器,倍速播放_第2张图片

 

到此完成,多么完美的exoplayer

你可能感兴趣的:(android exoplayer最好用的视频播放器,倍速播放)