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

 更新时间:2016年05月23日 11:02:08   投稿:jingxian  
下面小编就为大家带来一篇php使用ffmpeg向视频中添加文字字幕的实现方法。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

这篇文章主要介绍了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中文字符串截取函数

    字符串截取是一个非常常见的编程任务,而往往带中文的字符串截取会经常用到。虽然不难,但是自己写函数实现又耗费时间,这里介绍一个比较好用的字符串截取函数,能够胜任基本的需求了
    2013-11-11
  • Laravel 5框架学习之向视图传送数据(进阶篇)

    Laravel 5框架学习之向视图传送数据(进阶篇)

    上篇文章我们介绍了Laravel5框架中如何向视图中传送数据,今天我们来研究下如何向视图中传送array,非常的详细,推荐给有需要的小伙伴参考下。
    2015-04-04
  • php+jQuery.uploadify实现文件上传教程

    php+jQuery.uploadify实现文件上传教程

    这篇文章主要介绍了php+jQuery.uploadify实现文件上传教程,需要的朋友可以参考下
    2014-12-12
  • php 正则 过滤html 的超链接

    php 正则 过滤html 的超链接

    php 过滤html 超链接的正则
    2009-06-06
  • PHP数据类型之布尔型的介绍

    PHP数据类型之布尔型的介绍

    布尔类型是PHP中 最简单的类型。它的值可以为 TRUE 或 FALSE
    2013-04-04
  • 详解php几行代码实现CSV格式文件输出

    详解php几行代码实现CSV格式文件输出

    本篇文章主要介绍了详解php几行代码实现CSV格式文件输出,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • Laravel5.6框架使用CKEditor5相关配置详解

    Laravel5.6框架使用CKEditor5相关配置详解

    这篇文章主要介绍了Laravel5.6框架使用CKEditor5相关配置,结合实例形式详细分析了Laravel5.6框架整合CKEditor5编辑器相关操作技巧与注意事项,需要的朋友可以参考下
    2019-07-07
  • PHPMailer发送邮件

    PHPMailer发送邮件

    PHPMailer是一个封装好的PHP邮件发送类,支持发送HTML内容的电子邮件,以及图片附件,前提要设置好邮件服务器就能实现邮件发送功能。本文给大家分享PHPMailer发送邮件功能,一起看看吧
    2016-12-12
  • php教程之phpize使用方法

    php教程之phpize使用方法

    phpize是用来扩展php扩展模块的,通过phpize可以建立php的模块,下面介绍一个他的使用方法,需要的朋友可以参考下
    2014-02-02
  • 详解PHP中的null合并运算符

    详解PHP中的null合并运算符

    这篇文章主要介绍了PHP中的null合并运算符的相关资料,需要的朋友可以参考下
    2015-12-12

最新评论