我正在尝试将ThreeJS定位音频与WebRTC一起使用,以构建一种3D房间音频聊天功能。我能够获得跨客户端发送的音频流。但是,位置音频似乎不起作用。无论用户(摄像机)在哪里移动,音频的强度都保持不变。一些相关的代码发布在下面:
getUserMedia在承诺响应中具有以下内容
// create the listener
listener = new THREE.AudioListener();
// add it to the camera object
camera.object3D.add( listener );
//store the local stream to be sent to other peers
localStream = stream;
然后在每个WebRTC PEER连接上,我使用“位置音频”将接收到的流设置为网格。
// create the sound object
sound = new THREE.PositionalAudio( listener ); // using the listener created earlier
const soundSource = this.sound.context.createMediaStreamSource(stream);
// set the media source to as the sound source
sound.setNodeSource(soundSource);
// assume that I have handle to the obj where I need to set the sound
obj.object3D.add( sound )
为每个客户端完成此操作,并且这些本地流通过WebRTC相互发送,但是扬声器没有声音吗?谢谢