我想验证用户上传的文件。所以我可以知道它是否是有效的 mp4 或任何音频类型。
我正在尝试做类似的事情。
ffmpeg -v error -i file.mp4 -f null - > error.log
当我运行时
await ffmpeg.run(`-v error -sseof -60 -i ${file.name} -f null - > result.text`);
它显示错误[fferr] Unrecognized option 'v error -sseof -60 -i vidoe.mp4 -f null - > result.txt'.
什么是正确的方法?
最佳答案
最后,我找到了解决方案。
初始化时createFFmpeg
, 有一个属性 logger
这需要回调函数来获取日志消息。
const logger = new EventTarget();
createFFmpeg
const ffmpeg = createFFmpeg({
log: true,
logger: (l) => {
logger.dispatchEvent(new CustomEvent("log", { detail: l }));
},
});
await ffmpeg.load();
let logs = [];
let log_func = (e)=>{
logs.push({ type: e.detail.type, msg: e.detail.message });
};
logger.addEventListener("log", log_func);
ffmpeg.FS("writeFile", file.name, await fetchFile(file));
await ffmpeg.run("-v","error","-sseof","-60","-i",file.name,"-f","null","-");
console.log(logs);
logger.removeEventListener("log", log_func);
所有日志存储在 logs
大批
关于javascript - 如何使用 FFmpeg.wasm 验证视频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69059452/