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

yipeiwu_com7年前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 COOKIE立即生效,不用刷新就可以使用

复制代码 代码如下: //PHP COOKIE设置函数立即生效。 function cookie($var, $value='', $time=0, $path='', $domain=...

作为PHP程序员你要知道的另外一种日志

作为PHP程序员你要知道的另外一种日志

前言 本来准备讲解nginx和apache的日志的,但是个人不太推荐apache(纯属个人爱好),这里就不介绍apache的日志了。 作为一名程序员,比码代码还重要那么一点点的东西...

PHP实现设计模式中的抽象工厂模式详解

PHP实现设计模式中的抽象工厂模式详解

抽象工厂模式(Abstact Factory)是一种常见的软件设计模式。该模式为一个产品族提供了统一的创建接口。当需要这个产品族的某一系列的时候,可以为此系列的产品族创建一个 具体的工厂...

php后退一页表单内容保存实现方法

php表单在提交之后再后退,表单的内容默认是被清空的(使用session_start的时候), 解决方法是在session_start() 之后,字符输出之前写上 复制代码 代码如下:...

PHP XML操作类DOMDocument

DOMDocument相关的内容. 属性: Attributes 存储节点的属性列表(只读) childNodes 存储节点的子节点列表(只读) dataType 返回此节点的数据类型...