【发布时间】:2018-04-10 04:09:15
【问题描述】:
我一直在设计一个基于 html/js 的媒体播放器,其目标是为用户提供一些常见 DAW 中的简单播放和区域移动功能。我的 ui 由 5 个单独的曲目和播放控件组成。通过使用wavesurfer.js,我已经能够成功地在这些轨道内创建任意数量的wavesurfer 实例/区域,将它们拖放到我想要的任何位置,并播放选定的音频文件。
在我对 wavesurfer.js 的实验中,我发现每个实例都有自己的播放头,它指示所选音频文件的当前播放位置,并允许用户在该实例中导航播放。
我的问题是我还想要一个不包含在任何特定实例中的“主”播放头,并且不确定如何处理。
虽然那里有复杂的网络 DAW,但我还没有找到真正帮助我了解如何以我需要的方式处理音频播放的来源……但我知道以前有人做过。我已经阅读了 webaudio API 和 wavesurfer.js 文档,除非我在 wavesurfer 的功能中缺少某些东西,否则我假设我需要使用 webaudio API 来实现这个结果 - 我会从定义一个新的 AudioContext 对象开始由所有当前音频文件作为 AudioNodes 组成?
对于多个音频文件/wavesurfer 实例,其播放必须依赖于它们在整个轨道工作区上下文中的用户确定位置,我将如何处理音频播放?
感谢您的任何见解,我很感激。
【问题讨论】:
-
欢迎来到 SO。您已经标记了 JavaScript,并且您没有发布任何代码行,以便我们可以看到您做了什么以及您在哪里遇到了问题。您需要包含一些代码作为开始的基础,否则您将无法获得任何帮助
-
你可以使用一个更高范围的 var,你没有在你的构造函数中限定它。
标签: javascript html audio web-audio-api wavesurfer.js