javascript - Web Audio 可视化波形并与之交互

标签 javascript html canvas web-audio-api

如何编写 JavaScript 程序来显示音频文件中的波形?我想使用网络音频和 Canvas 。

我试过这段代码:

(new window.AudioContext).decodeAudioData(audioFile, function (data) {
   var channel = data.getChannelData(0);
   for (var i = 0; i < channel; i++) {
       canvas.getContext('2d').fillRect(i, 1, 40 - channel[i], 40);
   }
});

但结果与我想要的相去甚远(即图像不平滑,因为我是用矩形绘制的)。我希望它看起来像这张图片一样平滑:

Waveform example

关于如何实现波形的任何提示?

最佳答案

毕竟推出了我自己的库: wavesurfer.js .

它从 PCM 数据中绘制波形,并通过单击它来寻找音频区域。

Imgur

关于javascript - Web Audio 可视化波形并与之交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9516324/

相关文章:

html - 使用 CSS 正确对齐换行文本

JavaScript HTML5-Canvas - 使用 SetInterval 绘制圆弧会导致锯齿状边缘

javascript - PHP 数组正确的 JSON 格式

javascript - Google 图片搜索已弃用

javascript - 选择要循环的数组

javascript - 将div放在背景div中

javascript - 能够在渲染 Highcharts 后显示检查系列的标签

javascript - 等待一个或另一个 Promise

javascript - Chrome 开发工具框架时间轴中的大 "idle"条

Javascript Canvas 描边不透明度未应用于每条线,而是连续超过线