0

我有一些 ffmpeg 进程按顺序运行,并且全部写入一个流(fs.createWriteStream)。

是否可以从文件中删除通过 fs.createReadStream 读取的数据?

我想 24/7 运行脚本并希望流像缓冲区一样。

提前致谢!

4

1 回答 1

0

您实际上可以将数据“附加”到正在运行的ffmpeg实例 - 或任何其他可写流。为此,您需要将此选项用于管道:

myFile.pipe(ffmpegRunner, {end: false});

这将告诉管道不通知 ffmpeg 该文件已结束。然后,您可以在第一个文件结束后切换文件:

myFile.on("end", () => {
    myFile.unpipe(ffmpegRunner);
    anotherFile.pipe(ffmpegRunner, {end: false});
});

我猜你甚至可以在流结束之前做到这一点。

于 2018-02-17T23:19:47.203 回答