属性名 类型 默认值 说明
src String
 
要播放视频的资源地址
controls Boolean true 是否显示默认播放控件(播放/暂停按钮、播放进度、时间)
danmu-list Object Array
 
弹幕列表
danmu-btn Boolean false 是否显示弹幕按钮,只在初始化时有效,不能动态变更
enable-danmu Boolean false 是否展示弹幕,只在初始化时有效,不能动态变更
autoplay Boolean false 是否自动播放
bindplay EventHandle
 
当开始/继续播放时触发play事件
bindpause EventHandle
 
当暂停播放时触发 pause 事件
bindended EventHandle
 
当播放到末尾时触发 ended 事件
binderror EventHandle
 
当发生错误时触发error事件,event.detail = {errMsg: 'something wrong'}

先写个代码。

/* ---示例代码----*/
 
<view>
  <video id="myVideo" src="{{src}}" binderror="videoErrorCallback" danmu-list="{{danmuList}}" enable-danmu danmu-btn controls></video>
  <view>
    <button bindtap="bindSendDanmu">发送弹幕</button>
  </view>
</view>
 
/* ---示例代码----*/
/* ---示例代码----*/
 
Page({
  data:{
    danmuList:[
      {text: '第 1s 出现的弹幕',color: 'red',time: 1},
      {text: '第 3s 出现的弹幕',color: '#000',time: 3}
    ]
  },
  onReady:function(){
    this.videoContext = wx.createVideoContext('myVideo');
  },
  videoErrorCallback:function(e){
      console.log('视频错误信息:'+e.detail.errMsg)
 
  },
  bindSendDanmu:function(){
    this.videoContext.sendDanmu({
      text: '测试弹幕',
      color: 'blue'
    })
  }
})
 
/* ---示例代码----*/

这里把微信api分开写了 比较好理解。其实那些事件和audio的一样。。video只不过在属性上增加了弹幕功能。

之后看一下获取视频的 api 
wx.chooseVideo(OBJECT)

拍摄视频或从手机相册中选视频,返回视频的临时文件路径。

OBJECT参数说明:

参数 类型 必填 说明
sourceType StringArray album 从相册选视频,camera 使用相机拍摄,默认为:['album', 'camera']
maxDuration Number 拍摄视频最长拍摄时间,单位秒。最长支持60秒
camera StringArray 前置或者后置摄像头,默认为前后都有,即:['front', 'back']
success Function 接口调用成功,返回视频文件的临时文件路径,详见返回参数说明
fail Function 接口调用失败的回调函数
complete Function 接口调用结束的回调函数(调用成功、失败都会执行)

返回参数说明:

参数 说明
tempFilePath 选定视频的临时文件路径
duration 选定视频的时间长度
size 选定视频的数据量大小
height 返回选定视频的长
width 返回选定视频的宽

注:文件的临时路径,在小程序本次启动期间可以正常使用,如需持久保存,需在主动调用 wx.saveFile,在小程序下次启动时才能访问得到。

写到这里也就要告一段落了。。所有的讲解说白了也只是整理一下代码而已。总体来说的话掌握了angular2的语法和,ionic1的写法基本上

微信小程序也就不是那么难理解了。。而且越往后写越感觉没有必要了,所以上面讲解的一些,都是跟标签有关的东西,

而且剩下的代码基本上就是逻辑了上的修改和代码的运用了。剩下的代码js基础好的也能看懂了。不管说到哪里,按照api的规则和模范总不会出现问题的。。

话又说回来。。。因为写法的简便。比angular2要容易理解很多。所以新手需要掌握的 html css 数据绑定 和事件的调用。

