在現代網站中,在線播放視頻已成為常見功能。本文將介紹如何使用PHP 與FFmpeg 實現一個可在線播放電影或視頻的基礎系統,涵蓋從環境配置到視頻播放器嵌入的全過程。
首先,需要安裝用於視頻處理與流媒體轉換的PHP-FFmpeg庫。該庫基於FFmpeg 工具,支持格式轉換、視頻剪輯、截圖、流媒體輸出等操作。可以通過Composer 進行安裝:
composer require php-ffmpeg/php-ffmpeg
接下來,定義需要播放的視頻源。視頻源可以是服務器本地文件路徑,也可以是遠程視頻的URL。
$ffmpeg = FFMpeg\FFMpeg::create();
$video = $ffmpeg->open('path/to/video.mp4');
視頻流用於控製播放輸出、分辨率調整等。通過以下代碼可設置視頻流並同步輸出:
$stream = $video->filters()
->resize(new FFMpeg\Coordinate\Dimension(640, 480))
->synchronize();
創建完流後,需要將視頻輸出到指定路徑或直接推送到瀏覽器。以下示例演示如何生成webm格式文件:
$stream->save('path/to/output.mp4', array(
'webm' => true,
'format' => 'webm',
'audioCodec' => 'libvorbis',
'videoCodec' => 'libvpx'
));
最後,在網頁中使用HTML5 的標籤實現在線播放。通過設置src屬性指向剛生成的視頻文件即可:
<video width="640" height="480" controls>
<source src="path/to/output.mp4" type="video/webm">
</video>
通過以上步驟,我們完成了PHP 中在線視頻播放的核心功能。從視頻源的創建到播放器的嵌入,整個過程靈活且可擴展。你可以進一步加入轉碼、分辨率選擇、視頻封面等功能,以提升播放體驗。