2010-11-26 82 views
0

上午在我的一個站點使用ffmpeg與PHP,我轉換文件使用php exec函數,實際上它讓我頭疼,試圖找出當這個ffmpeg執行exec命令後完成文件轉換:(反正是有這樣做嗎?知道什麼時候ffmpeg完成轉換

感謝

+1

您是否正在爲此過程做準備? – Orbling 2010-11-26 22:11:13

+0

U實際上讓我覺得現在蠢了嘿,背後的過程是什麼?我將在Windows服務器和Linux服務器上使用該腳本,我不知道exec處理在這裏和那裏是否是相同的,這只是我制定了路徑和轉換工作,這只是我不能確定何時完成轉換。 – 2010-11-27 14:56:11

回答

2

從我發現,exec函數阻塞,直到ffmpeg的轉換完成。

例如,你可以在運行的ffmpeg這樣你的PHP腳本:

exec($encode, $output); 

(其中$編碼是ffmpeg的命令作爲一個字符串,和$輸出是從ffmpeg的輸出的每一行的陣列。)

對我來說,從持續到的ffmpeg轉換此exec命令塊我的PHP腳本完成後,此時我的PHP腳本繼續進行,這似乎是它是如何在PHP手冊中描述:

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

所以,你可以告訴當EXEC是在與另一exec命令完成腳本中下一行的PHP命令會通知您轉換已完成,或者更新數據庫或者你有什麼。我認爲將exec命令「推入後臺」意味着運行exec命令,但讓PHP腳本同時(即異步)繼續運行。爲了在後臺運行exec命令,谷歌「PHP後臺執行」或「php多進程」,如:

http://www.php.net/manual/en/ref.exec.php#80241 http://www.sitecrafting.com/blog/to-run-php-代碼輸入/

相關問題