如何使用Kurento Media Server实现用于音频会议的MCU?

时间:2016-04-01 04:53:58

标签: webrtc audio-streaming kurento

我可以使用WebRTC使用Kurento流式传输视频,我需要使用Kurento Media服务器的MCU功能实现多方音频会议。因此,来自所有客户端的音频将被合并,并使用WebRTC以高效的方式将所有客户端的音频组合回发送。

如果它能够工作,那么我们只需要两个连接(一个用于发送,一个用于接收),否则我们需要使用WebRTC与所有客户端进行对等连接。建立与所有客户端的对等连接是不可行的。

请建议我使用Kurento Media Server实现音频MCU的示例代码,或指导我使用Kurento Media Server实现相同的代码。

1 个答案:

答案 0 :(得分:3)

我担心没有代码允许un Kurento。有Composite媒体元素,但通常用于音频和视频。它将流组合成所需大小的单个流矩阵,通常超过9个流可能存在性能问题。如果你只想处理音频,肯定它可以处理超过9个流。要仅使用音频,只需将AUDIO流连接到HubPort

编辑1

生成所需媒体元素的代码,以及建立纯音频连接的正确方法如下:

WebRtcEndpoint webrtc = new WebRtcEndpoint.Builder(pipeline).build();
Composite composite = new Composite.Builder(pipeline).build();
HubPort hubport = new HubPort.Builder(composite).build();
webrtc.connect(hubport, MediaType.AUDIO);

请注意,该连接是从WebRtcEndpointHubPort的。如果你需要它是双向的,你也需要以这种方式连接。

hubport.connect(webrtc, MediaType.AUDIO);