debach/zend-mp3

最佳的PHP库,用于面向对象的媒体文件信息读写。

1.8.1 2016-01-04 13:23 UTC

This package is auto-updated.

Last update: 2024-09-16 08:06:04 UTC


README

PHP Reader是一个用PHP编写的库,用于以面向对象的方式读取和写入媒体文件及其信息头。目前支持以下格式:ASF(Windows Media Player文件,例如WMA、WMV等)、ID3,包括ID3v1和ID3v2(MPEG文件,例如MP3)、MPEG音频位流(例如ABS、MP1、MP2、MP3)、MPEG节目流(MPEG电影、DVD和HD DVD视频光盘,例如MPG、MPEG、VOB、EVO),以及ISO基础媒体文件格式(例如QuickTime、MPEG-4和iTunes AAC文件,例如QT、MOV、MP4、M4A、M4B、M4P、M4V等)。

该库由Sven Vollbehr编写,最初托管在Google Code。这个GitHub分支仅增加了对Composer的PSR-0自动加载标准的支持。

安装

使用以下命令通过composer安装PHP Reader:

composer require debach/zend-mp3:dev-master
composer install

如何使用PHP Reader

PHP reader在其网站和代码中都有优秀的文档。以下是一些示例,以帮助您快速入门。PHP reader的功能远不止于此。

读取MP3文件的时长

要从MP3文件中获取估计的秒数,请按照以下步骤操作

$abs    = new Zend_Media_Mpeg_Abs('file.mp3');
$length = $abs->getLengthEstimate();

您可以使用$abs->getLength()获取精确的时长,但这需要读取MP3文件的每个帧。通常,估计的时长已经非常精确,而且速度更快。

读取ID3标签

使用Zend_Media_Id3v2类来读取或写入ID3信息(官方文档

$id3   = new Zend_Media_Id3v2('file.mp3');

$frame = $id3->getFramesByIdentifier('TIT2'); // for song title; or TALB for album title; ..
$title = $frame[0]->getText();

$frame = $id3->getFramesByIdentifier('TALB');
$album = $frame[0]->getText();