知道ffmpeg何时完成转换

时间:2010-11-26 21:56:39

标签: php ffmpeg

我在PHP的一个网站上使用ffmpeg,我使用php exec函数转换文件,实际上它让我有些头疼试图弄清楚这个ffmpeg在执行exec命令后完成文件转换:(无论如何这样做?

谢谢

1 个答案:

答案 0 :(得分:2)

根据我的发现,exec函数会阻塞,直到ffmpeg转换完成。

例如,您可以在PHP脚本中运行这样的ffmpeg:

exec($encode, $output);

(其中$ encode是作为字符串的ffmpeg命令,$ output是来自ffmpeg的每行输出的数组。)

对我来说,这个exec命令阻止我的PHP脚本继续,直到ffmpeg转换完成,此时我的PHP脚本继续,这似乎是PHP手册中的描述:

http://php.net/manual/en/function.exec.php

因此,您可以通过在脚本的下一行使用另一个PHP命令执行exec命令来告知转换是否完成,或者更新数据库,或者更新数据库。

仅供参考,我认为将exec命令“推入后台”意味着运行exec命令但让PHP脚本同时继续(即异步)。对于在后台运行exec命令,谷歌“PHP后台执行”或“php多进程”,如:

http://www.php.net/manual/en/ref.exec.php#80241 http://www.sitecrafting.com/blog/to-run-php-code-in/