Home  >  Article  >  Backend Development  >  PHP uses ffmpeg to add text subtitles to videos

PHP uses ffmpeg to add text subtitles to videos

墨辰丷
墨辰丷Original
2018-06-02 10:24:082653browse

This article mainly introduces the method of using PHP to add subtitles to the video using ffmpeg. It analyzes the techniques of using PHP to add letters to the video using ffmpeg. It has certain reference value. Friends who need it can refer to it.

The details are as follows:

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

Summary: The above is the entire content of this article, I hope it will be helpful to everyone's study.

Related recommendations:

Detailed explanation of how to enable Opcode in PHP7 to create powerful performance

Example sharing of PHP simple string filtering method

phpSimple configuration method of error log

The above is the detailed content of PHP uses ffmpeg to add text subtitles to videos. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn