qupaiLive

来自于:开发者立即使用

趣拍直播接入

**(注意:安卓仅支持4.3以上的手机,请开发者自行控制)

qupaiLive模块封装了趣拍官方直播功能,开发者在使用qupaiLive模块时,需要开发者自行到趣拍的微视频云申请相应的AppKey和AppSecret。

该AppKey的申请与您应用的创建过程有关,具体流程请参考如下介绍。

申请步骤

1、登录趣拍帐号

访问微视频云控制台页面,若您未登录账号,将会进入账号登录页面, 登录地址:http://vcs.qupai.me/dq.html#/login 如下图:

描述

2、登陆趣拍云控制台,具体如下图: 描述

3、创建应用 点击"创建应用",系统将为您弹出需要填写应用的相关信息,具体如下图: 描述

4、获取AppKey和AppSecret

注册成功后,在应用管理里面“密钥”处查看AppKey和AppSecret,具体如下图: 描述

5、申请开通直播功能

申请直播后界面如图,具体如下图: 描述

init

初始化sdk

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

params

appKey:

  • 类型:字符串
  • 描述:(必输项)申请的appKey,通过开发控制台上注册得到,进入「控制台」,点击进入应用管理中我的应用选项可查看。

appsecret:

  • 类型:字符串
  • 描述:(必输项)申请的appsecret,通过开发控制台上注册得到,进入「控制台」,点击进入应用管理中我的应用选项可查看。

space:

  • 类型:字符串
  • 描述:(必输项)存储目录 建议使用uid cid之类的信息,space是发布推流为每一个用户设置的一个流名,同时也作为直播回放的空间名称,建议设置为用户的uuid(最大支持32位,如获取的uuid大于32位请自行处理)。例如:A用户的uuid是110001,在paas平台的空间中为A用户生成一个110001的文件夹存放A用户上传的内容。。

示例代码

var demo = api.require('qupaiLive');
demo.init({
    appKey: '204955a834a7c36',
    appsecret: '55e409dc27c04a87be124a2939348b58',
    space: 'uid'
},
function(ret, err) {
    alert(JSON.stringify(ret));
});

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    accessToken : ""//鉴权成功之后返回的ACCESS-TOKEN
}

err:

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

createLive

创建直播

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

params

domain:

  • 类型:访问域名
  • 描述:(必填项)获取趣拍平台上的“访问域名”;

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    status: true,   //布尔型;true||false
    pushUrl:"",//推流url 
    pullUrl:"" //拉流url
}

err:

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

示例代码

var demo = api.require('qupaiLive');
demo.createLive({
    domain: "http://apicloud.s.qupai.me"
},
function(ret, err) {
    if (ret.status) {
        alert(JSON.stringify(ret));
        Console.log(JSON.stringify(ret));
    } else {
        alert(JSON.stringify(err));
    }
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startLive

开始直播

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

params

x:

  • 类型:数字类型
  • 描述:(必填项)模块左上角的 x 坐标(相对于所属的 Window 或 Frame);
  • 默认值:0

y:

  • 类型:数字类型
  • 描述:(必填项)模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认:0
  • 默认值:0

w:

  • 类型:数字类型
  • 描述:(可选项)模块的宽度;默认:所属的 Window 或 Frame 的宽度

h:

  • 类型:数字类型
  • 描述:(可选项)模块的高度;默认:所属的 Window 或 Frame 的高度
  • 默认值:300

watermask:

  • 类型:字符串类型
  • 描述:(可选项)水印图片路径,仅支持widget://

maxBitrate:

  • 类型:数字类型
  • 描述:(可选项)最大码率 (单位:bps)
  • 默认值:1500 * 1000

bestBitrate:

  • 类型:数字类型
  • 描述:(可选项)最优码率 (单位:bps)
  • 默认值:600 * 1000

minBitrate:

  • 类型:数字类型
  • 描述:(可选项)最小码率 (单位:bps)
  • 默认值:400 * 1000

audioBitrate:

  • 类型:数字类型
  • 描述:(可选项)音频码率(建议设置为32000)
  • 默认值:64 * 1000

cameraFront:

  • 类型:布尔
  • 描述:(可选项)设置前置摄像头或后置摄像头
  • 默认值:true(前置摄像头)

videoResolution:

  • 类型:数字类型
  • 描述:(可选项)分辨率(仅Android有效) 取值范围:240 360 480 540 720 1080
  • 默认值:360

videoWidth:

  • 类型:数字类型
  • 描述:(可选项)分辨率宽(仅iOS专用);
  • 默认值:360

videoHeight:

  • 类型:数字类型
  • 描述:(可选项)分辨率高(仅iOS专用);
  • 默认值:640

fixedOn:

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

fixed:

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

callback(ret, err)

ret:

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

err:

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

示例代码


var demo = api.require('qupaiLive');
demo.startLive({
    x: 0,
    y: 45,
    h: 200,
    watermask : "widget://res/watermask.png",
    maxBitrate : 1500 * 1000,
    bestBitrate : 600 * 1000,
    minBitrate : 400 * 1000,
    audioBitrate : 64 * 1000,
    cameraFront : true,
    videoResolution : 360,
    videoWidth: 360,
    videoHeight: 640,
    fixedOn: api.frameName
},
function(ret, err) {
    if (!ret.status) alert(JSON.stringify(err));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

skin

美颜开关

skin(callback(ret, err))

示例代码

var obj = api.require('qupaiLive');
obj.skin(function(ret, err) {
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

flash

闪光灯开关

flash(callback(ret, err))

示例代码

var obj = api.require('qupaiLive');
obj.flash(function(ret, err) {
    alert(JSON.stringify(ret));
});

可用性

仅iOS系统

可提供的1.0.0及更高版本

camera

切换摄像头

camera(callback(ret, err))

示例代码

var obj = api.require('qupaiLive');
obj.camera(function(ret, err) {
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

disconnect

断开直播链接

disconnect(callback(ret, err))

示例代码

var obj = api.require('qupaiLive');
obj.disconnect(function(ret, err) {
    alert(JSON.stringify(ret));
});

可用性

仅iOS系统

可提供的1.0.0及更高版本

stop

关闭直播

stop(callback(ret, err))

示例代码

var obj = api.require('qupaiLive');
obj.stop(function(ret, err) {
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本