vrPlayer

来自于:开发者立即使用

VR简介

虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,是一种多源信息融合的、交互式的三维动态视景和实体行为的系统仿真使用户沉浸到该环境中。

vrPlayer 模块概述

本模块暂仅封装了mp4格式的vr视频播放。(备注:本模块播放vr视频只适合用高端手机,安卓系统6.0以上,ios系统8.0以上,请开发者自行进行控制。)

模块接口

addEventListener

监听手机不支持某互动类型(运动|触摸|运动&触摸)

addEventListener(callback(ret,err))

callback(ret,err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true,   //布尔型;true
    code : 0,    //视频的互动类型(0:运动 1:触摸 2:运动&触摸)
    msg : '您的手机不支持运动模式'
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg: ""
}

示例代码

var demo = api.require('vrPlayer');
demo.addEventListener(function(ret) {
    alert(JSON.stringify(ret));
});

可用性

Android系统

可提供的1.0.0及更高版本

openVrPlayer

播放vr视频

openVrPlayer({params}, callback(ret, err))

params

rect:

  • 类型:JSON 对象
  • 描述:(必填项)模块的位置及尺寸
  • 备注:iOS,Android 必须传此参数。
  • 内部字段:
{
    x: 0,   //(必填项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
    y: 0,   //(必填项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
    w: 320, //(必填项)数字类型;模块的宽度;默认值:所属的 Window 或 Frame 的宽度
    h: 250  //(必填项)数字类型;模块的高度;默认值:250
}

fixedOn:

  • 类型:字符串
  • 描述:(可选项)模块所属 Frame 的名字,若不传则模块归属于当前 Window

fixed:

  • 类型:布尔
  • 描述:((可选项)模块是否随所属 Window 或 Frame 滚动
  • 默认值:true(不随之滚动)

url:

  • 类型:字符串
  • 描述:(必填项)视频资源地址,支持fs://、widget://(在 android 平台上不支持 widget)、http:// (暂仅支持mp4,请开发者自行控制)

interactive:

  • 类型:数字型
  • 描述:(可选项)设置视频的互动类型(0:运动 1:触摸 2:运动&触摸)
  • 默认值:0(运动)

display:

  • 类型:数字型
  • 描述:(可选项)设置视频显示类型(0:正常 1:双镜头)
  • 默认值:0(正常)

projection:

  • 类型:数字型
  • 描述:(可选项)设置视频投影类型(0:球体 1:圆顶180 2:圆顶230 3:圆顶向上180 4:圆顶向上230 5:立体 6:平面铺满 7:平面剪裁 8:平面全铺)
  • 默认值:0(球体)

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true      //布尔型;true||false
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg: ""
}

示例代码

var demo = api.require('vrPlayer');
demo.openVrPlayer({
    rect : {
        x : 0,
        y : 0,
        w : api.frameWidth,
        h : 300
    },
    fixedOn : api.frameName,
    fixed : true,
    url : 'widget://res/skyrim360.mp4',
    interactive : 0,
    display : 0,
    projection : 0
},function(ret, err) {
    alert(JSON.stringify(ret));
});

可用性

iOS系统、Android系统

可提供的1.0.0及更高版本

switchInteractive

设置视频的互动

switchInteractive({params}, callback(ret, err))

params

interactive:

  • 类型:数字型
  • 描述:(可选项)设置视频的互动类型(0:运动 1:触摸 2:运动&触摸)
  • 默认值:0(运动)

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true   //布尔型;true||false
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg: ""
}

示例代码

var demo = api.require('vrPlayer');
demo.switchInteractive({
    interactive : 1
}, function(ret, err) {
});

可用性

iOS系统、Android系统

可提供的1.0.0及更高版本

switchDisplay

设置视频的显示模式

switchDisplay({params}, callback(ret, err))

params

display:

  • 类型:数字型
  • 描述:(可选项)设置视频显示类型(0:正常 1:双镜头)
  • 默认值:0(正常)

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true   //布尔型;true||false
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg: ""
}

示例代码

var demo = api.require('vrPlayer');
demo.switchDisplay({
    display : 0
}, function(ret, err) {
});

可用性

iOS系统、Android系统

可提供的1.0.0及更高版本

switchProjection

设置视频的影像模式

switchProjection({params}, callback(ret, err))

params

projection:

  • 类型:数字型
  • 描述:(可选项)设置视频投影类型(0:球体 1:圆顶180 2:圆顶230 3:圆顶向上180 4:圆顶向上230 5:立体 6:平面铺满 7:平面剪裁 8:平面全铺)
  • 默认值:0(球体)

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true   //布尔型;true||false
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg: ""
}

示例代码

var demo = api.require('vrPlayer');
demo.switchProjection({
    projection : 0
}, function(ret, err) {
});

可用性

iOS系统、Android系统

可提供的1.0.0及更高版本

closeVrPlayer

关闭

closeVrPlayer(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true   //布尔型;true||false
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg: ""
}

示例代码

var demo = api.require('vrPlayer');
demo.closeVrPlayer(function(ret, err) {
});

可用性

iOS系统、Android系统

可提供的1.0.0及更高版本