OpenGLES 2.0 required

Android 4.0.3 (IceCreamSandwich API-15) required

There are two way to use this library depend on your requirement,

根据你的需要,该库有两种使用方法。

使用MDGLSurfaceView

第一步 在layout xml中定义com.asha.vrlib.MDGLSurfaceView...

android:id="@+id/md_surface_view"

android:layout_width="match_parent"

android:layout_height="match_parent" />

...

第二步 当surface准备好了之后,把android.view.Surface设置到MediaPlayer上public class MDGLSurfaceViewDemoActivity extends MediaPlayerActivity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_md_gl_surface);

MDGLSurfaceView mGLSurfaceView = (MDGLSurfaceView) findViewById(R.id.md_surface_view);

mGLSurfaceView.init(new MD360Renderer.IOnSurfaceReadyListener() {

@Override

public void onSurfaceReady(Surface surface) {

//MediaPlayer or something else.

getPlayer().setSurface(surface);

}

});

}

}

更灵活的方式: MD360Renderer

第一步 建立一个MD360Renderer并设置android.view.Surface。public class MD360RenderDemoActivity extends MediaPlayerActivity {

private MD360Renderer mRenderer;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_md_render);

mRenderer = MD360Renderer.with(this)

.listenSurfaceReady(new MD360Renderer.IOnSurfaceReadyListener() {

@Override

public void onSurfaceReady(Surface surface) {

getPlayer().setSurface(surface);

}

})

.build();

// init OpenGL

initOpenGL(R.id.surface_view);

}

}

第二步 自己初始化OpenGL,并把MD360Renderer设置到你的android.opengl.GLSurfaceView上。private void initOpenGL(int glSurfaceViewResId) {

mGLSurfaceView = (GLSurfaceView) findViewById(glSurfaceViewResId);

if (GLUtil.supportsEs2(this)) {

// Request an OpenGL ES 2.0 compatible context.

mGLSurfaceView.setEGLContextClientVersion(2);

// Set the renderer to our demo renderer, defined below.

mGLSurfaceView.setRenderer(mRenderer);

} else {

mGLSurfaceView.setVisibility(View.GONE);

Toast.makeText(MD360RenderDemoActivity.this, "OpenGLES2 not supported.", Toast.LENGTH_SHORT).show();

}

}

Reference

开源 android md 播放器,MD360Player4Android相关推荐

  1. android 著名播放器,【精华】十二大最著名的Android播放器开源项目

    1.ExoPlayer https://github.com/google/ExoPlayer ExpPlayer是一个开源的,App等级的媒体API,它的开源项目包含了library和示例: Dem ...

  2. Vitamio打造自己的Android万能播放器

    前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的And ...

  3. 使用Vitamio打造自己的Android万能播放器(1)——准备

    前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的And ...

  4. 使用Vitamio打造自己的Android万能播放器(5)——在线播放(播放优酷视频)

    前言 为了保证每周一篇的进度,又由于Vitamio新版本没有发布, 决定推迟本地播放的一些功能(截图.视频时间.尺寸等),跳过直接写在线播放部分的章节.从Vitamio的介绍可以看得出,其支持http ...

  5. 使用Vitamio打造自己的Android万能播放器(4)——本地播放(快捷搜索、数据存储)...

    前言 关键字:Vitamio.VPlayer.Android播放器.Android影音.Android开源播放器 本章节把Android万能播放器本地播放的主要功能(缓存播放列表和A-Z快速查询功能) ...

  6. 基于android音乐播放器的设计

    本科毕业论文(设计)诚信声明 本人郑重声明:所呈交的毕业论文(设计),题目<---基于android音乐播放器的设计----------->是本人在指导教师的指导下,进行研究工作所取得的成 ...

  7. 【超详细】开源JZVideo饺子播放器播放器配置使用以及其自定义

    文章目录 特点 配置 添加依赖 添加布局 添加逻辑 修改AndroidManifest.xml 小问题 展示图 自定义 自定义UI 编写自定义类 重新应用控件 应用 总结 参考链接 继续找播放器,找到 ...

  8. android vitamio 实现快速播放,使用Vitamio打造自己的Android万能播放器(5)

    前言 为了保证每周一篇的进度,又由于Vitamio新版本没有发布, 决定推迟本地播放的一些功能(截图.视频时间.尺寸等),跳过直接写在线播放部分的章节.从Vitamio的介绍可以看得出,其支持http ...

  9. 使用Vitamio打造自己的Android万能播放器

    前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的And ...

最新文章

  1. 想要学好Go语言的必须知道的一个小技巧
  2. 百度大脑发挥AI“头雁效应” 王海峰:在AI时代共同推动社会智能化升级
  3. C语言中auto,register,static,const,volatile的区别
  4. Swift常用库收集
  5. linux中怎么删除只读变量,【Linux】【问题集锦】如何删除shell只读变量
  6. Xshell连接Centos完整版(动态ip)
  7. python 降噪_使用降噪自动编码器重建损坏的数据(Python代码)
  8. eureka-7-多网卡下的ip选择
  9. python 第三方模块 yaml - 处理 YAML (专门用来写配置文件的语言)
  10. Gitlab自动触发Jenkins构建项目
  11. java图形接口_java基础七 [图形用户接口](阅读Head First Java记录)
  12. sts版本不同有影响吗_不同型号的手机充电器可以混用吗?会影响电池吗?
  13. FAQ系列 | mysqldump选项之skip-opt
  14. 广东地区电信官方DNS服务器
  15. 几何画板是哪方面的计算机应用,几何画板主要功能是哪些?了解后就能愉快使用啦...
  16. python小玩意——性格测试
  17. linux kvm切换器,PS2系列KVM切换器
  18. 大漠多线程循环任务自动切换模板判断账号登陆成功
  19. cent os7目录详解
  20. 小型企业网三层架构(基于CISCO设备)

热门文章

  1. 如何为Apple 键盘、鼠标或触控板中的内建电池充电?
  2. 带 Touch ID 的新款 iMac 妙控键盘可以单独购买
  3. 全国计算机一级九月份,九月份全国计算机一级考试试题
  4. 类(class)和结构体(struct)的区别
  5. Error updating database. Cause: java.sql.SQLSyntaxErrorException: Unknown column ‘experience_openne
  6. 大数据时代,企业网络安全怎么守护?
  7. Ubuntu16.04搜狗拼音输入法候选栏显示乱码英文串。
  8. 大轴纸怎么上机器人_幼儿园大班科学——“制作机器人”系列活动策划及分析...
  9. 京东争抢AI人才,前微软亚洲研究院资深研究员梅涛博士加盟
  10. 重置目录服务还原模式管理员密码