【问题标题】:how to get volume level of mp3 at specific point of playback using javascript如何使用javascript在特定播放点获取mp3的音量
【发布时间】:2014-09-16 18:28:09
【问题描述】:

我有一个播放 mp3 的网页。我想创建每个 mp3 的可视化图表:音量与时间的关系,就像 Sound Cloud 所做的那样。我能想出的唯一想法是使用网络音频 api 解码 mp3,连接分析器节点,播放并记录不同时间的电平。肯定有更好的方法。有人知道是什么吗?

【问题讨论】:

    标签: javascript audio mp3 web-audio-api


    【解决方案1】:

    您可以在decodeAudioData 之后获取完整的AudioBuffer,然后以这种方式浏览示例(使用getChannelData())。样本将是从 -1 到 +1 的浮点数。

    您真正需要做的就是将样本分组到n 长度的桶中,其中nAudioBuffer 的总长度除以要渲染波形的像素总数。然后只需找到每个桶中的最大绝对值,这些就是您要绘制的值。

    不需要AnalyserNode,因此您可以非常快速地完成所有操作,而不必实时完成。

    【讨论】:

    • 没问题。如果您遇到任何麻烦,请告诉我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-07
    • 1970-01-01
    • 1970-01-01
    • 2014-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多