PHP中使用php5-ffmpeg撷取视频图片实例

yipeiwu_com6年前PHP代码库

前几天在玩 FFmpeg 的时后,突然发现 Ubuntu 上多了 php5-ffmpeg 这个扩充套件,就想来玩玩看,看好不好用,有两个结论:
读取影片取决于 FFmpeg 的支援性,如果想要什么格式都支援的话,建议自己重新编译 FFmpeg。
效率并没有我想像中的快,两分钟的影片取十张图,大约 30 秒。
安装方法:

复制代码 代码如下:

sudo apt-get install ffmpeg php5-ffmpeg php5-gd

撷图测试范例:
复制代码 代码如下:

<?php   
$page = 10;   
$prefix = 'screencap';   
   
$mov = new ffmpeg_movie('gt.avi');   
$count = $mov->getFrameCount();   
$range = (int)round($count/($page+1));   
   
for($i=1; $i<=$page; $i++){   
   $frameNum = $range*$i;   
   $imgFile = $prefix.'_'.$i.'.png';   
   
   $frame = $mov->getFrame($frameNum);   
   if(!$frame){ continue; }   
   
   $gdImage = $frame->toGDImage();   
   if(!$gdImage){ continue; }   
   
   imagepng($gdImage, $imgFile);   
   imagedestroy($gdImage);   
   
   echo '<img src="'.$imgFile.'" border="1" /><br />';   
}  

相关文章

PHP文件系统基本操作类

<?php error_reporting(2047); /* * Class IO (SNakeVil 完成 03.25...

PHP实现的消息实时推送功能【基于反ajax推送】

本文实例讲述了PHP实现的消息实时推送功能。分享给大家供大家参考,具体如下: 入口文件index.html <!DOCTYPE HTML> <html> &l...

PHP 截取字符串 分别适合GB2312和UTF8编码情况

1. 截取GB2312中文字符串 复制代码 代码如下:<?php //截取中文字符串 function mysubstr($str, $start, $len) { $t...

php不写闭合标签的好处

最早这个概念是从Drupal中接触到的,一开始有点不习惯——为什么不写闭合标签呢?这感觉很不完美啊,对于有强迫症的人来说很不适应嘛!后来,在工作中碰到了因为标签闭合而引起的问题,才开始不...

PHP小技巧之JS和CSS优化工具Minify的使用方法

一、实现合并和压缩多个JS和CSS文件的代码 HTML: 复制代码 代码如下:<link rel="stylesheet" type="text/css" href="cssmin...