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 相关文章推荐
基于数据库的在线人数,日访问量等统计
Oct 09 PHP
PHP初学者常见问题集合 修正版(21问答)
Mar 23 PHP
用PHP将网址字符串转换成超链接(网址或email)
May 25 PHP
一个PHP并发访问实例代码
Sep 06 PHP
深入解析yii权限分级式访问控制的实现(非RBAC法)
Jun 13 PHP
dedecms函数分享之获取某一栏目所有子栏目
May 19 PHP
php中in_array函数用法分析
Nov 15 PHP
php简单socket服务器客户端代码实例
May 18 PHP
CodeIgniter常用知识点小结
May 26 PHP
PHP针对字符串开头和结尾的判断方法
Jul 11 PHP
Yii基于CActiveForm的Ajax数据验证用法示例
Jul 14 PHP
Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析
Jul 25 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
Chrome Web App开发小结
2014/09/04 PHP
PHP实现抓取HTTPS内容
2014/12/01 PHP
Symfony2函数用法实例分析
2016/03/18 PHP
浅谈使用 Yii2 AssetBundle 中 $publishOptions 的正确姿势
2017/11/08 PHP
PHP异常类及异常处理操作实例详解
2018/12/19 PHP
escape、encodeURI、encodeURIComponent等方法的区别比较
2006/12/27 Javascript
关于javascript中的parseInt使用技巧
2009/09/03 Javascript
JS实现在Repeater控件中创建可隐藏区域的代码
2010/09/16 Javascript
JSONP 跨域共享信息
2012/08/16 Javascript
js复制到剪切板的实例方法
2013/06/28 Javascript
js正则表达式中test,exec,match方法的区别说明
2014/01/29 Javascript
js函数参数设置默认值的一种变通实现方法
2014/05/26 Javascript
node.js中的fs.mkdirSync方法使用说明
2014/12/17 Javascript
jQuery实现新消息闪烁标题提示的方法
2015/03/11 Javascript
JavaScript的Vue.js库入门学习教程
2016/05/23 Javascript
详解JavaScript模块化开发
2016/12/04 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
基于vue2实现左滑删除功能
2017/11/28 Javascript
Vue实现拖放排序功能的实例代码
2019/07/08 Javascript
Vue实现导航栏的显示开关控制
2019/11/01 Javascript
jQuery实现B2B网站后台管理系统侧导航
2020/07/08 jQuery
跟老齐学Python之玩转字符串(2)更新篇
2014/09/28 Python
python中kmeans聚类实现代码
2018/02/23 Python
linux下安装python3和对应的pip环境教程详解
2019/07/01 Python
关于python3中setup.py小概念解析
2019/08/22 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
2020/07/20 Python
英国儿童鞋和靴子:Start-Rite
2019/05/06 全球购物
精选鞋类、服装和配饰的全球领先目的地:Bodega
2021/02/27 全球购物
vue 中 get / delete 传递数组参数方法
2021/03/23 Vue.js
大学生实习思想汇报
2014/01/12 职场文书
中文师范生自荐信
2014/01/30 职场文书
爱国主义演讲稿
2014/05/07 职场文书
食品安全宣传标语
2014/06/07 职场文书
放假通知范文
2015/04/14 职场文书
一个成功的互联网创业项目,必须满足这些要求
2019/08/23 职场文书
Java使用httpRequest+Jsoup爬取红蓝球号码
2021/07/02 Java/Android