chooseVideo
解释: 拍摄视频或从手机相册中选视频,返回视频的临时文件路径。
参数: Object
Object参数说明:
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
sourceType | Array. | 否 | album 从相册选择视频,camera 使用相机,默认二者都有。 |
compressed | Boolean | 否 | 是否压缩所选的视频源文件,默认值为true,需要压缩。 |
maxDuration | Number | 否 | 拍摄视频最长拍摄时间,(单位:s)。最长支持 60 秒。 |
success | Function | 是 | 接口调用成功,返回视频文件的临时文件路径,详见返回参数说明。 |
fail | Function | 否 | 接口调用失败的回调函数 |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
success返回参数说明:
参数 | 说明 |
---|---|
tempFilePath | 选定视频的临时文件路径 |
duration | 选定视频的时间长度 (单位:s) |
size | 选定视频的数据量大小(单位:B) |
height | 返回选定视频的长 |
width | 返回选定视频的宽 |
说明:文件的临时路径,在智能小程序本次启动期间可以正常使用,如需持久保存,需在主动调用 swan.saveFile,在智能小程序下次启动时才能访问得到。
示例:在开发者工具中预览效果
- <button bind:tap="chooseVideo" type="primary">点击选择视频</button>
<video src="{{src}}" controls></video>
- Page({
data: {
sourceType: ['album', 'camera'],
compressed: false,
maxDuration: 60,
src: ''
},
chooseVideo() {
let self = this;
swan.chooseVideo({
sourceType: this.getData('sourceType'),
compressed: this.getData('compressed'),
maxDuration: this.getData('maxDuration'),
success: function (res) {
// 成功返回选定视频的临时文件路径
self.setData('src', res.tempFilePath);
},
fail: function (err) {
console.log('错误码:' + err.errCode);
console.log('错误信息:' + err.errMsg);
}
});
}
});