iOS端VR视频播放

来源:互联网 发布:哈飞里程表 算法 编辑:程序博客网 时间:2024/05/03 21:29
参考:http://blog.csdn.net/qq_28001881/article/details/51317103

这是我来到深圳工作的第一个星期,公司是做VR软件开发的。以前没怎么接触过,
我这边主要的工作是用iOS端开发VR视频播放的一个开发工作。
所以第一个星期需要自学这方面知识,下面是我看了谷歌的一个VR在iOS端开发的文档写的一个demo。

第一步是需要用cocoaPods导入谷歌开发的一个第三方:CardboardSDK,怎么导入就不多说了,

这里需要注意的一点是谷歌方面的第三方导入需要翻墙,一般的翻墙软件是不可行的,需要用到VPN进行翻墙。

第二步,在导入第三方后在ViewController.m文件导入 #import “GCSVideoView.h”

遵循代理:GCSVideoViewDelegate

初始化:GCSVideoView GCSVideoView *_VRPlayerView = [[GCSVideoView alloc]initWithFrame:self.view.bounds];

确认代理: _VRPlayerView.delegate = self;

显示CardboardButton : 
_VRPlayerView.enableCardboardButton = YES;

是否可以全屏 : 
_VRPlayerView.enableFullscreenButton = YES;

在GCSVideoView上加载VR视频 :

[_VRPlayerView loadFromUrl:[NSURL URLWithString:@"http://v1.mukewang.com/a45016f4-08d6-4277-abe6-bcfd5244c201/L.mp4"]];

  • 1
  • 1

实现代理方法

#pragma mark ----GCSVideoViewDelegate----//GCSVideoView的点击事件-(void)widgetViewDidTap:(GCSWidgetView *)widgetView{    if (_isPaused) {        [_VRPlayerView resume];    }else{        [_VRPlayerView pause];    }    _isPaused = !_isPaused;}//视频播放到某个位置时触发事件-(void)videoView:(GCSVideoView *)videoView didUpdatePosition:(NSTimeInterval)position{    if (position == videoView.duration) {        [_VRPlayerView seekTo:0];        [_VRPlayerView resume];    }}//视频播放失败-(void)widgetView:(GCSWidgetView *)widgetView didFailToLoadContent:(id)content withErrorMessage:(NSString *)errorMessage{    NSLog(@"播放错误");}
Cardboard SDK for iOS,可以让熟悉 OpenGL 的开发者快速创建 VR app。其包括这几项功能:镜头扭曲矫正、
立体音效、
头部追踪、3D 校准、并行渲染、立体几何配置、用户输入事件处理。
CardboardSDK-iOS github地址
https://github.com/rsanchezsaez/CardboardSDK-iOS
这个可以看看:
https://github.com/SebastienBinet/Xcode_OpenGL_iOS_VR_with_Gyro
0 0
原创粉丝点击