MP3 标签问题

Posted

技术标签:

【中文标题】MP3 标签问题【英文标题】:MP3 Tag Problems 【发布时间】:2013-11-17 16:50:34 【问题描述】:

我的歌曲以 ACC 格式从 iTunes 导出,然后我将它们转换为 MP3 格式。

歌曲下载链接:https://www.dropbox.com/s/m4zod2dgj7zu8yc/01%20Hold%20On%20%28Vicetone%20Remix%29.mp3

所以我用 php 编写了一个读取 MP3 标签的程序,标签在最后 128 位,但由于某种原因,“艺术家”应该是“客座艺术家”,但如果我看它与 Windows 资源管理器的标签是正确的,而且我能找到的还有很多。所以我的问题特别是“专辑艺术家”保存在哪里,我在哪里可以找到其余的标签,我什至尝试用二进制编辑器找到它们。

代码:

function Read_File($dir, $file) 
    $i = 2;
    $value;

    while ($file[$i] != NULL)  
        $size = filesize("$dir/$file[$i]");

        $handle = fopen("$dir/$file[$i]", "r");

        fread($handle, $size - 125); // Trash

        $value[$i][0] = fread($handle, 30); // Titel
        $value[$i][1] = fread($handle, 30); // Artist
        $value[$i][2] = fread($handle, 30); // Album

        fclose($handle);

        $i++;
    

    return $value;

【问题讨论】:

Php MP3 Tag Processing的可能重复 我查看了该帖子中的 2 个链接,但这并不是我想要的,问题是我不想要他“艺术家”,我需要“专辑艺术家”。 关键是您需要使用正确的程序读取标签,而不是试图猜测可能不固定的偏移量。 好的,我就这样试试 如果您解决了问题,请考虑将解决方案写为答案,而不是在标题中编辑“已解决”。 【参考方案1】:

为了解决这个问题,我使用了 greg-449 的建议并使用AMP_Id 函数来识别文件正在使用的正确 mp3 版本。

【讨论】:

以上是关于MP3 标签问题的主要内容,如果未能解决你的问题,请参考以下文章

使用 taglib# 提取 mp3 标签

mp3标签设置哪种最好

将mp3标签的值复制到一批MP3文件的另一个标签

使用新 ID3 标签保存 MP3 时出现问题

在 MP3 ID3v2 标签中设置歌词

使用 TagLib 时如何读取音频 (mp3) 标签(时长和字幕)?