getID3類的學習使用


getID3類的學習使用


 

網上描述:

getID3()這個PHP腳本能夠從MP3或其它媒體文件中提取有用的信息如:ID3標簽,bitrate,播放時間等。

(格式包括:Ogg,WMA,WMV,ASF,WAV,AVI,AAC,VQF,FLAC,MusePack,Real,QuickTime,Monkey's Audio,MIDI等)。

官方網址:https://www.getid3.org/


 

功能:

使用這個方法,可以獲得音頻、視頻、圖片等媒體文件中的信息,

我測了一下常見類型的媒體文件,測試結果如下:

使用的getID3的版本是:1.9.16-201810171314。

支持的類型:
音頻:【mp3】、【amr】;
視頻:【mp4】、【flv】、【wmv】、【avi】;
圖片:【gif】、【png】、【jpg】。


不支持的類型:
視頻格式【ts】。


 

示例:

使用背景:做聊天功能時,發送語音時,需要知道語音的時長,這個時候就可以使用getID3這個類。

開發環境:ThinkPHP3.2框架。

下載getID3類:在官網下載后解壓,里邊有許多文件,很多都是demo,只需要將getid3目錄放到項目里,

       我把目錄放到ThinkPHP\Library\Vender下。

調用示例代碼:

Vendor('getid3.getid3');
$getID3 = new \getID3();
$analyzeFileInfo = $getID3->analyze($filename);
if($analyzeFileInfo && is_array($analyzeFileInfo)){
      if(isset($analyzeFileInfo['error']) && $analyzeFileInfo['error']){
               $err_msg = '獲取語音消息的時長失敗';
                    if(is_array($analyzeFileInfo['error'])){
                        foreach ($analyzeFileInfo['error'] as $key=>$value) {
                            $err_msg .= ',錯誤'. ($key+1) . ':'.$value;
                        }
                    }else{
                        $err_msg .= ',錯誤:'.$analyzeFileInfo['error'];
                    }
                    log($err_msg);
                    return false;
                }else{
                    if(isset($analyzeFileInfo['playtime_seconds'])){
                        return ceil($analyzeFileInfo['playtime_seconds']);
                    }
                    return false;
                }
            }else{
                log('解析語音文件失敗:'.$analyzeFileInfo);
                return false;
            }
        }    

 

 


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM