wx.createLivePlayerContext(string id, Object this)

创建 live-player 上下文 LivePlayerContext 对象。
参数string id
组件的 id
Object this
在自定义组件下,当前组件实例的this,以操作组件内 组件
返回值
LivePlayerContext

LivePlayerContext

LivePlayerContext 实例,可通过 wx.createLivePlayerContext 获取。
livePlayerContext 通过 id 跟一个 组件绑定,操作对应的 组件。
注:暂只针对国内主体如下类目的小程序开放,需要先通过类目审核,再在小程序管理后台,「开发」-「接口设置」中自助开通该组件权限。

方法

LivePlayerContext.play()
播放
参数Object object

LivePlayerContext.stop()
停止
参数Object object

LivePlayerContext.mute()
静音
参数Object object

LivePlayerContext.pause()
暂停
参数Object object

LivePlayerContext.resume()
恢复
参数Object object

LivePlayerContext.requestFullScreen(Object object)
进入全屏
参数Object object

object.direction 的合法值

LivePlayerContext.exitFullScreen()
退出全屏
参数Object object

示例代码

index.wxml

<!-- 暂只针对国内主体如下类目的小程序开放,需要先通过类目审核,再在小程序管理后台,「开发」-「接口设置」中自助开通该组件权限。 -->
<view class="page-body"><view class="page-section tc"><live-player id="player" src="https://domain/pull_stream" mode="RTC" autoplay bindstatechange="statechange" binderror="error" /><view class="btn-area"><button bindtap="bindPlay" class="page-body-button" type="primary">播放</button><button bindtap="bindPause" class="page-body-button" type="primary">暂停</button><button bindtap="bindStop" class="page-body-button" type="primary">停止</button><button bindtap="bindResume" class="page-body-button" type="primary">恢复</button><button bindtap="bindMute" class="page-body-button" type="primary">静音</button></view></view>
</view>

index.wxss

.page-body-button {margin-bottom: 30rpx;
}live-player {width: 100%;height: 225px;
}

index.js

Page({onReady(res) {this.ctx = wx.createLivePlayerContext('player')},statechange(e) {console.log('live-player code:', e.detail.code)},error(e) {console.error('live-player error:', e.detail.errMsg)},bindPlay() {this.ctx.play({success: res => {console.log('play success')},fail: res => {console.log('play fail')}})},bindPause() {this.ctx.pause({success: res => {console.log('pause success')},fail: res => {console.log('pause fail')}})},bindStop() {this.ctx.stop({success: res => {console.log('stop success')},fail: res => {console.log('stop fail')}})},bindResume() {this.ctx.resume({success: res => {console.log('resume success')},fail: res => {console.log('resume fail')}})},bindMute() {this.ctx.mute({success: res => {console.log('mute success')},fail: res => {console.log('mute fail')}})}
})

wx.createLivePusherContext()

创建 live-pusher 上下文 LivePusherContext 对象。
返回值
LivePusherContext

###LivePusherContext
LivePusherContext 实例,可通过 wx.createLivePusherContext 获取。
livePusherContext 与页面内唯一的 组件绑定,操作对应的 组件。

方法

LivePusherContext.start()

播放推流
参数Object object

LivePusherContext.stop()

停止推流
参数Object object

LivePusherContext.pause()

暂停推流
参数Object object

LivePusherContext.resume()

恢复推流
参数Object object

LivePusherContext.switchCamera()

切换前后摄像头
参数Object object

LivePusherContext.snapshot()

快照
参数Object object

LivePusherContext.toggleTorch()

切换
参数Object object

LivePusherContext.playBGM(Object object)

播放背景音
参数Object object

LivePusherContext.stopBGM()

停止背景音
参数Object object

LivePusherContext.pauseBGM()

暂停背景音
参数Object object

LivePusherContext.resumeBGM()

恢复背景音
参数Object object

LivePusherContext.setBGMVolume(Object object)

设置背景音音量
参数Object object

示例代码
index.wxml

<view class="page-body"><view class="page-section tc"><live-pusher id="pusher" url="https://domain/push_stream" mode="RTC" autopush bindstatechange="statechange" /><view class="btn-area"><button bindtap="bindStart" class="page-body-button" type="primary">播放推流</button><button bindtap="bindPause" class="page-body-button" type="primary">暂停推流</button><button bindtap="bindStop" class="page-body-button" type="primary">停止推流</button><button bindtap="bindResume" class="page-body-button" type="primary">恢复推流</button><button bindtap="bindSwitchCamera" class="page-body-button" type="primary">切换前后摄像头</button></view></view>
</view>

index.wxss

.page-body-button {margin-bottom: 30rpx;
}live-pusher {margin: 0 auto;width: 300px;height: 225px;
}

index.js

