2012-01-03 142 views
8

我想創建一個網站,播放用戶上傳的視頻在html5視頻。將視頻轉換爲兼容HTML5格式(服務器端)

如何將服務器端的任何視頻類型轉換爲WebM,OGG或MP4?

FFmpeg是最好的解決方案嗎?到目前爲止,這是我的想法,但我更願意找到一個更簡單的方法。

回答

5

是,ffmpeg的是最好的解決辦法,但你需要按照下面的步驟,以便在所有瀏覽器的視頻工作:

1-下載的ffmpeg的最後一個版本從這裏ffmpeg download

2-提取物內容到目錄;

3-隨着PHP調用的exe文件來生成MP4和WebM視頻格式,如:

exec(ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -qscale 4 -vcodec libx264 -f mp4 your_new_video_path.mp4); 

exec(ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -b 1500k -vcodec libvpx -acodec libvorbis -ab 160000 -f webm -g 30 -s your_new_video_path.webm); 

4-允許在IIS(如果它是你的情況下)的MIME類型MP4和WebM

5-使用video.js構建html5視頻標籤並調用您的兩個轉換後的視頻(mp4和webm);

注意:如果您不使用video.js,則該視頻可能無法在IE中使用。

+0

你有你用來做這個PHP代碼的任何例子嗎? – Philip 2014-02-09 16:17:14

0

不錯,但你的編碼是有點關閉RED_ALERT用戶。

 <?php 
     shell_exec("ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -qscale 4 -vcodec    libx264 -f mp4 your_new_video_path.mp4"); 

     shell_exec("ffmpegdirectory/bin/ffmpeg.exe -i your_video_path -b 1500k -vcodec libvpx -acodec libvorbis -ab 160000 -f webm -g 30 -s your_new_video_path.webm"); 

?>

所以基本上,如果你使用WAMP您添加的ffmpeg在WAMP您的計算機上一個單獨的目錄文件夾,而不是。你可以比我假設創建一個srcs視頻的HTML文件,不應該需要視頻js。當然,您需要知道視頻的路徑,並找出一種方法將msyql查詢的路徑放到上面的php shell_exec命令中。

這是將wmv視頻轉換爲mp4視頻的另一個示例。

<?php shell_exec("ffmpeg/bin/ffmpeg -i /myvideos/lionseatsham.wmv -s 500x400 -strict -2 /myvideo/lioneatshame.mp4 2>&1"); 

?>