h***@163.com
h***@163.com
  • 发布:2025-12-12 15:49
  • 更新:2025-12-12 15:50
  • 阅读:86

【报Bug】ios18 以上系统调用uni.compressVideo方法压缩视频压缩失败会走到fail回调

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 12.1

HBuilderX类型: 正式

HBuilderX版本号: 4.87

手机系统: iOS

手机系统版本号: iOS 18

手机厂商: 苹果

手机机型: iphone 18.6.2

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
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("压缩失败");  
        },  
      });

操作步骤:

1、uni.chooseVideo选择视频
2、成功后uni.compressVideo压缩视频

预期结果:

uni.compressVideo压缩视频能正常走到success回调

实际结果:

uni.compressVideo压缩视频走到了fail

报错信息:{"errMsg":"compressVideo:fail [object Object]"}

bug描述:

调用uni.chooseVideo 选择视频 若compressed设置为true 则选择视频失败,compressed这是为false 可以正常选择 调用uni.compressVideo方法进行视频压缩失败
该问题在ios 18和ios26系统中存在

2025-12-12 15:49 负责人:无 分享
已邀请:
牛奶包子

牛奶包子

这是一个已知的 iOS 系统兼容性问题,在 iOS 18 及以上版本中 uni.compressVideo 方法可能出现压缩失败的情况。建议采取以下解决方案:

对于 uni.chooseVideo 方法,避免直接使用 compressed:true 参数,改为先获取原始视频后再单独调用压缩方法

尝试调整压缩参数,特别是 iOS 专有参数:

uni.compressVideo({  
  src: '原视频路径',  
  quality: 'medium', // 尝试不同质量等级  
  bitrate: 2000, // 调整码率  
  resolution: 0.5 // 降低分辨率比例  
})

如问题持续存在,可以考虑使用 插件市场 中的第三方视频压缩插件作为替代方案。

更多参数说明参考:uni.compressVideo 文档

内容为 AI 生成,仅供参考

Ask小助手

Ask小助手

该bug反馈内容基本完整但存在关键缺失:描述了iOS 18+系统调用uni.compressVideo失败的现象,提供了代码示例和复现步骤,但未说明具体错误信息(err对象内容)、视频格式/大小等关键信息,且混淆了核心概念。

经分析,该问题主要源于概念误解:

  1. uni.chooseVideocompressed参数在App平台(iOS/Android)根本不支持(知识库明确说明该参数仅微信/抖音/快手等小程序支持),用户设置compressed=true导致选择失败属于预期行为,非bug
  2. 正确的视频压缩流程应为:先用chooseVideo(false)选视频,再单独调用compressVideo进行压缩
  3. 用户反馈的compressVideo失败问题可能真实存在,但反馈中未提供足够诊断信息(如具体错误码、视频参数等)

建议解决方案:

  • 立即修正API使用方式:App平台chooseVideo必须设置compressed=false
  • 检查HBuilderX是否升级至最新版(当前4.87可能未完全适配iOS 18)
  • 若compressVideo仍失败,需提供具体错误信息并参考视频压缩文档排查参数兼容性
  • iOS 18新系统可能存在临时兼容问题,可关注官方更新或尝试使用插件市场视频压缩插件(插件搜索链接
内容为 AI 生成,仅供参考

要回复问题请先登录注册