Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
File size: 785 Bytes
105d641 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
import ffmpeg from "fluent-ffmpeg";
import fs from "fs";
interface IConcatParams {
output: string;
videos: string[];
transitions: any;
}
const concat = async ({ output, videos }: IConcatParams): Promise<void> => {
if(!output || !Array.isArray(videos)) {
throw new Error("An output file and videos must be provided");
}
if(!videos.every(video => fs.existsSync(video))) {
throw new Error("All videos must exist");
}
const ffmpegCommand = ffmpeg();
videos.forEach((video) =>
ffmpegCommand.addInput(video)
);
return new Promise<void>((resolve, reject) => {
ffmpegCommand
.on('error', reject)
.on('end', resolve)
.mergeToFile(output);
});
};
export default concat; |