我正在嘗試使用 ffmpeg 創建視頻并將其路徑回傳到 index.js,但路徑顯示未定義。
index.js
app.get('/content/:myfact', async (req, res) => {
let myfactdata = req.params.myfact;
let myfact = myfactdata.replace("_", " ");
const video = await generateVideo(myfact);
console.log(video)
});
這是我的 contentVideo.js
const generateImage = require('./contentimage.js');
const { spawn } = require('child_process');
const generateVideo = async (myfact) => {
await generateImage(myfact);
const child = spawn('ffmpeg', [
'-i', 'pictures/download/image.png', 'pictures/download/video.mp4'
]);
child.on('close', function (code, signal) {
const video = 'pictures/download/video.mp4'
return video
});
}
module.exports = generateVideo
uj5u.com熱心網友回復:
應該是這樣的:
const generateVideo = async (myfact) => {
await generateImage(myfact);
const child = spawn('ffmpeg', [
'-i', 'pictures/download/image.png', 'pictures/download/video.mp4'
]);
return new Promise((resolve, reject) => {
child.on('close', function (code, signal) {
const video = 'pictures/download/video.mp4'
resolve(video);
});
child.on('error', function(err){
reject(err);
});
})
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/525212.html