Page({onReady(res) {this.ctx = wx.createLivePusherContext('pusher')},statechange(e) {console.log('live-pusher code:', e.detail.code)},bindStart() {this.ctx.start({success: res => {console.log('start success')},fail: res => {console.log('start fail')}})},bindPause() {this.ctx.pause({success: res => {console.log('pause success')},fail: res => {console.log('pause fail')}})},bindStop() {this.ctx.stop({success: res => {console.log('stop success')},fail: res => {console.log('stop fail')}})},bindResume() {this.ctx.resume({success: res => {console.log('resume success')},fail: res => {console.log('resume fail')}})},bindSwitchCamera() {this.ctx.switchCamera({success: res => {console.log('switchCamera success')},fail: res => {console.log('switchCamera fail')}})}
})

小程序开发API之实时音视频相关推荐

  1. 浅析即时通讯音视频开发多人实时音视频聊天架构

    移动互联网发展迅猛,目前实时音视频技术已被广泛地应用在了实时在线教育.智能家居.在线直播.安防监控等领域.这之中,诸如多人视频会议.在线实时视频教育等场景,跟传统的一对一实时音视频聊天,在技术架构的实 ...

  2. 微信小程序开发 | API应用案例(下)

    API应用案例(下) 6.1[案例5]模拟时钟 6.1.1 案例分析 6.1.2 前导知识 6.1.3 钟表页面布局 6.1.4 钟表页面绘制 6.2[案例6]罗盘动画 6.2.1 案例分析 6.2. ...

  3. 微信小程序开发 | API应用案例(上)

    API应用案例(上) 5.1[案例1]用户登录 5.1.1 案例分析 5.1.2 前导知识 5.1.3 搭建开发者服务器 5.1.4 实现用户登录 5.1.5 检查用户是否已经登录 5.1.6 获取用 ...

  4. 微信小程序开发聊天室——实时聊天,支持图片预览

    第一次写小程序,老板就让我用websoket写个聊天对话,群聊这种.第一次写聊天功能,第一次用websoket,第一次用小程序,这是在考验我吗?不过我还是研究了一下,终于实现了. 首先看一下界面,界面 ...

  5. 小程序开发API之改变置顶栏文字内容 wx.setTopBarText(已停,只有旧版微信有效)

    效果展示: wx.setTopBarText(Object object) 动态设置置顶栏文字内容.只有当前小程序被置顶时能生效,如果当前小程序没有被置顶,也能调用成功,但是不会立即生效,只有在用户将 ...

  6. 小程序开发API之数据上报、数据分析

    数据上报 wx.reportMonitor(string name, number value) 自定义业务数据监控上报接口. 参数 string name 监控ID,在「小程序管理后台」新建数据指标 ...

  7. java集成开发sdk_Android Java实时音视频SDK集成指引 - 开发者中心 - ZEGO即构科技

    集成 更新时间:2021-02-22 17:48 1 准备环境 在开始集成 ZEGO Express SDK 前,请确保开发环境满足以下要求: Android Studio 2.1 或以上版本. An ...

  8. 微信小程序开发API

    微信小程序的内置API 本文内介绍的只是其中一部分,更多请参考官方文档 地址 界面API 交互 wx.showToast(Object object) 显示消息提示框 属性: title属性==> ...

  9. 小程序开发之组件video(视频)

    video 视频.该组件是原生组件,使用时请注意相关限制. 默认宽度300px.高度225px,可通过wxss设置宽高. 例如: 效果展示 代码 index.wxml <!-- src 要播放视 ...

最新文章

  1. codefores 786B. Legacy(最短路,线段树优化拆点,好题)
  2. android开发常用的设计模式,android开发设计模式之——单例模式详解
  3. 整理find命令输出格式
  4. 转:一个PHP实现的ID生成器
  5. Keycloak SSO集成到jBPM和Drools Workbench中
  6. UNION ALL vs UNION
  7. 配置nginx,Tomcat日志记录请求耗时
  8. ABAP--动态创建类型和变量的使用程序样例
  9. typedef用法详解
  10. 学习笔记20--自动驾驶测试体系
  11. 数据结构算法—非递归算法求二叉树的叶子结点(C语言)
  12. 微信公众号(服务号、订阅号、企业号)的区别
  13. 【jQWidgets】API 笔记
  14. 如何进行SPSS的重复测量方差分析
  15. 该怎么说,爱到最后成了路人甲,陌路天涯
  16. 排障集锦:九九八十一难之第十八难!-----System has not been booted with systemd as init system (PID 1). Can‘t operat
  17. Beyond乐队20年 细数唱片12个“最”
  18. 语言分类强弱类型语言
  19. python之xlrd
  20. 国外导师对博士后申请简历的几点建议

热门文章

  1. 基于单片机的二维高精度液晶显示电子指南针
  2. Android NFC之仿真卡模式
  3. Windows系统下彻底删除打印机驱动的方法
  4. 行政和IT人员都需要一个固定资产管理系统
  5. Word公式显示错误
  6. 你需要知道的系统还原软件选用指南
  7. POJ 1300 Door Man(欧拉回路判定)
  8. 理解 JVM 如何使用 Windows 和 Linux 上的本机内存
  9. 企业数据安全治理最佳实践案例汇总
  10. Nginx八(CPU亲缘性配置)