如何获得 标签信息?

问题描述 投票:6回答:2

喜欢标题,副标题,歌手,专辑,比特率等。

wiki - MP3 tag infomation

wiki - ID3(mp3 metadata format)

我经常搜索..但我无法得到答案。

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

浏览器不支持吗?

javascript html5-audio
2个回答
5
投票

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


2
投票

看起来你可以使用正确的库! Reading ID3 tags with Javascripthere is the demo

使用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标签相比,它们非常简单”

© www.soinside.com 2019 - 2024. All rights reserved.