我对JavaScript非常陌生,并且正在尝试从文件中提取音频元数据。为此,我正在尝试在我的代码(https://github.com/tmont/audio-metadata)中实现音频元数据库。但是,当我尝试运行示例代码时,我不断收到错误消息:“ undefined variable ”。

<!DOCTYPE html>
<html>
<head>
    <title>
        Kenson's Music Player
    </title>
    <link rel="stylesheet" href="player.css" type="text/css" />
    <script type="text/javascript" src="audio-metadata.min.js"></script>
</head>
<body>
<script type="text/javascript">
    var req = new XMLHttpRequest();
    req.open('GET', 'example.mp3', true);
    req.responseType = 'arraybuffer';

    req.onload = function() {
        var metadata = AudioMetaData.id3v2(req.response);
        /*
            {
                "TIT2": "Foobar",
                "title": "Foobar",
                "TPE1": "The Foobars",
                "artist": "The Foobars",
                "TALB": "FUBAR",
                "album": "FUBAR",
                "year": "2014",
                "TRCK": "9",
                "track": "9",
                "TSSE": "Lavf53.21.1",
                "encoder": "Lavf53.21.1"
            }
        */
    };

    req.send(null);
</script>
</body>

最佳答案

audio-metadata的文档似乎不正确,您应该使用AudioMetadata而不是AudioMetaData

具体来说,可以在项目的 audio-metadata.min.js 文件中找到生成您正在使用的文件package.json的脚本:

"build": "./node_modules/.bin/browserify -s AudioMetadata -e index.js --bare > audio-metadata.js"

这里-s AudioMetadata给出了使用该软件包时在浏览器中应使用的变量的名称。

关于javascript - 尝试提取音频元数据Javascript,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43729472/

10-12 02:49
查看更多