title: Taro.compressVideo(option)
sidebar_label: compressVideo
压缩视频接口。
开发者可指定压缩质量 quality 进行压缩。当需要更精细的控制时,可指定 bitrate、fps、和 resolution,当 quality 传入时,这三个参数将被忽略。原视频的相关信息可通过 getVideoInfo 获取。
支持情况:
.default})
参考文档
类型
(option: Option) => Promise<SuccessCallbackResult>
参数
Option
| 参数 |
类型 |
必填 |
说明 |
| src |
string |
是 |
视频文件路径,可以是临时文件路径也可以是永久文件路径 |
| quality |
keyof Quality |
是 |
压缩质量 |
| bitrate |
number |
是 |
码率,单位 kbps |
| fps |
number |
是 |
帧率 |
| resolution |
number |
是 |
相对于原视频的分辨率比例,取值范围(0, 1] |
| success |
(result: SuccessCallbackResult) => void |
否 |
接口调用成功的回调函数 |
| fail |
(res: TaroGeneral.CallbackResult) => void |
否 |
接口调用失败的回调函数 |
| complete |
(res: TaroGeneral.CallbackResult) => void |
否 |
接口调用结束的回调函数(调用成功、失败都会执行) |
SuccessCallbackResult
| 参数 |
类型 |
说明 |
| tempFilePath |
string |
压缩后的临时文件地址 |
| size |
number |
压缩后的大小,单位 kB |
Quality
| 参数 |
说明 |
| low |
低 |
| medium |
中 |
| high |
高 |
示例代码
Taro.chooseVideo({ sourceType: ['album', 'camera'], maxDuration: 60, camera: 'back', compressed: false, success (res) { Taro.compressVideo({ src: res.tempFilePath, quality: quality, bitrate: 1032, fps: 24, resolution:0.5, success (res) { console.log("压缩成功") }, fail (err) { console.log("压缩失败") } }) }})