7

如标题、副标题、歌手、专辑、比特率等。

wiki - MP3 标签信息

wiki - ID3(mp3 元数据格式)

我搜索了很多..但我无法得到答案。

只搜索如何播放,停止,重新加载音频..

浏览器不支持?

4

2 回答 2

6

https://github.com/aadsm/JavaScript-ID3-Reader上还有一个库

最简单的形式:

ID3.loadTags("filename.mp3", function() {
    var tags = ID3.getAllTags(filename);
    alert(tags.artist + " - " + tags.title + ", " + tags.album);
});

通过指定特定标签:

ID3.loadTags("filename.mp3", function() {
    var tags = ID3.getAllTags(filename);
    alert(tags.COMM.data + " - " + tags.TCON.data + ", " + tags.WXXX.data);
},
{tags: ["COMM", "TCON", "WXXX"]});

甚至通过指定快捷方式而不是神秘标签:

ID3.loadTags("filename.mp3", function() {
    var tags = ID3.getAllTags(filename);
    alert(tags.comment + " - " + tags.track + ", " + tags.lyrics);
},
{tags: ["comment", "track", "lyrics"]});

在这里演示http://web.ist.utl.pt/antonio.afonso/www.aadsm.net/libraries/id3/#demo

于 2013-05-04T20:11:56.617 回答
2

看起来你可以使用正确的库!使用 Javascript 读取 ID3 标签,这里是演示

使用 ID3.js 库,您的 Javascript 将类似于:

// URL of the mp3 file (must be on the same domain!)
var file = "mymusicfile.mp3";
// define your own callback function
function mycallback() {
    // either call the ID3.getAllTags([file]) function which returns an object holding all the tags
    alert(
        "All tags in this file: " + ID3.getAllTags(file).toSource()
    );
    // or call ID3.getTag([file], [tag]) to get a specific tag
    alert(
        "Title: " + ID3.getTag(file, "title") + " by artist: " + ID3.getTag(file, "artist")
    );
}
ID3.loadTags(file, mycallback);

根据我提供的第一个链接中的帖子,它在 Opera 浏览器中不起作用,并且仅限于 ID3v1,用发帖人的话来说:

“它只能读取(相当缺乏的)ID3v1 标签,因为与更加充实和强大的 ID3v2 标签相比,这些标签非常简单”

于 2013-05-04T05:43:43.247 回答