如何用php將任何格式視頻轉(zhuǎn)為flv_PHP教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:解讀常用PHP函數(shù)功能中文對照表PHP函式索引967個函式 共有967個函式 Abs:取得絕對值。 Acos:取得反余弦值。 ada_afetch:取得資料庫的傳回列。 ada_autocommit:開關(guān)自動更動功能。 ada_close:關(guān)閉AdabasD連結(jié)。 ada_commit:更動AdabasD資料庫。 ada_connect:連結(jié)至AdabasD資料庫。 ada_exec
<?define("ROOT_DIR",dirname(__FILE__));
class EcodeFlv {
var $fromFile; //上傳來的文件
var $toFilePath; //保存文件路徑
var $toPicPath; //保存圖片路徑
var $mpeg; //ffmpeg.exe文件的路徑
var $mencode; //mencode.exe文件的路徑
var $cmdToFile; //轉(zhuǎn)換文件命令
var $cmdToPic; //轉(zhuǎn)換圖片命令
var $toFileName; //轉(zhuǎn)換后的文件名
var $mpegComm; //ffmpeg.exe的轉(zhuǎn)換命令
var $mencodeComm; //mencode.exe的命令
var $mpegType;
var $mencodeType;
var $midi; //mdi.exe的路徑
var $cmdMidi; //mdi.exe的命令
//初始化類
function EcodeFlv($fromFile,$toFilePath,$toPicPath,$mpeg,$mencode,$midi) {
$this->mpegComm = false;
$this->mencodeComm = false;
$this->fromFile = $fromFile;
$this->toFilePath = $toFilePath;
$this->toPicPath = ROOT_DIR."/".$toPicPath;
$this->mpeg = ROOT_DIR.$mpeg;
$this->mencode = ROOT_DIR.$mencode;
$this->midi = ROOT_DIR.$midi;
$this->mpegType=array (
"audio/x-mpeg"=>".mp3",
"video/mpeg"=>".mpeg",
"video/3gpp"=>".3gp",
"video/x-ms-asf"=>".asf",
"video/x-msvideo"=>".avi"
);
$this->mencodeType = array(
"application/vnd.rn-realmedia"=>".rm",
"audio/x-pn-realaudio"=>".rmvb",
"audio/x-ms-wmv"=>".wmv",
);
}
//檢查文件類型
function checkType() {
if(function_exists(mime_content_type)){
return false;
}else{
//$contentType = mime_content_type($this->fromFile);
$exe = "D:\server\php\extras\magic";
$handel = new finfo(FILEINFO_MIME, $exe);
$contentType = $handel->file($this->fromFile);
}
foreach($this->mpegType as $index=>$key){
if($contentType == $index){
$name = md5(date("Ymd").tiime());
$this->toFileName = $name;
$this->$mpegComm = true;
return true;
}
}
foreach($this->mencodeType as $index=>$key){
if($contentType == $index){
$name = md5(date("Ymd").time());
$this->toFileName = $name;
$this->mencodeComm = true;
return true;
}else{
return false;
}
}
}
//設(shè)置文件,圖片大小
function setSize($flvSize,$picSize) {
$flvWidth = $flvSize[0];
$flvHeight = $flvSize[1];
$picWidth = $picSize[0];
$picHeight = $picSize[1];
$picName = $this->toPicPath.$this->toFileName.".jpg";
$flvName = $this->toFilePath.$this->toFileName.".flv";
$toMdi = ROOT_DIR."/".$flvName;
$size = $picWidth."x".$picHeight;
if($this->mpegComm){
$this->cmdToFile= "$this->mpeg -i $this->fromFile -y -ab 56 -ar 22050 -b 500 -r 15 -s $flvWith*$flvHeight $flvName";
}
elseif($this->mencodeComm){
$this->cmdToFile = "$this->mencode $this->fromFile -vf scale=$flvWidth:$flvHeight -ffourcc FLV1 -of lavf -ovc lavc -lavcopts vcodec=flv:vbitrate=70:acodec=mp3:abitrate=56:dia=-1 -ofps 25 -srate 22050 -oac mp3lame -o $flvName";
}
$this->cmdToPic = "$this->mpeg -i $toMdi -y -f image2 -ss 8 -t 0.003 -s $size $picName";
$this->cmdMidi = "$this->midi $toMdi /k";
echo $this->cmdToPic;
}
//開始轉(zhuǎn)換
function toEcode() {
set_time_limit(0);
exec($this->cmdToFile,$flvStatus)
exec($this->cmdToPic,$picStatus);
exec($this->cmdMidi,$mStatus);
}
}
?>
分享:PHP教程之入門需要掌握的幾種功能代碼經(jīng)典循環(huán)例子 HTML HEAD TITLE經(jīng)典循環(huán)例子/TITLE /HEAD BODY ? for($counter=1;$counter=6;$counter++)//循環(huán)6次 { print(Bcounteris$counter/BBR\n);//打印6次 } ? /BODY /HTML for的高級運用 HTML HEAD TITLEfor的高級運用/TITLE /HEAD BODY ? /* **打
相關(guān)PHP教程:
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁面代碼執(zhí)行時間
- PHP中獎概率的抽獎算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問控制的和運算符優(yōu)先級介紹
- 關(guān)于PHP語言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國語言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
- 相關(guān)鏈接:
- 教程說明:
PHP教程-如何用php將任何格式視頻轉(zhuǎn)為flv
。