您的位置:首页网页设计PHP教程 → 如何用php将任何格式视频转为flv

如何用php将任何格式视频转为flv

时间:2010/2/2 17:35:00来源:本站整理作者:我要评论(0)

如何用php将任何格式视频转为flv:

<?
define("ROOT_DIR",dirname(__FILE__));
class EcodeFlv {
  var $fromFile;   //上传来的文件
  var $toFilePath;  //保存文件路径
  var $toPicPath;  //保存图片路径
  var $mpeg; //ffmpeg.exe文件的路径
  var $mencode; //mencode.exe文件的路径
  var $cmdToFile; //转换文件命令
  var $cmdToPic;  //转换图片命令
  var $toFileName; //转换后的文件名
  var $mpegComm; //ffmpeg.exe的转换命令
  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;
      }
    }
  }
 
//设置文件,图片大小
  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;
  }
 
//开始转换
  function toEcode() {
    set_time_limit(0);
    exec($this->cmdToFile,$flvStatus)
    exec($this->cmdToPic,$picStatus);
    exec($this->cmdMidi,$mStatus);
  }
 
 }
?>

相关视频

    没有数据

相关阅读 php输出内容乱码解决方法php批量获取首字母(汉字、数字、英文)我的php文件怎么打开_如何打开php文件的办法破解防盗链图片的php函数php显示错误信息方法如何在IIS7下设置支持PHP程序PHP技巧--通过COM使用ADODB成就PHP高手的五个必经之路

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 PHP入门教程书籍介绍用可牛为MM无痛纹身刺 编译apache的rewrite模块实例Apache中URL Rewrite技术实现方式在PHP中有urldecode()等函数来解决网页URL编PHP中的mb_convert_encoding转换编码与icon

人气排行 在PHP中有urldecode()等函数来解决网页URL编dede 完美分页效果! pagelist修改,实现门PHP入门教程书籍介绍用IdHTTP获取UTF-8编码的网页apache泛域名解析+泛域名指向处理文件ThinkTemplate模板引擎的设计和使用方法如何用php将任何格式视频转为flv破解防盗链图片的php函数