chore: melhora mensagem de erro do FFmpeg pós reinicialização do container

This commit is contained in:
2026-06-03 13:40:20 +00:00
parent 180990ea5f
commit e55f02faa3
2 changed files with 37 additions and 1 deletions
+36
View File
@@ -0,0 +1,36 @@
const fs = require('fs');
const path = require('path');
const { exec } = require('child_process');
const concatFilePath = path.join(__dirname, 'test_concat.txt');
const bgMusicPath = path.join(__dirname, '..', 'public', 'assets', 'audio', 'alegre.mp3');
const outputFilePath = path.join(__dirname, '..', 'public', 'generated-media', 'test_video.mp4');
const duration = 3;
const totalDuration = 6;
// Cria pasta generated-media se não existir
const mediaDir = path.dirname(outputFilePath);
if (!fs.existsSync(mediaDir)) {
fs.mkdirSync(mediaDir, { recursive: true });
}
// Usar camila_prof.png duas vezes
const testImg = path.join(__dirname, '..', 'public', 'assets', 'camila_prof.png');
let concatContent = `file '${testImg}'\nduration ${duration}\nfile '${testImg}'\nduration ${duration}\nfile '${testImg}'\n`;
fs.writeFileSync(concatFilePath, concatContent);
const ffmpegCommand = `ffmpeg -y -f concat -safe 0 -i "${concatFilePath}" -i "${bgMusicPath}" -c:v libx264 -pix_fmt yuv420p -c:a aac -shortest -t ${totalDuration} "${outputFilePath}"`;
console.log('Executando:', ffmpegCommand);
exec(ffmpegCommand, (error, stdout, stderr) => {
console.log('STDOUT:', stdout);
console.error('STDERR:', stderr);
if (error) {
console.error('Erro de execução:', error);
process.exit(1);
}
console.log('Vídeo gerado com sucesso em:', outputFilePath);
process.exit(0);
});