PHP中使用php5-ffmpeg撷取视频图片实例
前几天在玩 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使用FFmpeg接口获取视频的播放时长、码率、缩略图以及创建时间
FFmpeg是一个视频插件,我们可以利用调用FFmpeg接口来获取视频的相关信息,包括视频的播放时长,视频的码率,视频的缩略图以及视频创建时间,本文章向大家介绍php如何使用FFmpeg接口获取视频信息,需要的朋友可以参考一下. FFmpeg获得视频文件的缩略图: function getVideoCover($file,$time,$name) { if(empty($time))$time = '1';//默认截取第一秒第一帧 $strlen = strlen($file); // $vid
-
PHP中使用FFMPEG获取视频缩略图和视频总时长实例
复制代码 代码如下: //获得视频文件的缩略图function getVideoCover($file,$time,$name) { if(empty($time))$time = '1';//默认截取第一秒第一帧 $strlen = strlen($file); // $videoCover = substr($file,0,$strlen-4); // $videoCoverName = $videoCover.'.jpg';//缩略图命名 //exe
-
PHP使用FFmpeg获取视频播放总时长与码率等信息
请注意:这篇文章中会用到passthru,可能部分虚拟主机会将此命令禁用. 代码如下: PHP <?php define('FFMPEG_PATH', '/usr/local/ffmpeg2/bin/ffmpeg -i "%s" 2>&1'); function getVideoInfo($file) { $command = sprintf(FFMPEG_PATH, $file); ob_start(); passthru($command); $info = o
-
php使用ffmpeg向视频中添加文字字幕的实现方法
这篇文章主要介绍了PHP使用ffmpeg给视频增加字幕显示的方法,实例分析了php操作ffmpeg给视频增加字母的技巧,具有一定参考借鉴价值,需要的朋友可以参考下. 本文实例讲述了PHP使用ffmpeg给视频增加字幕显示的方法.分享给大家供大家参考.具体实现方法如下: <?php $dir = './'; // set to current folder if ($handle = opendir($dir)) { while(false!== ($file = readdir($handle)
-
PHP使用ffmpeg给视频增加字幕显示的方法
本文实例讲述了PHP使用ffmpeg给视频增加字幕显示的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <?php $dir = './'; // set to current folder if ($handle = opendir($dir)) { while(false!== ($file = readdir($handle))) { if ( is_file($dir.$file) ){ if (preg_match("'\.(avi)$'",
-
php 调用ffmpeg获取视频信息的简单实现
ffmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序,包含了libavcodec,保证高可移值性和编解码质量. 本文将介绍使用php调用ffmpeg获取视频信息,调用ffmpeg首先需要服务器上安装了ffmpeg,安装方法很简单,可自行搜索. 代码如下: <?php // 定义ffmpeg路径及命令常量 define('FFMPEG_CMD', '/usr/local/bin/ffmpeg -i "%s" 2>&1'); /** *
-
PHP基于ffmpeg实现转换视频,截图及生成缩略图的方法
本文实例讲述了PHP基于ffmpeg实现转换视频,截图及生成缩略图的方法.分享给大家供大家参考,具体如下: 这里把ffmpeg 和 生成缩略图整合了一下: include("ImageResize.class.php") //转视频 $cmd="ffmpeg.exe -i starwar.avi -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 1.flv"; exec($cmd); //视频截图 $cmd="ffmpeg
-
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
配置php.ini文件 复制代码 代码如下: file_uploads = on ;//是否允许通过HTTP上传文件的开关.默认为ON即是开 upload_tmp_dir ;//文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹 upload_max_filesize = 1024m ;//望文生意,即允许上传文件大小的最大值.默认为2M,我们设置为1G post_max_size = 1024m ;//指通过表单POST给PHP的所能接收的最大值,我们也设置为1G ma
-
php使用ffmpeg获取视频信息并截图的实现方法
本文实例讲述了php使用ffmpeg获取视频信息并截图的方法.分享给大家供大家参考,具体如下: $movie = new ffmpeg_movie('4.mp4'); $width=$movie->getFrameWidth(); $height=$movie->getFrameHeight(); $count= $movie->getFrameCount(); print $count . ''; $n = round ( $count/16 ); print $n . ''; for
-
php利用ffmpeg提取视频中音频与视频画面的方法详解
前言 FFmpeg的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward",FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.可以轻易地实现多种视频格式之间的相互转换. FFmpeg的用户有Google,Facebook,Youtube,优酷,爱奇艺,土豆等. 组成 1.libavformat:用于各种音视频封装格式的生成和解析,包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能,包含demuxer
随机推荐
- node通过npm写一个cli命令行工具
- 修改系统用户名的批处理代码
- javascript陷阱 一不小心你就中招了(字符运算)
- PHP中对数组的一些常用的增、删、插操作函数总结
- Delphi隐藏TPageControl的标签实例介绍
- centos 6.5下 mysql-community-server. 5.7.18-1.el6安装
- React Router基础使用
- MySQL查询倒数第二条记录实现方法
- php 获取本地IP代码
- js中获取时间new Date()的全面介绍
- 如何在ASP中恰当地运用Cookies?
- 解析php DOMElement 操作xml 文档的实现代码
- 解析关于SQL语句Count的一点细节
- 在SQL触发器或存储过程中获取在程序登录的用户
- JQuery文字列表向上滚动的代码
- java得到某年某周的第一天实现思路及代码
- js 右侧浮动层效果实现代码(跟随滚动)
- JavaScript表单验证的两种实现方法
- Windows操作系统的加速安装经验谈
- java 输入一个数字组成的数组(输出该数组的最大值和最小值)