JMGL_PANO

star_war_eve source 1

star_war_eve source 2

1. 介绍

JMGL_PANO 是Justin开源的一个全景视频播放器(Github)。基于硬件加速的视频解码和OpenGL渲染。仅供个人学习使用,商业使用请联系作者(Justin’s Email: mojing1999@gmail.com)

2. 相关库

  • OpenGL - OpenGL V3.3
  • GLEW - OpenGL核心库操作
  • GLFW - 和window相关操作
  • FFmpeg - 媒体解码库
  • pthread - 线程库
  • Intel Media SDK - 解码库
  • NV CUDA - 解码库
  • Video codec - 作者基于硬件加速的视频库
  • AnyOption - http://www.hackorama.com/anyoption/

3. 框架结构

  • FFmpeg/video_codec 媒体处理,输出YUV420图像
  • OpenGL 创建模型,贴图,渲染
  • GLFW 创建显示窗口,处理鼠标键盘输入

4. 使用

  • Usage: jmgl_pano [option] input_file
  • option: -d decode type, user can select decode library.
    • 0: Auto, 1: Nvidia, 2: Intel, 3: ffmpeg
  • switch view mode by keyboard input:
    • F1 : Rectilinear
    • F2 : Mirror Ball
    • F3 : Fisheye
    • F4 : Little Planet
    • ‘a’ : Auto rotation
    • ‘t’ : Stop auto rotation

程序截图

  • 全景预览

  • 水晶球

  • 小行星

5. TODO list

  • 处理键盘输入
  • 处理鼠标输入
  • 处理触摸屏输入
  • 全景模式变换
    • 全景浏览
    • 鱼眼模式
    • 水晶球模式
    • 小行星模式
  • 优化OpenGL渲染
  • 媒体文件硬解码支持
  • 贴图编码

注: 本页JPEG图片使用Google guetzli 工具压缩,压缩时间太长,压缩率还可以接受。

OpenGL Panorama Player的更多相关文章

  1. 计算机视觉code与软件

    Research Code A rational methodology for lossy compression - REWIC is a software-based implementatio ...

  2. 学习pano2vr制作html5全景笔记

    demo截图: demo下载: 百度网盘:http://pan.baidu.com/s/1o8yBwIA 密码:nf62(启服务端查看); 我制作是全屏定点360的全景页面,使用pano2vr软件制作 ...

  3. NeHe OpenGL教程 第三十五课:播放AVI

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  4. NeHe OpenGL教程 第二十一课:线的游戏

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  5. Media PLayer

    PotPlayer http://potplayer.daum.net/?lang=zh_CN KMPlayer 的原制作者姜龙喜先生(韩国)进入 Daum 公司后的新一代作品.PotPlayer 的 ...

  6. win10系统搭建虚拟机:VMware Workstation Player 12环境+Ubuntu Kylin 16.04 LTS系统

    笔者小白一枚,其实连虚拟机是个啥都不知道...实属惭愧,介于此所以今天倒腾了一下花了一上午就已经搭建好一个VMware Workstation Player 12免费版的,很哈皮,于是赶紧分享一下. ...

  7. OpenGL.Tutorial文章转载

    ZC:本来以为没有中文版的,原来有中文版,网址为: ZC: OpenGL3.0教程 _ 泰然网.html(http://www.tairan.com/archives/6126/) ZC: OpenG ...

  8. Player Settings 导出设置

    Player Settings is where you define various parameters (platform specific) for the final game that y ...

  9. 第11月第14天 opengl yuv beginners-tutorials

    1. Here is some snippets of code from my project 'movie player for iOS'. 1. fragment shader varying ...

随机推荐

  1. 关于mysql数据库连接异常处理

    tomcat启动错误日志关键信息: 28-Aug-2019 14:22:55.014 SEVERE [localhost-startStop-1] org.apache.catalina.core.C ...

  2. echarts 实现柱状图重叠而不是相互增加

    1.引入echart 所需要的js和css,这不再引入 总量的数据是包含分量且大于等于分量 先上效果图: 当我们查看总量时,显示的是将分量的也包含里面,这样就不是叠加的数量了 2.直接上代码 (可复制 ...

  3. 场景实践篇一:Nginx负载均衡配置

    code1   code2    code3  三个文件夹, 每个文件夹下面一个 index.html 的文件夹 cd /etc/nginx/conf.d/  下面新建   server1.conf  ...

  4. G - KiKi's K-Number(树状数组求区间第k大)

    For the k-th number, we all should be very familiar with it. Of course,to kiki it is also simple. No ...

  5. 一文带你了解BOM基本知识

    1.1. BOM和DOM的区别DOM就是一套操作HTML标签的API(接口/方法/属性) BOM就是一套操作浏览器的API(接口/方法/属性) 1.2. BOM中常见的对象window: 代表整个浏览 ...

  6. ElasticSearch6 报错blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];

    原文连接:https://blog.csdn.net/u013042707/article/details/84110531 方案:curl -XPUT -H "Content-Type: ...

  7. 主效应|处理误差 |组间误差|处理效应|随机误差|组内误差|误差|效应分析|方差齐性检验|SSE|SSA|SST|MSE|MSA|F检验|关系系数|完全随机化设计|区组设计|析因分析

    8 什么是只考虑主效应的方差分析? 就是不考虑交互效应的方差分析,即认为因素之间是不相互影响的,就是无重复的方差分析.   什么是处理误差 (treatment error).组间误差(between ...

  8. linux chmod命令修改文件权限

    在linux中,使用chmod命令修改一个文件的权限. 首先,我们查看一个文件夹下所有文件的权限 ls -l linux文件或目录的权限分为,读.写.可执行三种权限.文件访问的用户类别分为,文件创建者 ...

  9. [LC] 139. Word Break

    Given a non-empty string s and a dictionary wordDict containing a list of non-empty words, determine ...

  10. python--包package、模块module、类Class、Mixin类(未完成)

    包package>模块module>类Class(包含了属性.方法.实例等概念) 模式一:一个包下面有多个py文件,即多个模块module 模式二:一个包下面包含多个子包packages ...