Streaming 是否可以让nginx流式处理当前正在写入的下载文件?

Streaming 是否可以让nginx流式处理当前正在写入的下载文件?,streaming,nginx,ffmpeg,real-time,transcoding,Streaming,Nginx,Ffmpeg,Real Time,Transcoding,所以我有两个服务在运行,一个是实时转码(ffmpeg),另一个是通过http(nginx)公开文件。我目前的问题是,当ffmpeg开始转码时,我通过nginx访问文件,只下载部分写入的字节 问题,是否可以配置nginx,以流式传输当前正在写入的文件,直到写入完成,并且我现在在本地计算机上拥有完整的文件 谢谢你我不相信Nginx本身能做到这一点。您需要一个应用程序(php、perl、python等等),它可以监控代码转换的进度,并为请求提供服务,基本上它将保持连接对客户端的开放性,并在可用时提供更

所以我有两个服务在运行,一个是实时转码(ffmpeg),另一个是通过http(nginx)公开文件。我目前的问题是,当ffmpeg开始转码时,我通过nginx访问文件,只下载部分写入的字节

问题,是否可以配置nginx,以流式传输当前正在写入的文件,直到写入完成,并且我现在在本地计算机上拥有完整的文件


谢谢你

我不相信Nginx本身能做到这一点。您需要一个应用程序(php、perl、python等等),它可以监控代码转换的进度,并为请求提供服务,基本上它将保持连接对客户端的开放性,并在可用时提供更多数据。

我遇到了一个非常类似的问题。当ffmpeg仍在对文件进行转码时,我不知道如何开始流媒体,但我的修复方法如下:

我有一个php脚本来进行系统调用(尽管你可以用任何语言编写)。脚本必须写入临时文件。在调用ffmpeg之前,它会检查临时文件是否存在,以消除并发问题。如果是这样,它会等到真正的文件存在

文件转换完成后,它将临时文件重命名为真实文件,并将http请求重定向到转码文件