【发布时间】:2017-08-23 16:14:42
【问题描述】:
我目前正在创建一个 Node.js 应用程序,它接收音频/视频流,将其逐步写入磁盘,然后在流结束后使用 ffmpeg 对其进行转码,并将其发送到其他地方进行存储,并在本地删除它。
除了我可以在编写流之前对流进行转码以简化整个事情(此功能已计划),在潜在的大文件上处理这些操作的最佳方法是什么?
我知道产生子进程(我目前正在使用的方法),但我不确定它们的实际功能,即使经过大量阅读。我什至不确定使用“spawn”是否正是我想要的(“fork”是更好的选择吗?)。
本质上,我想知道如何在不阻塞 Node.js 的情况下转码 -> 上传 -> 删除文件,以便多个用户可以同时执行相同的操作。另外,我正在考虑将所有 3 个操作放在一个 bash 脚本中,以便它们按顺序同步发生,这样可以吗?
【问题讨论】:
标签: node.js asynchronous ffmpeg file-handling child-process