iT邦幫忙

0

如何用php把wav轉成mp3

php有辦法寫出將wav轉成mp3嗎?還是有別的辦法,可以幫我嗎謝謝!!

i7807 iT邦新手 5 級 ‧ 2010-09-15 23:36:15 檢舉
抱歉!試了一陣子~還是不太會用~能教我嗎?Orz
i7807 iT邦新手 5 級 ‧ 2010-09-19 22:27:06 檢舉
用了system(),exec()也用過了,php沒有反應??一直在讀取網頁~不會跳頁~能教我處理嗎?
fillano iT邦超人 1 級 ‧ 2010-09-20 09:51:00 檢舉
沒反應?應該是處理時間太久程式timeout了。時間是花在上傳還是轉檔?

不希望使用者等你轉檔處理完的話,你可以用popen():
http://tw2.php.net/manual/en/function.popen.php

但是要怎樣在處理完後通知使用者,是另一個問題。我想你可以嘗試一下使用ajax的方式。

1 個回答

10
fillano
iT邦超人 1 級 ‧ 2010-09-01 12:36:43
最佳解答

這...好像沒有直接的function可以用

你考慮一下安裝ffmpeg,然後透過system()呼叫它...

不過轉檔的時間跟負載對於網站程式會是一個問題。如果你的需求是要對外服務,你需要考慮周到一點的架構設計,例如透過GEARMAN來分派工作,可以先參考幾篇文章:
http://www.jaceju.net/blog/?p=1211
http://blog.roodo.com/rocksaying/archives/13478419.html
http://phpe.net/2010/08/os-php-gearman/

在client端偵測工作是否完成,則可透過ajax的方式來做。這樣比較不需要漫長的等待,還會有timeout的問題。

看更多先前的回應...收起先前的回應...
i7807 iT邦新手 5 級 ‧ 2010-09-01 14:25:43 檢舉

有點難懂,研究看看,謝謝!!

fillano iT邦超人 1 級 ‧ 2010-09-01 15:40:48 檢舉

您還是先研究一下ffmpeg怎麼轉檔,在php只要用system()來呼叫ffmpeg就可以了啦。會用ffmpeg的話,你以後要轉影片也可以用他。我後面的東西指是順帶提到的,你有需求的話再考慮。

i7807 iT邦新手 5 級 ‧ 2010-09-01 16:10:15 檢舉

借問一下?這個在網路上找到的,filename.wav是固定??還是可以動態抓取?
將聲音檔案轉成mp3

ffmpeg -i filename.wav -acodec libmp3lame -ar 44100 -ab 128k filename.mp3

sula3065408 iT邦研究生 1 級 ‧ 2010-09-02 14:25:44 檢舉

反正就是 [user]->[browser]->[javascript]->[cgi/php]->[shell]->[ffmpeg],不用ajax的話[user]->[browser]->[cgi/php]->[shell]->[ffmpeg],filename是你cgi/php要決定的檔名,如果是從使用這那邊丟到伺服器上的話,你cgi/php就寫檔完成之後再呼叫shell執行ffmpeg。

i7807 iT邦新手 5 級 ‧ 2010-09-02 15:40:39 檢舉

shell是unix?windows server2003,還是shell可以在windows上使用?抱歉我不太熟!

shunyuan iT邦研究生 1 級 ‧ 2010-09-02 16:00:09 檢舉

i7807提到:
shell是unix?windows server2003,還是shell可以在windows上使用?抱歉我不太熟

shell 在 Windows 上就是 cmd.exe

shell 在 Linux 上通常是 bash

反正你不用管 shell,勇敢的 system 給他用下去。

i7807 iT邦新手 5 級 ‧ 2010-09-12 22:37:59 檢舉

感謝大家的回覆!!雖然我還不太會用!最近需要做一些文件!所以如果現在才發問!請各位不吝赐教!

我要發表回答

立即登入回答