qq.saveVideoToPhotosAlbum

qq.saveVideoToPhotosAlbum(Object object)

调用前需要 用户授权 scope.writePhotosAlbum

保存视频到系统相册

参数

Object object
属性类型默认值必填说明
filePathstring视频文件路径,可以是临时文件路径也可以是永久文件路径
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

  1. qq.saveVideoToPhotosAlbum({
  2. filePath: 'qqfile://xxx',
  3. success(res) {
  4. console.log(res.errMsg)
  5. }
  6. })

qq.createVideoContext

VideoContext qq.createVideoContext(string id, Object this)

创建 video 上下文 VideoContext 对象。

参数

string id

<video> 组件的 id

Object this

在自定义组件下,当前组件实例的this,以操作组件内 <video> 组件

返回值

VideoContext

qq.chooseVideo

qq.chooseVideo(Object object)

拍摄视频或从手机相册中选视频。

参数

Object object
属性类型默认值必填说明最低版本
sourceTypeArray.<string>['album', 'camera']视频选择的来源
compressedbooleantrue是否压缩所选择的视频文件
maxDurationnumber60拍摄视频最长拍摄时间,单位秒
camerastring'back'默认拉起的是前置或者后置摄像头。部分 Android 手机下由于系统 ROM 不支持无法生效
successfunction接口调用成功的回调函数
failfunction接口调用失败的回调函数
completefunction接口调用结束的回调函数(调用成功、失败都会执行)

object.sourceType 的合法值

说明
album从相册选择视频
camera使用相机拍摄视频

object.camera 的合法值

说明
back默认拉起后置摄像头
front默认拉起前置摄像头
object.success 回调函数

参数

Object res

属性类型说明
tempFilePathstring选定视频的临时文件路径
durationnumber选定视频的时间长度
sizenumber选定视频的数据量大小
heightnumber返回选定视频的高度
widthnumber返回选定视频的宽度

示例代码

  1. qq.chooseVideo({
  2. sourceType: ['album', 'camera'],
  3. maxDuration: 60,
  4. camera: 'back',
  5. success(res) {
  6. console.log(res.tempFilePath)
  7. }
  8. })

VideoContext

VideoContext 实例,可通过 qq.createVideoContext 获取。

videoContext 通过 id 跟一个 <video> 组件绑定,操作对应的 <video> 组件。

方法

VideoContext.play()

播放视频

VideoContext.pause()

暂停视频

VideoContext.stop()

停止视频

VideoContext.seek(number position)

跳转到指定位置

VideoContext.sendDanmu(Object data)

发送弹幕

VideoContext.requestFullScreen(Object object)

进入全屏

VideoContext.exitFullScreen()

退出全屏

VideoContext.showStatusBar()

显示状态栏,仅在iOS全屏下有效

VideoContext.hideStatusBar()

隐藏状态栏,仅在iOS全屏下有效

示例代码

  1. <view class="section tc">
  2. <video
  3. id="myVideo"
  4. src="https://qzonestyle.gtimg.cn/qzone/qzact/act/external/qq-video/qq-video.mp4"
  5. enable-danmu
  6. danmu-btn
  7. controls
  8. ></video>
  9. <view class="btn-area">
  10. <input bindblur="bindInputBlur" />
  11. <button bindtap="bindSendDanmu">发送弹幕</button>
  12. </view>
  13. </view>
  1. function getRandomColor() {
  2. const rgb = []
  3. for (let i = 0; i < 3; ++i) {
  4. let color = Math.floor(Math.random() * 256).toString(16)
  5. color = color.length == 1 ? '0' + color : color
  6. rgb.push(color)
  7. }
  8. return '#' + rgb.join('')
  9. }
  10. Page({
  11. onReady(res) {
  12. this.videoContext = qq.createVideoContext('myVideo')
  13. },
  14. inputValue: '',
  15. bindInputBlur(e) {
  16. this.inputValue = e.detail.value
  17. },
  18. bindSendDanmu() {
  19. this.videoContext.sendDanmu({
  20. text: this.inputValue,
  21. color: getRandomColor()
  22. })
  23. }
  24. })

.exitFullScreen

VideoContext.exitFullScreen()

退出全屏

.hideStatusBar

VideoContext.hideStatusBar()

隐藏状态栏,仅在iOS全屏下有效

.pause

VideoContext.pause()

暂停视频

.play

VideoContext.play()

播放视频

.requestFullScreen

VideoContext.requestFullScreen(Object object)

进入全屏

参数

Object object
属性类型默认值必填说明最低版本
directionnumber设置全屏时视频的方向,不指定则根据宽高比自动判断。

object.direction 的合法值

说明
0正常竖向
90屏幕逆时针90度
-90屏幕顺时针90度

.seek

VideoContext.seek(number position)

跳转到指定位置

参数

number position

跳转到的位置,单位 s

.sendDanmu

VideoContext.sendDanmu(Object data)

发送弹幕

参数

Object data

弹幕内容

属性类型默认值必填说明
textstring弹幕文字
colorstring弹幕颜色

.showStatusBar

VideoContext.showStatusBar()

显示状态栏,仅在iOS全屏下有效

.stop

VideoContext.stop()

停止视频