PHP使用ffmpeg給視頻增加字幕顯示的方法
本文實(shí)例講述了PHP使用ffmpeg給視頻增加字幕顯示的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
<?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);
}
?>
希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
相關(guān)文章
Javascript與PHP驗(yàn)證用戶輸入U(xiǎn)RL地址是否正確
這篇文章主要介紹了Javascript與PHP驗(yàn)證用戶輸入U(xiǎn)RL地址是否正確,在進(jìn)行web應(yīng)用程序開發(fā)時(shí)非常實(shí)用,需要的朋友可以參考下2014-10-10PHP 使用header函數(shù)設(shè)置HTTP頭的示例解析 表頭
本篇文章是對(duì)PHP使用header函數(shù)設(shè)置HTTP頭的示例進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06簡單概括PHP的字符串中單引號(hào)與雙引號(hào)的區(qū)別
這篇文章主要介紹了PHP的字符串中單引號(hào)與雙引號(hào)的區(qū)別,是PHP入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2016-05-05淺析php-fpm靜態(tài)和動(dòng)態(tài)執(zhí)行方式的比較
這篇文章主要介紹了php-fpm靜態(tài)和動(dòng)態(tài)執(zhí)行方式的比較,較為詳細(xì)的分析了php-fpm靜態(tài)和動(dòng)態(tài)執(zhí)行方式的原理、參數(shù)功能與相關(guān)使用技巧,需要的朋友可以參考下2016-11-11使用dump函數(shù),給php加斷點(diǎn)測(cè)試
本篇文章是對(duì)使用dump函數(shù),給php加斷點(diǎn)測(cè)試進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06PHP數(shù)組游標(biāo)實(shí)現(xiàn)對(duì)數(shù)組的各種操作詳解
這篇文章主要介紹了PHP數(shù)組游標(biāo)實(shí)現(xiàn)對(duì)數(shù)組的各種操作,結(jié)合實(shí)例形式較為詳細(xì)的分析了PHP數(shù)組操作中current與next方法控制數(shù)組游標(biāo)移動(dòng)實(shí)現(xiàn)數(shù)組遍歷的技巧,需要的朋友可以參考下2016-01-01淺析PHP數(shù)據(jù)導(dǎo)出知識(shí)點(diǎn)
本文是小編整理的關(guān)于PHP數(shù)據(jù)導(dǎo)出知識(shí)點(diǎn)的總結(jié)內(nèi)容,分析了經(jīng)常出現(xiàn)的問題,以及解決辦法,有興趣的朋友可以參考學(xué)習(xí)下。2018-02-02