gpt4 book ai didi

php - FFMPEG 转换使用 shell_exec 超时处理大文件

转载 作者:行者123 更新时间:2023-12-04 22:59:57 25 4
gpt4 key购买 nike

我正在尝试使用 ffmpeg 和 php 将大型(40mb)mov 文件转换为 mp4。

但它在服务器上给了我一个 504 超时错误。我可以在不更改的情况下解决此问题吗set_time_limit ?

这是我的php代码。

shell_exec($this->getFFmpegPath() . ' -i ' . $path . ' -vcodec libx264 -pix_fmt yuv420p -profile:v baseline -preset slower -crf 18 -vf "scale=trunc(in_w/2)*2:trunc(in_h/2)*2" ' . $convertedPath . '.mp4');

那么,关于如何在没有超时的情况下进行转换的任何想法?任何帮助都感激不尽。

最佳答案

您可能希望在后台运行转换。我找到了this question这解决了这个问题,但请对该主题进行更多调查。然后,您可以允许用户刷新以查看该过程是否已完成。

它也可能提供更好的用户体验(比长时间查看页面加载更好。连接中有很多地方可能会决定将其视为超时:php 引擎、网络服务器、代理、浏览器,具体取决于下。

你也应该是真的小心shell_exec .网络上有人滥用它来对您的机器做任何他们想做的事情的可能性非常高。也许不是您今天使用它的方式(取决于 $path$convertedPath 的来源),但可能在此代码的 future 更新中,您允许用户指定生成的文件名。

关于php - FFMPEG 转换使用 shell_exec 超时处理大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43253424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com