首页 >后端开发 >php教程 >php操作ffmpeg给视频增加字幕的方法

php操作ffmpeg给视频增加字幕的方法

墨辰丷
墨辰丷原创
2018-06-12 16:31:562325浏览

这篇文章主要介绍了PHP使用ffmpeg给视频增加字幕显示的方法,实例分析了php操作ffmpeg给视频增加字幕的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了PHP使用ffmpeg给视频增加字幕显示的方法。具体实现方法如下:

代码如下:

<?php
$dir = &#39;./&#39;; // set to current folder
if ($handle = opendir($dir)) {
 while(false!== ($file = readdir($handle))) {
 if ( is_file($dir.$file) ){
 if (preg_match("&#39;\.(avi)$&#39;", $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(&#39;input.avi&#39;, &#39;input.srt&#39;, &#39;output.jpg&#39;, &#39;output.ogm&#39;);
// 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 = &#39;ffmpeg -v 0 -y -i &#39;.$in.&#39; -vframes 1 -ss 250 -vcodec mjpeg -f rawvideo -s 286x160 -aspect 16:9 &#39;.$out_thumb;
 $res = shell_exec($cmd);
 // $res is the output of the command
 // transcode video
$cmd = &#39;mencoder &#39;.$in.&#39; -o &#39;.$out_vid.&#39; -sub &#39;.$in_sub.&#39; -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通过Ajax调用连接百度效果实现检测网站是否联网的功能

以上是php操作ffmpeg给视频增加字幕的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn