codecamp

支付宝小程序API 视频播放

my.createVideoContext

简介

my.createVideoContext 是传入 video id,返回一个 videoContext 上下文的 API。video id 为开发者在对应 video 标签中自由命名的 ID 属性。

通过 videoContext 可以操作一个 video 组件。

使用限制

基础库 1.10.0 或更高版本;支付宝客户端 10.1.32 或更高版本,若版本较低,建议采取 兼容处理

扫码体验

扫码12345.png

效果示例

123.png

示例代码

开发者在 .axml 文件中写入如下代码,命名 video id。video id 为开发者在对应 video 标签中自由命名的 ID 属性,例如下方代码中的 myVideo 。

<view>


<!-- onPlay 的类型是 EventHandle。为当开始/继续播放时触发 play 事件。 -->
  <video id="myVideo" src="{{src}}" onPlay="{{onPlay}}" enableNative="{{true}}"></video>
   <button type="default" size="defaultSize" onTap="play"> Play </button>
   <button type="default" size="defaultSize" onTap="pause"> Pause </button>
   <button type="default" size="defaultSize" onTap="stop"> stop </button>
   <button type="default" size="defaultSize" onTap="seek"> seek </button>
   <button type="default" size="defaultSize" onTap="requestFullScreen"> requestFullScreen </button>
   <button type="default" size="defaultSize" onTap="exitFullScreen"> exitFullScreen </button>
   <button type="default" size="defaultSize" onTap="mute"> mute </button>
   <button type="default" size="defaultSize" onTap="playbackRate"> playbackRate </button>
</view>

开发者在 .js 文件中写入如下代码:

Page({
  data: {


  // src 为要播放的视频资源地址,支持优酷视频编码(支付宝客户端 10.1.75)。src 支持的协议如下:vid/showId: XMzg2Mzc5MzMwMA== apFilePath: https://resource/xxx.video。
    src: "XNDM0OTQzMDc2OA==",
  },
  onLoad() {
    this.videoContext = my.createVideoContext('myVideo');
  },


  play() {
    this.videoContext.play();
  },


  pause() {
    this.videoContext.pause();
  },

  
  stop() {
    this.videoContext.stop();
  },

  
  seek() {
    this.videoContext.seek(100);
  },

  
  requestFullScreen() {
    this.videoContext.requestFullScreen({
      direction: 0
    });
  },

  
  exitFullScreen() {
    this.videoContext.exitFullScreen();
  },

  
  mute() {
    this.videoContext.mute(false);
  },

  
  playbackRate() {
    this.videoContext.playbackRate(1.5);
  },

  
});
videoContext 方法列表

方法 参数 类型 描述
play - 播放。
pause - 暂停。
stop - 停止。
seek position Number 跳转到指定位置,单位为秒(s)。
requestFullScreen direction Number 进入全屏。0 为正常竖屏。90 为横屏。-90 为反向横屏。
exitFullScreen - 退出全屏。
showStatusBar - 显示状态栏,仅在 iOS 全屏下有效。
hideStatusBar - 隐藏状态栏,仅在 iOS 全屏下有效。
mute ison Boolean 切换静音状态。
playbackRate rate Number 设置倍速播放 (0.5 <= rate <= 2.0)。

错误码

错误码 描述 解决方案
1 未知错误。 -
400 读 ups 信息超时。 检查读 ups 信息。
1002 播放器内部错误。 检查播放器内部。
1005 网络连接失败。 检查网络连接。
1006 数据源错误。 检查数据源。
1007 播放器准备失败。 检查播放器。
1008 网络错误。 检查网络。
1009 搜索视频出错(源出错的一种)。 检查源。
1010 准备超时,也可认为是网络太慢或数据源太慢导致的播放失败。 检查是否因网络或数据原因导致的超时错误。
1023 播放中内部错误(FFmpeg 内错误)。 检查 FFmpeg。
2004 播放过程中加载时间超时。 检查并重试。
3001 audio 渲染出错。 检查 audio 渲染。
3002 硬解码错误。 检查硬解码。

支持格式

支持的视频封装格式

iOS、Android 支持以下视频封装格式: MP4、mov、m4v、3gp、m3u8、flv 。

支持的编码格式

iOS、Android 支持以下编码格式: H.264、AAC。

支付宝小程序API 图片
支付宝小程序API音频播放
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

支付宝小程序开发文档

支付宝小程序 快速示例

支付宝小程序 小程序快速示例

支付宝小程序 框架

支付宝小程序 组件

支付宝小程序组件 基础组件

支付宝小程序组件 无障碍访问

支付宝小程序 扩展组件

支付宝小程序扩展组件 UI组件

支付宝小程序 API

支付宝小程序 开发工具

支付宝小程序 云服务

支付宝小程序 Serverless

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }