2010-01-11 75 views
29

在給定視頻文件(.mov.mp4)的PHP中有沒有辦法生成縮略圖預覽?從視頻文件生成預覽圖像?

+2

這是一個常見的問題http://stackoverflow.com/questions/標籤/縮略圖+視頻+ PHP http://stackoverflow.com/questions/1246533/php-take-a-thumbnail-from-a-quicktime-movie-file – 2010-01-11 16:17:11

+1

@FrankFarmer該鏈接返回沒有結果,因爲'thumbnail'標籤是無效的。 – starbeamrainbowlabs 2016-04-06 17:17:02

回答

5

兩種方式浮現在腦海中:

  • 使用像流行ffmpeg一個命令行工具,但你幾乎總是需要一個自己的服務器(或一個非常好的服務器管理員/託管公司)得到該

  • 使用「screenshoot」插件LongTail Video player,允許創建手動屏幕截圖,然後將其發送到服務器端腳本。

25

首先安裝的ffmpeg的PHP(http://ffmpeg-php.sourceforge.net/

然後你就可以使用這個簡單的代碼:

<?php 
$frame = 10; 
$movie = 'test.mp4'; 
$thumbnail = 'thumbnail.png'; 

$mov = new ffmpeg_movie($movie); 
$frame = $mov->getFrame($frame); 
if ($frame) { 
    $gd_image = $frame->toGDImage(); 
    if ($gd_image) { 
     imagepng($gd_image, $thumbnail); 
     imagedestroy($gd_image); 
     echo '<img src="'.$thumbnail.'">'; 
    } 
} 
?> 
+2

API已更改,此答案需要更新;) – tobias47n9e 2017-12-18 10:53:16