Webrtc 网络音频:如何设置不同于扬声器的目的地?

Webrtc 网络音频:如何设置不同于扬声器的目的地?,webrtc,web-audio-api,web-mediarecorder,Webrtc,Web Audio Api,Web Mediarecorder,我很难理解如何使用一个音频上下文实现以下目标: 我使用createMediaStreamSource创建上下文的源–works 然后我将一个卷节点连接到源–工作 然后,我想创建两个输出:一个是“标准”输出(扬声器),第二个用于输入媒体录制器 我很难回答第三点。如何指定与扬声器不同的输出?输出仍然是我可以输入MediaRecorder的流吗?根据您的描述,我假设您有如下代码: mediaStreamAudioSourceNode .connect(gainNode) // your

我很难理解如何使用一个音频上下文实现以下目标:

  • 我使用createMediaStreamSource创建上下文的源–works

  • 然后我将一个卷节点连接到源–工作

  • 然后,我想创建两个输出:一个是“标准”输出(扬声器),第二个用于输入媒体录制器


  • 我很难回答第三点。如何指定与扬声器不同的输出?输出仍然是我可以输入MediaRecorder的流吗?

    根据您的描述,我假设您有如下代码:

    mediaStreamAudioSourceNode
        .connect(gainNode) // your volume node
        .connect(audioContext.destination);
    
    您只需添加另一个
    MediaStreamAudioDestinationNode
    ,并将其用作附加输出

    const mediaStreamAudioDestinationNode = new MediaStreamAudioDestinationNode(audioContext);
    
    gainNode.connect(mediaStreamAudioDestinationNode);
    
    const mediaRecoder = new MediaRecorder(mediaStreamAudioDestinationNode.stream);
    

    根据您的描述,我假设您有一些代码如下所示:

    mediaStreamAudioSourceNode
        .connect(gainNode) // your volume node
        .connect(audioContext.destination);
    
    您只需添加另一个
    MediaStreamAudioDestinationNode
    ,并将其用作附加输出

    const mediaStreamAudioDestinationNode = new MediaStreamAudioDestinationNode(audioContext);
    
    gainNode.connect(mediaStreamAudioDestinationNode);
    
    const mediaRecoder = new MediaRecorder(mediaStreamAudioDestinationNode.stream);
    
    就这么简单?我会试试的!就这么简单?我会试试的!