PHP使用ffmpeg给视频增加字幕显示的方法


Posted in PHP onMarch 12, 2015

本文实例讲述了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)$'", $file) ){

 $sub_file = str_ireplace(".avi", ".srt", $dir.$file);

 $idx_file = str_ireplace(".avi", ".idx", $dir.$file);

 $thumb_file = str_ireplace(".avi", ".jpg", $dir.$file);

 $out_file = str_ireplace(".avi", ".mp4", $dir.$file);

 flv_convert_get_thumb($dir.$file, $sub_file, $idx_file, $thumb_file, $out_file);

 }

 else{

 continue;

 }

 }

 }

 closedir($handle);

}

//flv_convert_get_thumb('input.avi', 'input.srt', 'output.jpg', 'output.ogm');

// code provided and updated by steve of phpsnaps ! thanks

// accepts:

// 1: the input video file

// 2: path to thumb jpg

// 3: path to transcoded mpeg?

function flv_convert_get_thumb($in, $in_sub, $in_idx, $out_thumb, $out_vid){

 // get thumbnail

 $cmd = 'ffmpeg -v 0 -y -i '.$in.' -vframes 1 -ss 250 -vcodec mjpeg -f rawvideo -s 286x160 -aspect 16:9 '.$out_thumb;

 $res = shell_exec($cmd);

 // $res is the output of the command

 // transcode video

$cmd = 'mencoder '.$in.' -o '.$out_vid.' -sub '.$in_sub.' -subfont-text-scale 3.0 -subpos 99 -af volume=10 -aspect 16:9 -of avi -noodml -ovc x264 -x264encop$

 $res = shell_exec($cmd);

}

?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP 的 __FILE__ 常量
Jan 15 PHP
兼容PHP5的PHP目录管理函数库
Jul 10 PHP
PHP校验ISBN码的函数代码
Jan 17 PHP
修改PHP的memory_limit限制的方法分享
Feb 21 PHP
深入PHP FTP类的详解
Jun 13 PHP
php计算两个日期时间差(返回年、月、日)
Jun 19 PHP
PHP Hash算法:Times33算法代码实例
May 13 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
Jul 25 PHP
PHP PDOStatement::nextRowset讲解
Feb 01 PHP
php文件上传原理与实现方法详解
Dec 20 PHP
PHP页面静态化――纯静态与伪静态用法详解
Jun 05 PHP
PHP解决高并发问题
Apr 01 PHP
PHP从FLV文件获取视频预览图的方法
Mar 12 #PHP
PHP简单获取视频预览图的方法
Mar 12 #PHP
php使用memcoder将视频转成mp4格式的方法
Mar 12 #PHP
PHP实现将视频转成MP4并获取视频预览图的方法
Mar 12 #PHP
PHP实现从远程下载文件的方法
Mar 12 #PHP
PHP判断网络文件是否存在的方法
Mar 12 #PHP
php实现过滤UBB代码的类
Mar 12 #PHP
You might like
PHP读MYSQL中文乱码的解决方法
2006/12/17 PHP
Yii框架在页面输出执行sql语句以方便调试的实现方法
2014/12/24 PHP
PHP正则表达式函数preg_replace用法实例分析
2020/06/04 PHP
event对象的方法 兼容多浏览器
2009/06/27 Javascript
js屏蔽鼠标键盘(右键/Ctrl+N/Shift+F10/F11/F5刷新/退格键)
2013/01/24 Javascript
JavaScript函数获取事件源的小例子
2014/05/14 Javascript
js判断一个字符串是否包含一个子串的方法
2015/01/26 Javascript
jQuery中animate动画第二次点击事件没反应
2015/05/07 Javascript
javascript作用域、作用域链(菜鸟必看)
2016/06/16 Javascript
jQuery插件Easyui设置datagrid的pageNumber导致两次请求问题的解决方法
2016/08/06 Javascript
JavaScript中apply方法的应用技巧小结
2016/09/29 Javascript
jQuery实现CheckBox全选、全不选功能
2017/01/11 Javascript
js清除浏览器缓存的几种方法
2017/03/15 Javascript
配置nodejs环境的方法
2017/05/13 NodeJs
对存在JavaScript隐式类型转换的四种情况的总结(必看篇)
2017/08/31 Javascript
JS基于for语句编写的九九乘法表示例
2018/01/04 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
微信小程序进入广告实现代码实例
2019/09/19 Javascript
[01:11:48]Fnatic vs IG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python中os模块详解
2016/10/14 Python
python写入并获取剪切板内容的实例
2018/05/31 Python
安装python及pycharm的教程图解
2019/10/10 Python
django实现将后台model对象转换成json对象并传递给前端jquery
2020/03/16 Python
HTML5+CSS3网页加载进度条的实现,下载进度条的代码实例
2016/12/30 HTML / CSS
施华洛世奇西班牙官网:SWAROVSKI西班牙
2019/06/06 全球购物
外贸主管求职简历的自我评价
2013/10/23 职场文书
小学语文教学反思
2014/02/10 职场文书
年度考核自我鉴定
2014/03/19 职场文书
法人代表授权委托书
2014/04/08 职场文书
C++程序员求职信范文
2014/04/14 职场文书
献爱心捐款倡议书
2014/05/14 职场文书
关于责任的演讲稿
2014/05/20 职场文书
党员对照检查材料思想汇报(党的群众路线)
2014/09/24 职场文书
民主生活会主持词
2015/07/01 职场文书
《秋思》教学反思
2016/02/23 职场文书
Ruby GDBM操作简介及数据存储原理
2022/04/19 Ruby