2010-01-11 15 views
29

Có cách nào trong PHP cho một tệp video (.mov, .mp4) để tạo bản xem trước hình thu nhỏ không?Tạo hình ảnh xem trước từ tệp Video?

+2

Đây là một câu hỏi phổ biến http://stackoverflow.com/questions/ được gắn thẻ/thu nhỏ + video + php http://stackoverflow.com/questions/1246533/php-take-a-thumbnail-from-a-quicktime-movie-file –

+1

@FrankFarmer Liên kết đó không trả về kết quả nào vì thẻ 'thumbnail' không có hiệu lực. – starbeamrainbowlabs

Trả lời

5

Hai cách tôi suy nghĩ:

  • Sử dụng một công cụ dòng lệnh như phổ biến ffmpeg, tuy nhiên bạn sẽ hầu như luôn luôn cần một riêng máy chủ (hoặc một quản trị viên/công ty lưu trữ máy chủ rất tốt) để nhận được rằng

  • Sử dụng plugin "screenshoot" cho LongTail Video player cho phép tạo các ảnh chụp màn hình thủ công sau đó được gửi đến một kịch bản phía máy chủ.

25

Đầu tiên cài đặt ffmpeg-php (http://ffmpeg-php.sourceforge.net/)

Và sau đó bạn có thể sử dụng mã đơn giản này:

<?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 đã thay đổi và câu trả lời này cần cập nhật;) – tobias47n9e