添加多条将传入的视频源分离轨道。地址提示要求string类型,确实传入了string,但是仍然报错要求string
MediaContainer.extractDataSource(Object object)
fail: (err) => {
console.log(typeof sourcefile)
console.error("extractDatasourcefile fail:", sourcefile, err);
rejectTrack(err);
},
string
{"errno": 1001, "errMsg": "createMediaContainer.extractDataSource:fail parameter error: parameter.source should be String instead of Undefined;"}
Promise.all(
videosourcefiles.map((sourcefile) => {
return new Promise((resolveTrack, rejectTrack) => {
console.log("mergeVideos - sourcefile:", sourcefile);
// 检查 sourcefile 是否有效
if (typeof sourcefile !== "string" || !sourcefile.trim()) {
rejectTrack(new Error(`无效的 sourcefile: ${sourcefile}`));
return;
}
let path = sourcefile;
mediaContainer.extractDataSource({
src: path,
success: (res) => {
console.log("extractDatasourcefile success:", sourcefile);
mediaContainer.addTrack(res.tracks[0]);
resolveTrack();
},
fail: (err) => {
console.log(typeof sourcefile)
console.error("extractDatasourcefile fail:", sourcefile, err);
rejectTrack(err);
},
});
});
})
)
.then(() => {
// 导出合成视频
mediaContainer.export({
success: (res) => {
resolve(res.tempFilePath);
},
fail: (err) => {
reject(err);
},
});
})
.catch((err) => {
reject(err);
})
.finally(() => {
// 销毁容器
mediaContainer.destroy();
});
["wxfile://tmp_8f716c33140d1d262e26ed730b1d2a1a.mp4", "wxfile://tmp_9dcebf99f224e32d92bb910b556b00fa.mp4"]
mergeVideos - sourcefile: wxfile://tmp_8f716c33140d1d262e26ed730b1d2a1a.mp4
string
extractDatasourcefile fail: wxfile://tmp_8f716c33140d1d262e26ed730b1d2a1a.mp4 {"errno": 1001, "errMsg": "createMediaContainer.extractDataSource:fail parameter error: parameter.source should be String instead of Undefined;"}
你好,麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)
solve