| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
10年前发布

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);  }  ?>