Fix FFmpeg task when rendering list of frames #104286

Manually merged
Sybren A. Stüvel merged 2 commits from EmmanuelDurand/flamenco:fix/ffmpeg-list-of-frames into main 2024-02-24 11:58:25 +01:00
2 changed files with 16 additions and 2 deletions
Showing only changes of commit 18339f4f52 - Show all commits

View File

@ -149,7 +149,14 @@ function authorCreateVideoTask(settings, renderDir) {
} }
const stem = path.stem(settings.blendfile).replace('.flamenco', ''); const stem = path.stem(settings.blendfile).replace('.flamenco', '');
const outfile = path.join(renderDir, `${stem}-${settings.frames}.mp4`); var outfile = path.join(renderDir, `${stem}-${settings.frames}.mp4`);
if (outfile.search(',') != -1) {
// Get the first and last frame from the list
const chunks = frameChunker(settings.frames, 1);
const firstFrame = chunks[0];
const lastFrame = chunks.slice(-1)[0];
outfile = path.join(renderDir, `${stem}-${firstFrame}-${lastFrame}.mp4`);
}
const outfileExt = guessOutputFileExtension(settings); const outfileExt = guessOutputFileExtension(settings);
const task = author.Task('preview-video', 'ffmpeg'); const task = author.Task('preview-video', 'ffmpeg');

View File

@ -130,7 +130,14 @@ function authorCreateVideoTask(settings, renderDir) {
} }
const stem = path.stem(settings.blendfile).replace('.flamenco', ''); const stem = path.stem(settings.blendfile).replace('.flamenco', '');
const outfile = path.join(renderDir, `${stem}-${settings.frames}.mp4`); var outfile = path.join(renderDir, `${stem}-${settings.frames}.mp4`);
if (outfile.search(',') != -1) {
// Get the first and last frame from the list
const chunks = frameChunker(settings.frames, 1);
const firstFrame = chunks[0];
const lastFrame = chunks.slice(-1)[0];
outfile = path.join(renderDir, `${stem}-${firstFrame}-${lastFrame}.mp4`);
}
const outfileExt = needsPreviews ? ".jpg" : settings.image_file_extension; const outfileExt = needsPreviews ? ".jpg" : settings.image_file_extension;
const task = author.Task('preview-video', 'ffmpeg'); const task = author.Task('preview-video', 'ffmpeg');