GB28181流媒体服务搭建:https://www.liveqing.com/docs/download/LiveGBS.html

代码示例

在vue中,利用websocket进行高性能的GB28181语音对讲前端代码

    ......
talkStart(e) {
if(!this.ws) {
var ws = new WebSocket(this.wsTalkURL());
ws.onopen = evt => {
console.log("ws talk open");
this.ws = ws;
}
ws.onclose = evt => {
console.log("ws talk close");
}
ws.onerror = evt => {
console.log("ws talk error", evt);
}
}
var $target = $(e.currentTarget);
if(this.recorder) {
$target.addClass("active");
this.recorder.start();
return;
}
LiveRecorder.get((rec, err) => {
if(err) {
alert(err);
return
}
// this.$refs["player"].setMuted(true);
$target.addClass("active");
this.recorder = rec;
this.recorder.start();
}, {
sampleBits: 16,
sampleRate: 8000,
pcmCallback: pcm => {
// binary to base64 string
var reader = new window.FileReader();
reader.onloadend = () => {
var base64 = reader.result;
var base64 = base64.split(',')[1];
if(this.ws) {
this.ws.send(base64);
}
}
reader.readAsDataURL(pcm);
}
})
},
talkStop() {
if(this.recorder) {
this.recorder.stop();
// this.recorder = null;
$(this.$el).find(".fa-microphone.active").removeClass("active");
// this.$refs["player"].setMuted(false);
}
if(this.ws) {
this.ws.close();
this.ws = null;
}
},
......

LiveGBS中GB28181协议摄像头语音对讲前端采集代码的更多相关文章

  1. 轻便的gb28181协议中的rtp+ps格式视频流的封装和解析

    streams 轻便的gb28181协议中的rtp+ps格式视频流的封装和解析 packet packet实现ps的相关封装和解析, example/enc 通过joy4来读本地视频文件,然后调用Rt ...

  2. iOS语音通话(语音对讲)

    中间参考了别人的Demo,下载地址不记得了. 因为项目需要做一个语音对讲功能,其实说白了就是类似QQ的语音通话,但是资料少之又少,研究了好久,才跟同事弄出一个粗略的版本.我记性不好,所以来记录一下,也 ...

  3. EasyDarwin开源摄像机访问EasyCamera中海康摄像头语音对讲和云台控制转发实现

    转自:http://blog.csdn.net/yanzhuomin/article/details/52887311 EasyCamera中关于摄像头SDK的调用都集中在EasyCameraSour ...

  4. EasyDarwin开源流媒体云平台之语音对讲功能设计与实现

    本文由EasyDarwin开源团队成员Alex贡献:http://blog.csdn.net/cai6811376/article/details/52006958 EasyDarwin云平台一直在稳 ...

  5. Android开发--仿微信语音对讲录音

    原文地址:http://www.2cto.com/kf/201502/378704.html 自微信出现以来取得了很好的成绩,语音对讲的实现更加方便了人与人之间的交流.今天来实践一下微信的语音对讲的录 ...

  6. Hybrid混合开发中schema协议的使用与封装

    混合开发中JS与APP通信的实现原理: JS通过schema协议,传递参数和全局回调函数给APP端 APP执行完(如微信扫一扫)后,调用协议中传入的回调函数,在前端执行回调处理. 默认写法: < ...

  7. Android实现仿微信实时语音对讲功能|与女友游戏开黑

    与亲朋好友一起玩在线游戏,如果游戏中有实时语音对讲能力就可以拉进玩家之间的距离,添加更多乐趣.我们以经典的中国象棋为例,开发在线语音对讲象棋.本文主要涉及如下几个点: 在线游戏的规则,本文以中国象棋为 ...

  8. DNS 中的协议字段详细定义

    DNS中的协议字段定义 Table of Contents 1 概述 2 DNS Classes 3 DNS OpCodes 4 DNS RCODEs 5 DNS Label Types 6 DNS资 ...

  9. Android中直播视频技术探究之---摄像头Camera视频源数据采集解析

    一.前言 在视频直播中一般都是两种视频数据源,一个是摄像头数据,一个是录制桌面数据,而一般来说美女妹子直播都是来自于摄像头数据,游戏直播都是录制桌面数据的,那么今天就来看看第一个数据源数据采集分析,A ...

  10. Android开发中如何调用摄像头的功能

    我们要调用摄像头的拍照功能,显然 第一步必须加入调用摄像头硬件的权限,拍完照后我们要将图片保存在SD卡中,必须加入SD卡读写权限,所以第一步,我们应该在Android清单文件中加入以下代码     & ...

随机推荐

  1. HyperMesh视觉控制

    在HyperMesh中,模型视角控制可通过标准视图(Standard Views)工具栏.三维视图控制(3D View Controls)工具栏以及鼠标实现. (1) 标准视图工具栏图标.   (2) ...

  2. Java 常用线程池

    快捷创建线程池方式 Java通过Executors提供四种线程池,分别为: 1.newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需求,可以灵活回收空闲线程,若无可回收 ...

  3. FFmpeg开发笔记(七十)Windows给FFmpeg集成AV1编码器libsvtav1

    ​AV1是一种新兴的免费视频编码标准,它由开放媒体联盟(Alliance for Open Media,简称AOM)于2018年制定,融合了Google VP10.Mozilla Daala以及Cis ...

  4. Mybatis - 精巧的持久层框架-缓存机制的深刻理解

    Mybatis缓存机制 Mybatis的缓存机制是其性能优化的核心,也是面试中的高频考点.理解它不仅能写出更高性能的代码,还能明白框架设计中对性能与数据一致性权衡的智慧. 此教程从概念到实战,从基础到 ...

  5. SQL Server 部分包含数据库的原理

    原文链接:https://blog.csdn.net/zhoujunah/java/article/details/103513426 包含是针对数据库独立性而来的,非包含数据库(SQL Server ...

  6. 脚手架express-generator创建项目

    安装脚手架工具 npm install -g express-generator 创建项目使用 express 命令 来快速从创建一个项目目录 express demo -e -e表示使用 ejs 模 ...

  7. 数学建模 拟合 如果知道公式了 如何使用matlab的拟合工具箱

    简介 在数学建模中,有的时候你知道公式的大致形式,但是要求系数.可以使用matlab的拟合工具箱 简单code x=[1,2,3,4,5]; y=[1,3,6,10,15]; cftool cftoo ...

  8. SciTech-Physics-Glass: “浮法”玻璃-Sn(锡) 和 玻璃(混合物) 的物理性质

    "浮法"玻璃生产制造 注意点: 小作坊采用"铅"取代"锡",而长期使用"含铅制品"是有害的. 为保护人类健康,许多现代工 ...

  9. 模拟beego登陆

    模拟beego登陆 package main import ( "fmt" "time" "io/ioutil" "net/url ...

  10. Win10专业版更新驱动出现闪屏的问题

    有一位深度技术的用户,在电脑上安装的是win10系统,安装完后并没有出现什么问题.但是,之后使用驱动精灵更新了驱动,重启之后电脑就出现闪屏了,系统也进不去的问题.该如何解决呢?接下来,深度官网小编就来 ...