如何使用音频文件中的amplit动画图像大小?

时间:2019-04-01 08:12:52

标签: javascript html audio web-audio-api javascript-audio-api

我正在尝试在播放某些音频文件时使用一些音频文件的振幅来设置它们的大小。因此,当播放audio1时,image1必须根据audio1的振幅做出反应。

我在javascript,jquery和HTML方面有基本知识,但是在这些领域没有很强的技能。我试图找到一种使用音频API或p5.js的解决方案,但我不知道如何从文件访问振幅音频参数。我总是会找到一些复杂的教程,而且我不明白如何以简单的方式访问HTML文件中的音频。

<html>
<head>
    <meta charset="utf-8">
</head>
<body>
    <div id="images">
        <img id="image1" src="../images/Image1.svg">
        <img id="image2" src="../images/Image2.svg">
        <img id="image3" src="../images/Image3.svg">
    </div>

    <audio id="audio1" controls>
        <source src="../music/audio1.mp3" type="audio/mpeg">
    </audio>

    <audio id="audio2" controls>
        <source src="../music/audio2.mp3" type="audio/mpeg">
    </audio>

    <audio id="audio3" controls>
        <source src="../music/audio3.mp3" type="audio/mpeg">
    </audio>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
    <script src="../js/test_AudioVisualizer_02.js"></script>

</body>
</html>

我的问题是:访问振幅参数以更改图像大小的最佳方法是什么?音频API是获取振幅的最佳方法还是其他方法?我想得出这样的结果: document.getElementById(“#image1”)。style.height = 10 * audio1.amplitude;

谢谢您的帮助!

1 个答案:

答案 0 :(得分:0)

这是我在该主题上发现的: https://dzone.com/articles/exploring-html5-web-audio

基本上,这是一个使用JavaScript播放和分析音频的非常详细的教程。我自己还没有尝试过,但是快速浏览一下代码就可以理解。

除此之外,还有一些其他链接可能会将您引向某些方向: