2017-07-17 65 views
2

我想重現此命令PHP-FFmpeg的允許多個輸入

ffmpeg -i image.png -i audio.wav -acodec libvo_aacenc -vcodec libx264 output.flv 

PHP-FFMpeg

我不能documentationa方式找到添加多個輸入文件(-i image.png -i audio.wav

+2

PS:不要使用'libvo_aacenc';它的質量很低。改爲使用'libfdk_aac'或'aac'。 – slhck

+1

快速掃掠相關的代碼部分,看起來像你可以添加多個視頻和音頻流到FFmpeg對象,但我不知道它是否可以處理它。嘗試多次發出'open()'函數,看看是否可行......我幾乎可以肯定,如果視頻和音頻流來自不同的文件,它可以處理它。但是同一類型的多個流......好吧,它不能保證工作。 –

回答

1

我發現了一個簡單的解決方案(黑客):到第二輸入添加爲過濾器

$video = $this->ffmpeg->open($imageSource); 
$video->addFilter(new SimpleFilter(['-i ', $audioSource])); 

似乎按預期工作

1

這是目前不可能。這是一個feature request,2013年開放。

我的猜測是,該庫建立在能夠處理只有一個開放流,這使得重構需要更難一點。

最好手動運行命令。

+0

謝謝你指出!我發現了一點「黑客」,似乎工作... https://stackoverflow.com/a/45193948/3625883 – Filo

+1

嘿,是的,這可能會工作:)我會離開我的答案張貼,但我也可以刪除它如果你想。 – slhck