无法使用 getID3 1.9.7 写入 ID3 标签

Posted

技术标签:

【中文标题】无法使用 getID3 1.9.7 写入 ID3 标签【英文标题】:Can't write ID3 tags using getID3 1.9.7 【发布时间】:2013-08-16 06:30:14 【问题描述】:

我正在尝试利用 Wordpress 对 getID3() 的 3.6 支持,但在将 ID3 标记写入我的 mp3 时遇到问题。这是我正在使用的代码:

if ( ! class_exists( 'getID3' ) ) 
    require(ABSPATH.WPINC.'/ID3/getid3.php' );


# I had to custom install the write library because WP doesn't include it by default, evidently
getid3_lib::IncludeDependency(TEMPLATEPATH.'/lib/getid3/write.php', __FILE__);

$testfile = "/Users/jplew/Sites/dev.example.com/content/uploads/mp3.mp3";

$tagwriter = new getid3_writetags;
$tagwriter->filename   = $testfile;
$tagwriter->tagformats = array('id3v2.4');
$TagData['title'][]  = 'My Heart Will Go On';
$TagData['artist'][] = 'Celine Dion';
$TagData['genre'][]  = '90s Classics';

$tagwriter->tag_data = $TagData;

if ($tagwriter->WriteTags()) 
    echo 'success';
 else 
    echo 'failure';

我一直在“失败”。 getid3_writetags 函数的路径很好。我知道这一点是因为当我print_r($tagwriter); 时,它会输出指定的所有数组。然而,“警告”和“错误”数组都是空的。

此外,当我执行以下操作时,它会成功返回所有正确的标签信息:

$data = $getid3->analyze( $testfile );
print_r($data)

我还应该注意,演示中包含的demo.write.php 在我运行它时也会失败。它到达starting to write tag(s) 然后停止。

有什么想法吗?我会在 getid3.org 论坛上发帖,但我的 IP 被列入黑名单。 :(

【问题讨论】:

【参考方案1】:

Wordpress 在实施时并未包含整个 GetID3 库。他们只使用这些文件来获取最流行的视频和音频标签。

【讨论】:

以上是关于无法使用 getID3 1.9.7 写入 ID3 标签的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 getid3 函数检索艺术家、评论、标题和其他 ID3 标签?

从 MP3 Streaming 获取 ID3 标签

如何使用 Mp3agic jar Android studio 从 MP3 文件中获取 ID3 歌词标签?

php 获取 mp3 文件持续时间远程文件

通过浏览器使用 javascript/jQuery 读取和写入 ID3 标签到本地文件?

将 id3 元数据写入应用程序包中的 mp3 文件