uni.chooseVideo({
mediaType: ['video'],
sourceType: ['album'],
compressed:true, // 视频压缩-开启
success: function(res) {
console.log(res,'chooseVideo');
uni.showLoading({
title: '视频上传中',
mask: true
});
let kbsize=res.size;
uni.uploadFile({
url:
api.imageUpload +
'?biz=video_' +
self.mydate,
filePath: res.tempFilePath,
name: 'file',
header: {
'X-Access-Token': uni.getStorageSync(
'token'
)
},
success: res => {
console.log(res,'uploadFile');
console.log(kbsize,'kbsize');
setTimeout(() =>{
uni.hideLoading();
}, 3000);
if (JSON.parse(res.data).success) {
if(kbsize<502400){
self.msgType = 'error';
self.messageText = `当前视频可能压缩损坏,建议长按删除视频重新上传!`;
self.$refs.message.open();
}
if (i == 'videosrc') {
self.videosrc = JSON.parse(
res.data
).message;
self.videoname =
self.picServer +
JSON.parse(res.data).message;
} else {
self.videosrc1 = JSON.parse(
res.data
).message;
self.videoname1 =
self.picServer +
JSON.parse(res.data).message;
}
console.log(
self.videosrc,
'self.videosrc'
);
console.log(
self.videosrc1,
self.videoname1,
'self.videosrc1'
);
} else {
uni.showToast({
title: `视频上传失败,请重新上传!`,
duration: 2000,
icon: 'none'
});
}
},
fail: () => {
uni.hideLoading();
uni.showToast({
title: `视频上传失败,请重新上传!`,
duration: 2000,
icon: 'none'
});
},
complete: () => {
}
});
},
fail: function(err) {
uni.hideLoading();
this.msgType = 'error';
this.messageText = err;
this.$refs.message.open();
}
});

- 发布:2023-05-24 16:39
- 更新:2023-06-08 16:10
- 阅读:374
产品分类: uniapp/小程序/微信
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: windows10
HBuilderX类型: 正式
HBuilderX版本号: 3.7.3
第三方开发者工具版本号: 2.32.0
基础库版本号: 3.7.3
项目创建方式: HBuilderX
示例代码:
操作步骤:
1.点击上传视频
2.上传视频调用uni.chooseVideo方法,启用压缩
3.上传视频(在附件中的视频,视频只会显示几帧)
1.点击上传视频
2.上传视频调用uni.chooseVideo方法,启用压缩
3.上传视频(在附件中的视频,视频只会显示几帧)
预期结果:
上传视频成功都能看
上传视频成功都能看
实际结果:
视频有声音只能看到几帧画面就不动了
视频有声音只能看到几帧画面就不动了
bug描述:
uni.chooseVideo选择视频后微信小程序发布,视频损坏播放不了,压缩损坏的视频,有声音但画面只显示几帧,不压缩视频过大无法上传;测试都正常,这种情况是随机的 有些视频压缩可以 有些不可以,有问题的视频一直压缩损坏,但如果对问题视频发送到微信重新下载,再次压缩就可以(视频来源:马克相机)
1 个回复
DCloud_UNI_GSQ
到微信小程序社区反馈一下。