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程序中的常见漏洞进行攻击(下)
Oct 09 PHP
php中常用编辑器推荐
Jan 02 PHP
php中防止伪造跨站请求的小招式
Sep 02 PHP
在WordPress中实现评论头像的自定义默认和延迟加载
Nov 24 PHP
PHP中的数组处理函数实例总结
Jan 09 PHP
php上传图片类及用法示例
May 11 PHP
PHP中检查isset()和!empty()函数的必要性
Feb 13 PHP
PHP生成随机码的思路与方法实例探索
Apr 11 PHP
ThinkPHP3.2框架自带分页功能实现方法示例
May 13 PHP
Yii框架核心组件类实例详解
Aug 06 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
Feb 21 PHP
php7 list()、session及其他模块的修改实例分析
May 25 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
一个程序下载的管理程序(一)
2006/10/09 PHP
php笔记之:php函数range() round()和list()的使用说明
2013/04/26 PHP
php与java通过socket通信的实现代码
2013/10/21 PHP
使用Composer安装Yii框架的方法
2016/03/15 PHP
Zend Framework入门知识点小结
2016/03/19 PHP
Yii2.0实现生成二维码功能实例
2017/10/24 PHP
实例分析PHP中PHPMailer发邮件
2017/12/13 PHP
详解php伪造Referer请求反盗链资源
2019/01/24 PHP
解决Extjs上传图片无法预览的解决方法
2012/03/22 Javascript
javascript的数据类型、字面量、变量介绍
2012/05/23 Javascript
js如何判断用户是在PC端和还是移动端访问
2014/04/24 Javascript
用C/C++来实现 Node.js 的模块(一)
2014/09/24 Javascript
node+express+jade制作简单网站指南
2014/11/26 Javascript
18个非常棒的jQuery代码片段
2015/11/02 Javascript
轻松实现Bootstrap图片轮播
2020/04/20 Javascript
jQuery获取单击节点对象的方法
2016/06/02 Javascript
JS图片左右无缝隙滚动的实现(兼容IE,Firefox 遵循W3C标准)
2016/09/23 Javascript
js实现下拉菜单效果
2017/03/01 Javascript
ES6中Iterator与for..of..遍历用法分析
2017/03/31 Javascript
JS ES6多行字符串与连接字符串的表示方法
2017/04/26 Javascript
javaScript实现复选框全选反选事件详解
2020/11/20 Javascript
初学node.js中实现删除用户路由
2019/05/27 Javascript
python检查URL是否正常访问的小技巧
2017/02/25 Python
python中通过预先编译正则表达式提高效率
2017/09/25 Python
对python多线程中互斥锁Threading.Lock的简单应用详解
2019/01/11 Python
python程序 创建多线程过程详解
2019/09/23 Python
基于numpy中的expand_dims函数用法
2019/12/18 Python
Python3 shutil(高级文件操作模块)实例用法总结
2020/02/19 Python
详解django中Template语言
2020/02/22 Python
Selenium 安装和简单使用的实现
2020/12/04 Python
美国最大的在线寄售和旧货店:Swap.com
2018/08/27 全球购物
Myprotein西班牙官网:欧洲第一大运动营养品牌
2020/02/24 全球购物
入党群众意见范文
2015/06/02 职场文书
煤矿安全学习心得体会
2016/01/18 职场文书
六年级作文之自救
2019/12/19 职场文书
python 使用tkinter与messagebox写界面和弹窗
2022/03/20 Python