微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 socket.io-stream 从 getUserMedia() 广播流

如何解决使用 socket.io-stream 从 getUserMedia() 广播流

为了改进我的 VoIP 应用程序,我想创建一个实时音频流,所以我成功创建了一个我可以听到的音频流,但现在我需要将流发送到服务器,然后服务器将其重新发送到每个人都在玩。

服务器代码(不工作,导致错误):

  var streamToSend = ss.createStream();
  ss(socket).emit('voice',streamToSend);
  ss(socket).on("voice",function(stream) {
    stream.pipe(streamToSend);
  });

要发送的客户端代码(不工作,导致错误):

if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
  console.log('getUserMedia supported.');
  navigator.mediaDevices.getUserMedia(
    {
      audio: true
    })
    .then(function (streamm) {
      ss(socket).emit('voice',streamm);
    });
} else {
  console.log('getUserMedia not supported on your browser!');
}

要接收的客户端代码(未测试接收):

 ss(socket).on("voice",function(stream) {
   var context = new AudioContext({
     latencyHint: 'interactive',sampleRate: 44100,});
   var source = context.createmediastreamsource(stream);
   source.connect(context.destination);
 });

出于安全考虑,我真的很想使用这种方法(我可以轻松地加密数据)。 我将不胜感激:D

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。