swan.chooseVideo

解释: 拍摄视频或从手机相册中选视频,返回视频的临时文件路径。
解释: Web 态说明:由于浏览器限制,Web 态不支持图片压缩,而且仅能默认拉起后置摄像头,详见参数说明。

方法参数

Object object

object 参数说明

属性名类型必填默认值说明最低版本Web 态说明

sourceType

Array.<string>

[‘album’, ‘camera’]

album 从相册选择视频,camera 使用相机,默认二者都有

--

compressed

Boolean

true

是否压缩所选的视频源文件,默认值为 true,需要压缩

-

Web 态不支持

maxDuration

Number

60

拍摄视频最长拍摄时间,(单位:s)。最长支持 60 秒

--

camera

String

‘back’

默认拉起的是前置或者后置摄像头。部分 Android 手机下由于系统 ROM 不支持无法生效

3.120.1

Web 态始终默认拉起后置摄像头

success

Function

接口调用成功,返回视频文件的临时文件路径,详见返回参数说明

--

fail

Function

接口调用失败的回调函数

--

complete

Function

接口调用结束的回调函数(调用成功、失败都会执行)

--

camera 参数说明

参数名参数类型说明

back

String

默认拉起后置摄像头

front

String

默认拉起前置摄像头

success 返回参数说明

参数参数类型说明

tempFilePath

String

选定视频的临时文件路径

duration

Number

选定视频的时间长度 (单位:s)

size

Number

选定视频的数据量大小(单位:B)

height

Number

返回选定视频的长

width

Number

返回选定视频的宽

示例

跳转编辑工具

在开发者工具中打开

在 WEB IDE 中打开

扫码体验

代码示例

百度智能小程序

请使用百度APP扫码

图片示例

swan.chooseVideo - 图2

代码示例

  • SWAN
  • JS
  1. <view class="wrap">
  2. <view class="card-area">
  3. <view class="display-area">
  4. <video class="video" s-if="videoSrc" src="{{videoSrc}}" controls="true" binderror="videoError"></video>
  5. <view s-else>视频显示区</view>
  6. </view>
  7. <view class="middle-area border-top border-bottom">
  8. <view class="list-area border-bottom" hover-class="option-active">
  9. <picker mode="selector" value="{{sourceIndex}}" range="{{sourceArray}}" bind:change="sourceChange">
  10. <text class="list-item-key-4">视频来源</text>
  11. <view class="list-item-value">{{sourceArray[sourceIndex]}}</view>
  12. </picker>
  13. </view>
  14. <view class="list-area border-bottom" hover-class="option-active">
  15. <picker mode="selector" value="{{compressIndex}}" range="{{compressArray}}" bind:change="compressChange">
  16. <text class="list-item-key-4">视频质量</text>
  17. <view class="list-item-value">{{compressArray[compressIndex]}}</view>
  18. </picker>
  19. </view>
  20. <view class="list-area border-bottom" hover-class="option-active">
  21. <picker mode="selector" value="{{cameraIndex}}" range="{{cameraArray}}" bind:change="cameraChange">
  22. <text class="list-item-key-4">默认摄像头</text>
  23. <view class="list-item-value">{{cameraArray[cameraIndex]}}</view>
  24. </picker>
  25. </view>
  26. <view class="list-area border-bottom" hover-class="option-active">
  27. <picker mode="selector" value="{{countIndex}}" range="{{countArray}}" bind:change="countChange">
  28. <text class="list-item-key-4">拍摄长度</text>
  29. <view class="list-item-value">{{countArray[countIndex]}}</view>
  30. </picker>
  31. </view>
  32. </view>
  33. <view class="button-area">
  34. <button class="btn" type="primary" bindtap="selectVideo">添加视频</button>
  35. <button class="btn" type="default" bindtap="clearVideo">清空视频</button>
  36. </view>
  37. </view>
  38. </view>

Bug & Tip

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

错误码

Android

错误码说明

201

解析失败,请检查调起协议是否合法

1002

用户取消操作

iOS

错误码说明

202

解析失败,请检查参数是否正确

1002

用户取消操作

1004

小程序文件目录为空