问题描述
在开发环境下,所有功能都运行正常,但一旦进行打包并运行生产环境的版本,导出mp4视频的功能就失效了。没有文件生成,也没有任何错误提示。
排查问题
为了找到问题的根源,我首先决定通过日志来追踪。我使用了winston和winston-daily-rotate-file这两个强大的日志库来记录应用程序的运行信息。通过分析日志,我发现了一个关键的线索:
ffmpeg(一个用于处理多媒体内容的开源库)没有被正确地打包进最终的产品中。
const { createLogger, format, transports } = require("winston");
require("winston-daily-rotate-file");
const { app } = require('electron');
const path = require('path');
const fs = require('fs');
const logDir = path.join(app.getPath('userData'), 'logs');
if (!fs.existsSync(logDir)) {
try {
fs.mkdirSync(logDir);
} catch (error) {
console.error('Failed to create logs directory:', error);
}
}
const customFormat = form