Android万能播放器(基于FFmpeg+OpenSL+OpenGL+Mediacodec)

VR_Video-Play

万能播放器

支持 x86 cpu arm架构

Android 基于:FFmpeg+OpenSL+OpenGL+Mediacodec 的视频播放SDK,可播放网络、本地和广播等流媒。

支持播放VR360度全景视频

1、支持当前播放页直接切换播放源

2、优先选用GPU解码,解码速度更快

3、支持软解码和硬解码

4、直接用mediacodec解码avpacket数据。

5、支持用于传统直播和VR直播

6、底层使用FFmpeg解码支持各种格式的音视频播放

7、支持rtmp,http,hls等多种流媒体协议

Demo预览

请到github预览 VR and 2D player

  • 播放传统视频

 private WLPlayer wlPlayer;
 private GlSurfaceView glSurfaceView;
  //初始化
  glSurfaceView=findViewById(R.id.wlglsurfaceview);
  wlPlayer=new WLPlayer();
  wlPlayer.setWlOnParparedListener(new WlOnParparedListener() {
              @Override
              public void onParpared() {
                  System.out.println("播放");
                  wlPlayer.start();
              }
          });
  wlPlayer.setGlSurfaceView(glSurfaceView);
    //播放
  wlPlayer.setSource("http://vfx.mtime.cn/Video/2019/03/21/mp4/190321153853126488.mp4");
  wlPlayer.start();

  • 播放VR视频
<<<<<<< HEAD
        private GlSurfaceView glSurfaceView;
        private VrSurfaceView vrSurfaceView;

         //初始化
        vrSurfaceView=findViewById(R.id.play_vr_glsv);
        player=new WLPlayer();
        player.setWlOnParparedListener(new WlOnParparedListener() {
            @Override
            public void onParpared() {
                MyLog.d("开始播放----");
                System.out.println("播放");
                player.start();
            }
        });

         player.setOpenVr(true);   //设置成播放VR视频
         player.setVrSurfaceView(vrSurfaceView);
         player.setSource(VIDEO_URL);
         player.start();

注意!传统视频是用GlSurfaceView,而VR视频是用VrSurfaceView显示

具体源码请到我的github: 万能播放器库
如果好用请给个star!

你可能感兴趣的:(音视频开发)