PHP中使用FFMPEG获取视频缩略图和视频总时长实例
发布时间:2023-11-16 18:57:46
标签:PHP,FFMPEG
//获得视频文件的缩略图
function getVideoCover($file,$time,$name) {
if(empty($time))$time = '1';//默认截取第一秒第一帧
$strlen = strlen($file);
// $videoCover = substr($file,0,$strlen-4);
// $videoCoverName = $videoCover.'.jpg';//缩略图命名
//exec("ffmpeg -i ".$file." -y -f mjpeg -ss ".$time." -t 0.001 -s 320x240 ".$name."",$out,$status);
$str = "ffmpeg -i ".$file." -y -f mjpeg -ss 3 -t ".$time." -s 320x240 ".$name;
//echo $str."</br>";
$result = system($str);
}
//获得视频文件的总长度时间和创建时间
function getTime($file){
$vtime = exec("ffmpeg -i ".$file." 2>&1 | grep 'Duration' | cut -d ' ' -f 4 | sed s/,//");//总长度
$ctime = date("Y-m-d H:i:s",filectime($file));//创建时间
//$duration = explode(":",$time);
// $duration_in_seconds = $duration[0]*3600 + $duration[1]*60+ round($duration[2]);//转化为秒
return array('vtime'=>$vtime,
'ctime'=>$ctime
);
}


猜你喜欢
- JAVA程序想要访问数据库,需要进行如下准备:1.安装一个数据库(这里使用mysql免安装版)2.下载该数据库的驱动包(这里使用mysql官
- 用SHOW显示已有的数据库句法:SHOW DATABASES [LIKE wild]如果使用LIKE wild部分,wild字符串可以是一个
- 是的,我在这里要说:注册表单将死(好拗口啊,但是不知道怎么翻译更恰当)。回想一下,当你想享受一个网站服务的时候,碰到的第一件事是什么?一个表
- 目录前言1. 使用 for...of 遍历普通对象2. 普通对象与 Map 对象相互转换总结参考前言平时我们经常会用到 Object 类上的
- 本文实例讲述了PHP global全局变量的使用与注意事项。分享给大家供大家参考,具体如下:使用global在方法里面声明外部变量为全局变量
- 整理文档,搜刮出一个vue中如何实现变量和字符串拼接的代码,稍微整理精简一下做下分享。在data中定义变量:data() { r
- Python 是一门更注重可读性和效率的语言,尤其是相较于 Java,PHP 以及 C++ 这样的语言,它的这两个优势让其在开发者中大受欢迎
- 列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可修改的。排序,数字、字符串按照A
- 对于python,一切事物都是对象,程序中存储的所有数据都是对象,对象基于类创建计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、
- 导语每年的节假日一到,大家头疼的总时同一个问题:你买到回家的票了吗?尤其是大型的节日:”比如国庆、春节......&am
- 通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错。所以最好在做任何操作之前,先判断文件是否存在。这里将介绍三
- 1、simhash步骤simhash包含分词、hash、加权、合并、降维五大步骤simhash代码如下:import jiebaimport
- 本文实例讲述了js找出5个数中最大的一个数和倒数第二大的数实现方法。分享给大家供大家参考,具体如下:最大的一个数 :方法1:<scri
- 本文主要介绍vscode在工作中常用的快捷键及插件,目标在于提高工作效率本文的快捷键是基于mac的,windows下的快捷键放在括号里 Cm
- 一、安装Bautiful Soup 是第三方库,因此需要单独下载,下载方式非常简单由于 BS4 解析页面时需要依赖文档解析器,所以还需要安装
- reshape函数:改变数组的维数(注意不是shape大小)>>> e= np.arange(10)>>>
- 我们知道Python的内置dictionary数据类型是无序的,通过key来获取对应的value。可是有时我们需要对dictionary中
- 1、定义具名元组需要2个参数,第1个参数是类名,第2个参数是字段名,既可以是可迭代对象(如列表和元组),也可以是空格间隔的字符串:Card
- 在 python 中除了用 opencv,也可以用 matplotlib 和 PIL 这两个库操作图片。本人偏爱 matpoltlib,因为
- 1.作者介绍钱文浩,男,西安工程大学电子信息学院,2021级研究生研究方向:机器视觉与人工智能电子邮件:2414712362@qq.com刘