IP摄像头国标GB28181协议视频平台EasyGBS发布实时语音通讯功能

我们知道EasyGBS已经实现了语音对讲功能(国标GB28181流媒体服务器能否实现语音对讲),很多其他功能的开发都是基于语音对讲,因此我们对语音对讲的开发十分看重。

EasyGBS的远程控制平台的通讯功能,需要做到实时对讲,我们之前的语音对讲类似于微信发送语音消息,需要按一下讲话,然后松开时发送一段语音,无法做到实时对讲。

而我们现在需要实现的语音实时对讲是当开启语音时,通过发送websocket,当数据达到协定大小时,即自动发送过去。

通过触发麦克风按钮事件,发送websocket请求,当再次点击时,关闭语音。通讯实例:

 methods: {
    collectionAudio() {
      let audio = $(".audioFont");
      audio.removeClass("iconguanbiduijiang");
      audio.addClass("iconduijiang");
      this.recorder = new Recorder({
        sampleBits: 16, // 采样位数,支持 8 或 16,默认是16
        sampleRate: 8000, // 采样率,支持 11025、16000、22050、24000、44100、48000,根据浏览器默认值,我的chrome是48000
        numChannels: 1,
      });
      this.recorder.start().then(
        () => {
          // 开始录音
          this.audioWS = new WebSocket(
            `wss://${window.location.host}/api/v1/ws_talk/${this.DeviceID}/${this.ID}`
          );
        },
        (error) => {
          // 出错了
          console.log(`${error.name} : ${error.message}`);
        }
      );
    },
 

本文我们只是做了一个范例,大家可以简单参考一下。EasyGBS提供RTSP、RTMP、HTTP-FLV、HLS等多种协议流输出,并且对外提供服务器获取状态、信息,控制 HTTP API接口,欢迎大家来试用。

EasyGBS播放界面:

 
posted on 2020-11-05 10:35  EasyGBS  阅读(439)  评论(0)    收藏  举报