IP摄像头国标GB28181协议视频平台EasyGBS发布实时语音通讯功能
我们知道EasyGBS已经实现了语音对讲功能(国标GB28181流媒体服务器能否实现语音对讲),很多其他功能的开发都是基于语音对讲,因此我们对语音对讲的开发十分看重。
EasyGBS的远程控制平台的通讯功能,需要做到实时对讲,我们之前的语音对讲类似于微信发送语音消息,需要按一下讲话,然后松开时发送一段语音,无法做到实时对讲。
而我们现在需要实现的语音实时对讲是当开启语音时,通过发送websocket,当数据达到协定大小时,即自动发送过去。
通过触发麦克风按钮事件,发送websocket请求,当再次点击时,关闭语音。通讯实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | 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播放界面:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结