可以删除从可读流中读取的数据吗?

时间:2018-02-17 20:43:49

标签: node.js ffmpeg stream fs fluent-ffmpeg

我有一些ffmpeg进程按顺序运行,所有进程都写入一个流(fs.createWriteStream)。

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

我希望全天候运行脚本,并希望该流充当缓冲区。

提前致谢!

1 个答案:

答案 0 :(得分:0)

您实际上可以“追加数据”以运行ffmpeg实例 - 或任何其他可写流。为了实现这一点,您需要将此选项用于管道:

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

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

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

即使在流结束之前,我也可以这样做。