十二:video 视频的更多相关文章

  1. Android 音视频深入 十二 FFmpeg视频替换声音(附源码下载)

    项目地址,求starhttps://github.com/979451341/AudioVideoStudyCodeTwo/tree/master/FFmpeg%E7%BB%99%E8%A7%86%E ...

  2. CG基础教程-陈惟老师十二讲笔记

    转自 麽洋TinyOcean:http://www.douban.com/people/Tinyocean/notes?start=50&type=note 因为看了陈惟十二讲视频没有课件,边 ...

  3. 桥接模式 桥梁模式 bridge 结构型 设计模式(十二)

      桥接模式Bridge   Bridge 意为桥梁,桥接模式的作用就像桥梁一样,用于把两件事物连接起来   意图 将抽象部分与他的实现部分进行分离,使得他们都可以独立的发展.  意图解析 依赖倒置原 ...

  4. 如鹏网学习笔记(十二)HTML5

    一.HTML5简介 HTML5是HTML语言第五次修改产生的新的HTML语言版本 改进主要包括: 增加新的HTML标签或者属性.新的CSS样式属性.新的JavaScript API等.同时删除了一些过 ...

  5. How Javascript works (Javascript工作原理) (十二) 网络层探秘及如何提高其性能和安全性

    个人总结:阅读完这篇文章需要20分钟,这篇文章主要讲解了现代浏览器在网络层传输所用到的一些技术, 应当对 window.performance.timing 这个API所有了解. 这是 JavaScr ...

  6. WCF技术剖析之十二:数据契约(Data Contract)和数据契约序列化器(DataContractSerializer)

    原文:WCF技术剖析之十二:数据契约(Data Contract)和数据契约序列化器(DataContractSerializer) [爱心链接:拯救一个25岁身患急性白血病的女孩[内有苏州电视台经济 ...

  7. Citrix 服务器虚拟化之三十二 XenConvert

    Citrix 服务器虚拟化之三十二  XenConvert 简介: Citrix XenConvert 是用于实现物理到虚拟(P2V)转换的工具,可将工作负载从运行 Windows 的服务器或桌面计算 ...

  8. VMware vSphere 服务器虚拟化之二十二桌面虚拟化之创建View Composer链接克隆的虚拟桌面池

    VMware vSphere 服务器虚拟化之二十二桌面虚拟化之创建View Composer链接克隆的虚拟桌面池 在上一节我们创建了完整克隆的自动专有桌面池,在创建过程比较缓慢,这次我们将学习创建Vi ...

  9. JavaScript DOM编程艺术-学习笔记(第十二章)

    第十二章 1.本章是综合前面章节的所有东西的,一个综合实例 2.流程:①项目简介:a.获取原始资料(包括文本.图片.音视频等) b.站点结构(文件目录结构) c.页面(文件)结构 ②设计(切图) ③c ...

  10. 《Django By Example》第十二章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:第十二章,全书最后一章,终于到这章 ...

随机推荐

  1. c#进阶之lambda表达式

    阅读之前,先确保对委托有基本的了解,传送门 c#进阶之浅析委托和事件. lambda表达式雏形第一步 在委托那篇文章,绑定的的方法都是具名函数,为了简化书写,可以换成匿名函数 public deleg ...

  2. IIS发布好的网页突然不显示图片了

    按以下步骤把地址加到ie的本地intranet就好了

  3. LOJ#6038. 「雅礼集训 2017 Day5」远行(LCT)

    题面 传送门 题解 要不是因为数组版的\(LCT\)跑得实在太慢我至于去学指针版的么--而且指针版的完全看不懂啊-- 首先有两个结论 1.与一个点距离最大的点为任意一条直径的两个端点之一 2.两棵树之 ...

  4. [Objective-C语言教程]继承(25)

    面向对象编程中最重要的概念之一是继承.继承允许根据一个类定义另一个类,这样可以更容易地创建和维护一个应用程序. 这也提供了重用代码功能和快速实现时间的机会. 在创建类时,程序员可以指定新类应该继承现有 ...

  5. SpringBoot整合MyBatis及Thymeleaf

    http://www.cnblogs.com/ludashi/archive/2017/05/08/6669133.html 上篇博客我们聊了<JavaEE开发之SpringBoot工程的创建. ...

  6. commonjs, nodejs, npm, browserify, watchify

    CommonJS CommonJS是一套规范,定义了javascript API.其中为了解决javascript模块化的问题,引入require和export NodeJS nodeJS是服务器端j ...

  7. 嵌入式C语言自我修养 05:零长度数组

    5.1 什么是零长度数组 顾名思义,零长度数组就是长度为0的数组. ANSI C 标准规定:定义一个数组时,数组的长度必须是一个常数,即数组的长度在编译的时候是确定的.在ANSI C 中定义一个数组的 ...

  8. ES6之新增const命令使用方法

    hi,我又回来了,今天学习一下const命令. 声明一个常量 const声明一个只读常量,一旦声明,常量的值便不可改变. 例子如下: const food = 12; food = 23; // Un ...

  9. (Lua) C++ 加入 Lua 環境擴充應用強度

    Lua 在網上有非常多的介紹,就是一個小而巧的語言,可以放入嵌入式系統 也可以在一般的應用上非常強大,這邊主要記錄如何讓Lua加入C++裡頭應用 Lua source code 是以 C 語言下去編寫 ...

  10. 02-url路由分配及模板渲染方式

    本章主要内容 1.url基本概念及格式 2.path和re_path 3.模板路径配置 4.模板渲染方式 1.url基本概念及格式 URL(uniform Resoure Locator)统一资源定位 ...