GetID3是一個PHP庫,用于解析音頻和視頻文件的元數據。它能夠讀取音頻格式、視頻格式以及容器格式的元數據,如MP3、FLAC、AVI、MPEG等等。具體來說,可以獲取以下信息:
1. 音頻信息:如比特率、采樣頻率、聲道數、時長、音頻編碼等。
// 獲取音頻元數據 require_once('getid3/getid3.php'); $getID3 = new getID3(); $fileInfo = $getID3->analyze('music.mp3'); $audioInfo = $fileInfo['audio']; echo '比特率:' . $audioInfo['bitrate'] . '
'; echo '采樣頻率:' . $audioInfo['sample_rate'] . '
'; echo '聲道數:' . $audioInfo['channels'] . '
'; echo '時長:' . $audioInfo['playtime_string'] . '
'; echo '音頻編碼:' . $audioInfo['dataformat'] . '
';
2. 視頻信息:如視頻格式、視頻編碼、分辨率、幀率、時長等。
// 獲取視頻元數據 require_once('getid3/getid3.php'); $getID3 = new getID3(); $fileInfo = $getID3->analyze('video.mp4'); $videoInfo = $fileInfo['video']; echo '視頻格式:' . $videoInfo['video_format'] . '
'; echo '視頻編碼:' . $videoInfo['video_codec'] . '
'; echo '分辨率:' . $videoInfo['resolution_x'] . ' x ' . $videoInfo['resolution_y'] . '
'; echo '幀率:' . $videoInfo['frame_rate'] . '
'; echo '時長:' . $videoInfo['playtime_string'] . '
';
3. 容器格式信息:如文件大小、容器格式、MIME類型等。
// 獲取容器格式元數據 require_once('getid3/getid3.php'); $getID3 = new getID3(); $fileInfo = $getID3->analyze('file.avi'); $containerInfo = $fileInfo['fileformat']; echo '文件大小:' . $containerInfo['filesize'] . 'GetID3還能識別音頻和視頻文件中的標簽信息,如MP3文件中的ID3標簽,M4A文件中的iTunes元數據,FLV文件中的FLV標簽等。
'; echo '容器格式:' . $containerInfo['format'] . '
'; echo 'MIME類型:' . $containerInfo['mime_type'] . '
';
4. ID3標簽信息:如歌曲名、歌手名、專輯名、作曲家、歌曲長度等。
// 獲取MP3文件中的ID3標簽元數據 require_once('getid3/getid3.php'); $getID3 = new getID3(); $fileInfo = $getID3->analyze('music.mp3'); $id3Info = $fileInfo['tags']['id3v2']; echo '歌曲名:' . $id3Info['title'][0] . '
'; echo '歌手名:' . $id3Info['artist'][0] . '
'; echo '專輯名:' . $id3Info['album'][0] . '
'; echo '作曲家:' . $id3Info['composer'][0] . '
'; echo '歌曲長度:' . $id3Info['length'][0] . '
';
5. iTunes元數據:如標題、藝術家、專輯、注釋、藝術家ID等。
// 獲取M4A文件中的iTunes元數據 require_once('getid3/getid3.php'); $getID3 = new getID3(); $fileInfo = $getID3->analyze('music.m4a'); $itunesInfo = $fileInfo['tags']['quicktime']; echo '標題:' . $itunesInfo['title'][0] . '
'; echo '藝術家:' . $itunesInfo['artist'][0] . '
'; echo '專輯:' . $itunesInfo['album'][0] . '
'; echo '注釋:' . $itunesInfo['comment'][0] . '
'; echo '藝術家ID:' . $itunesInfo['artistid'][0] . '
';
6. FLV標簽信息:如視頻寬度、高度、幀速率等。
// 獲取FLV文件中的FLV標簽元數據 require_once('getid3/getid3.php'); $getID3 = new getID3(); $fileInfo = $getID3->analyze('video.flv'); $flvInfo = $fileInfo['flv']; echo '視頻寬度:' . $flvInfo['width'] . '總之,GetID3是一個非常強大的解析音頻和視頻元數據的工具,可以輕易地在PHP應用中使用。無論是制作音頻播放器還是視頻上傳網站,它都是一個非常好的選擇。
'; echo '視頻高度:' . $flvInfo['height'] . '
'; echo '幀速率:' . $flvInfo['framerate'] . '
';