在ios环境下部分设备会出现上传相册视频时分离音频报错,但是通过微信对话获取视频然后分离可以成功,或直接进行拍摄上传也可以音视频分离成功。
let mc = uni.createMediaContainer();
mc.extractDataSource({
source: url,
success: (res) => {
console.log(res)
mc.addTrack(res.tracks[0]); // 将视频轨道加入到待合成容器中
// 导出合成容器中的音频
mc.export({
success: (res) => {
console.log("🚀 ~export res:", res)
// 拿到导出之后的音频
if (res.duration < 6000 || res.duration > 600000) {
uni.hideLoading();
_this.mask = false;
uni.showModal({
title: '提示',
content: '上传视频长度不可小于6秒或大于10分钟',
showCancel: false
});
} else {
_this.upLoadMusic(res.tempFilePath);
}
mc.destroy();
},
fail: (res) => {
console.log("🚀 ~fail res:", res)
uni.hideLoading();
_this.mask = false;
mc.destroy();
}
});
},
fail: (res) => {
console.log("🚀 ~extractDataSource res:", res)
}
});

微信版本8.0.68 ,ios版本 26.2