2012-01-30 48 views
6

我已經寫了一些PHP代碼來從mp3文件中提取ID3標籤。下一步是對.m4a文件做同樣的處理。從我做的研究看來,大多數m4a文件不使用ID3,而是使用「原子」的格式。從PHP中的m4a文件中檢索ID3信息

是否有任何PHP庫可以解析出這些'原子'?我見過一些C#/ C++,但沒有找到任何PHP的。任何其他指南或文檔也會很棒。

感謝

+2

您可以嘗試['getID3()'](http://getid3.sourceforge.net/) - 過去,我在這個庫中獲得了各種媒體標籤的巨大成功。 – DaveRandom 2012-01-30 20:10:02

+0

我忘了提的一件事是我沒有完整的文件。我只有第一個X字節。 getID3是否支持部分文件? – Nick 2012-01-30 20:17:25

+1

我認爲它只讀取標題中的標記,我認爲這通常位於文件的前X個字節中 - 但答案確實是「嘗試並看到」 – DaveRandom 2012-01-30 20:29:25

回答

-1

我遇到了類似的問題,不久前來了,有大約一起來看看。最簡單和最有效的方法(在我看來)是使用exec命令來獲得額外的媒體信息。

我根據我在一個論壇上的代碼在longtailvideo張貼在http://www.longtailvideo.com/support/forums/jw-player/setup-issues-and-embedding/9448/how-to-get-video-duration-with-ffmpeg-and-php

<?php 
$videofile="/var/video/user_videos/partofvideo.avi"; 
ob_start(); 
passthru("/usr/bin/ffmpeg -i \"{$videofile}\" 2>&1"); 
$duration = ob_get_contents(); 
ob_end_clean(); 

$search='/Duration: (.*?),/'; 
$duration=preg_match($search, $duration, $matches, PREG_OFFSET_CAPTURE, 3); 

echo $matches[1][0]; <-- Duration 
?> 

該腳本可以處理任何的ffmpeg準備處理(這是很多!)我知道上面的例子說明了一個視頻文件,但,它會正常工作與音頻也