【问题标题】:WebAudio changing of orientation of Listener and/or PannerWebAudio 改变 Listener 和/或 Panner 的方向
【发布时间】:2018-11-18 03:53:40
【问题描述】:

我正在尝试了解 WebAudio API 的工作原理。我有两个对象;一个代表听者,一个代表源。并以下面的链接为例。我能够移动源并且声音位置发生变化。

https://mdn.github.io/webaudio-examples/panner-node/

已提供更改方向的命令:即this.panner.setOrientation 或this.listener.setOrientation。我的问题是:如果我有一个源或侦听器对象(在使用 ThreeJS 的画布模式下,即我们知道它的位置和旋转)我如何通过 JS 更改平移器或侦听器的方向(视情况而定) .

举个例子会有很大帮助。谢谢

【问题讨论】:

    标签: three.js web-audio-api


    【解决方案1】:

    有什么理由不使用 THREE 的 PositionalAudio 对象? https://threejs.org/docs/index.html#api/audio/PositionalAudio。这使您可以向网格对象添加声音,而 THREE 将负责移动它。如果您想获取与 AudioBuffer 不同的声音,只需将音频源连接到 PositionalAudio 对象的 .gain 即可。

    【讨论】:

    • 我注意到在使用位置音频时有一个回声..我在原始代码中没有注意到
    • 嗯,很有趣。有样品吗?我可以联系三个人。
    • 也许我可以分享整个用例。这就像一个点对点的音频会议,用户使用他们的麦克风互相交谈。用户自己被放置在一个画布空间(一个相机,就像我们通常做的那样)。使用 WebRTC P2P,我正在为每个用户创建多个输入流。当我第一次尝试使用 ThreeJS 位置音频时,我意识到即使“房间”中没有其他人,也会有回声。当我编写自己的 getMediaStream 时,我没有将流推送到用户自己的扬声器。这有帮助。剩下的是位置音频
    猜你喜欢
    • 2021-09-28
    • 2023-03-13
    • 2021-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多