php使用ffmpeg向视频中添加文字字幕的实现方法


Posted in PHP onMay 23, 2016

这篇文章主要介绍了PHP使用ffmpeg给视频增加字幕显示的方法,实例分析了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)$'", $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使用ffmpeg向视频中添加文字字幕的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php公用函数列表[正则]
Feb 22 PHP
Optimizer与Debugger兼容性问题的解决方法
Dec 01 PHP
PHP 字符串分割和比较
Oct 06 PHP
PHP文件读写操作之文件读取方法详解
Jan 13 PHP
从PHP的源码中深入了解stdClass类
Apr 18 PHP
destoon各类调用汇总
Jun 20 PHP
PHP函数in_array()使用详解
Aug 20 PHP
PHP将进程作为守护进程的方法
Mar 19 PHP
Laravel 5框架学习之向视图传送数据(进阶篇)
Apr 08 PHP
php设置页面超时时间解决方法
Sep 22 PHP
简述php环境搭建与配置
Dec 05 PHP
PHP实现的数组和XML文件相互转换功能示例
Mar 15 PHP
Smarty模板变量调节器用法分析
May 23 #PHP
基于PHP后台的Android新闻浏览客户端
May 23 #PHP
Smarty保留变量用法分析
May 23 #PHP
php parse_str() 函数的定义和用法
May 23 #PHP
Smarty简单生成表单元素的方法示例
May 23 #PHP
深入剖析PHP中printf()函数格式化使用
May 23 #PHP
深入理解php printf() 输出格式化的字符串
May 23 #PHP
You might like
2019年中国咖啡业现状与发展趋势
2021/03/04 咖啡文化
PHP使用者状态管理功能的应用
2006/10/09 PHP
PHP序列号生成函数和字符串替换函数代码
2012/06/07 PHP
php模拟ping命令(php exec函数的使用方法)
2013/10/25 PHP
php 模拟post_验证页面的返回状态(实例讲解)
2013/10/28 PHP
PHP封装CURL扩展类实例
2015/07/28 PHP
PHP实现通过二维数组键值获取一维键名操作示例
2019/10/11 PHP
JavaScript事件列表解说
2006/12/22 Javascript
Prototype使用指南之hash.js
2007/01/10 Javascript
Javascript 判断 object 的特定类转载
2007/02/01 Javascript
jquery获取input表单值的代码
2010/04/19 Javascript
HTML中的setCapture和releaseCapture使用介绍
2012/03/21 Javascript
常用一些Javascript判断函数
2012/08/14 Javascript
浅谈Javascript Base64 加密解密
2014/12/28 Javascript
详解JavaScript中循环控制语句的用法
2015/06/03 Javascript
jQuery EasyUI 菜单与按钮之创建简单的菜单和链接按钮
2015/11/18 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
2016/07/18 Javascript
原生js实现商品放大镜效果
2017/01/12 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
JS使用tofixed与round处理数据四舍五入的区别
2017/10/25 Javascript
利用js实现前后台传送Json的示例代码
2018/03/29 Javascript
Python实现的使用telnet登陆聊天室实例
2015/06/17 Python
基于python socketserver框架全面解析
2017/09/21 Python
Python中enumerate函数代码解析
2017/10/31 Python
Linux下Pycharm、Anaconda环境配置及使用踩坑
2018/12/19 Python
Python pycharm 同时加载多个项目的方法
2019/01/17 Python
python基于递归解决背包问题详解
2019/07/03 Python
python matplotlib 画dataframe的时间序列图实例
2019/11/20 Python
python通过安装itchat包实现微信自动回复收到的春节祝福
2020/01/19 Python
行政前台岗位职责
2013/12/04 职场文书
学雷锋宣传标语
2014/06/25 职场文书
学党史心得体会
2014/09/05 职场文书
2014年卫生监督工作总结
2014/12/09 职场文书
《平行四边形的面积》教学反思
2016/02/16 职场文书
pandas:get_dummies()与pd.factorize()的用法及区别说明
2021/05/21 Python
Python实现信息管理系统
2022/06/05 Python