這篇文章主要介紹了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透過Ajax呼叫連接百度效果實作偵測網站是否連網的功能
#以上是php操作ffmpeg為影片增加字幕的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!