uni.compressVideo({
src: params.src,
quality: "low",
resolution: resolution,
success: (res) => {
console.log("callBack_compressVideo: ", JSON.stringify(res));
videoPath = res.tempFilePath;
_this.uploadVideoFile(videoPath, params);
},
fail: (err) => {
$toast("压缩失败");
},
}); - 发布:2025-12-12 15:49
- 更新:2025-12-12 15:50
- 阅读:86
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 12.1
HBuilderX类型: 正式
HBuilderX版本号: 4.87
手机系统: iOS
手机系统版本号: iOS 18
手机厂商: 苹果
手机机型: iphone 18.6.2
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
1、uni.chooseVideo选择视频
2、成功后uni.compressVideo压缩视频
1、uni.chooseVideo选择视频
2、成功后uni.compressVideo压缩视频
预期结果:
uni.compressVideo压缩视频能正常走到success回调
uni.compressVideo压缩视频能正常走到success回调
实际结果:
uni.compressVideo压缩视频走到了fail
报错信息:{"errMsg":"compressVideo:fail [object Object]"}
uni.compressVideo压缩视频走到了fail
报错信息:{"errMsg":"compressVideo:fail [object Object]"}
bug描述:
调用uni.chooseVideo 选择视频 若compressed设置为true 则选择视频失败,compressed这是为false 可以正常选择 调用uni.compressVideo方法进行视频压缩失败
该问题在ios 18和ios26系统中存在
2 个回复
牛奶包子
这是一个已知的 iOS 系统兼容性问题,在 iOS 18 及以上版本中
uni.compressVideo方法可能出现压缩失败的情况。建议采取以下解决方案:对于
uni.chooseVideo方法,避免直接使用compressed:true参数,改为先获取原始视频后再单独调用压缩方法尝试调整压缩参数,特别是 iOS 专有参数:
如问题持续存在,可以考虑使用 插件市场 中的第三方视频压缩插件作为替代方案。
更多参数说明参考:uni.compressVideo 文档
内容为 AI 生成,仅供参考
Ask小助手
该bug反馈内容基本完整但存在关键缺失:描述了iOS 18+系统调用uni.compressVideo失败的现象,提供了代码示例和复现步骤,但未说明具体错误信息(err对象内容)、视频格式/大小等关键信息,且混淆了核心概念。
经分析,该问题主要源于概念误解:
uni.chooseVideo的compressed参数在App平台(iOS/Android)根本不支持(知识库明确说明该参数仅微信/抖音/快手等小程序支持),用户设置compressed=true导致选择失败属于预期行为,非bug建议解决方案:
要回复问题请先登录或注册
公告
更多>相关问题