目录

1、搭建自己的turn服务器

2、搭建自己的mosquitto服务器

3、利用自己的服务器,用kvs webrtc c-sdk实现打洞


1、搭建自己的turn服务器

1.1、coturn 服务器搭建记录

turn 服务器的搭建大家也可以参考网上的一些教程,也可以根据本文的一些粗略步骤来搭建验证

1.1.1 ubuntu安装 命令(网上有一些编译源码安装的,本人不想太折腾,直接apt 安装省时省力)

apt-get install coturn

安装成功后,ps -ef | grep turn  可以查看到turnserver 是否自动运行

turnser+     579       1  0 Dec01 ?        00:03:33 /usr/bin/turnserver --daemon -c /etc/turnserver.conf --pidfile /run/turnserver/turnserver.pid

如果启动了将其停下来 systemctl stop coturn  停下后进行下面的修改配置

1.1.2 corturn 配置修改

配置目录,/etc/turnserver.conf  拷贝一份conf

cp  /etc/turnserver.conf /etc/turnserver.confbak

turnadmin 命令添加用户名,密码,域:

turnadmin -a -u youname -p yourpasswd -r yourdomain

修改内容

listening-port=3478 #监听端口

listening-device=eth0 #监听的网卡

external-ip=xx.xx.xx.xx/kk.kk.kk.kk     #xx公网ip/kk内网ip ip映射,如果不填可能后面测试ice server 的时候会失败

user=name:passwd #用户名:密码 (上面turnadmin 命令创建的)

realm=域名 #一般与turnadmin创建用户时指定的realm一致 (域名,配合servername=,可以在添加用户密码的时候指定)

1.1.3  服务测试小知识

安装成功后,修改完配置,(重启脚本 /etc/init.d/coturn)重启服务之后测试通路

turnserver -h

上面的命令查看turnserver支持参数

手动拉起Server 端

turnserver -v --syslog -L xx.xx.xx.xx -E xx.xx.xx.xx  --max-bps=3000000 -f -m 3 --min-port=32355 --max-port=65535 --no-tls --no-dtls --no-auth

-L 监听ip (server local 本地ip)

-E relayip (server local ip)

--min-port=32355 --max-port=65535

端口范围,要在控制台加入白名单(如果启用了防火墙要在防火墙中设置端口范围udp/tcp port 范围)

注:以上配置信息可在turnserver.conf 中配置

turnutils_uclient -t -n 1000 -m 2 –l(length) 3037 -e kk.kk.kk.kk -g -X xx.xx.xx.xx -r 49153

-t : tcp(default udp)

-r 端口, 控制台白名单端口(此必要参数)

-e :peer ip  (client 要连接的, client 本地ip)

-X relay ip ( relay server ip) 重要的参数

-n  Number of messages to send (Default: 5).

-m Number of clients (default is 1).

-l      Message length (Default: 100 Bytes).

-g      Include DONT_FRAGMENT option.

以上测试基本可以确认turn 服务器已经具备使用条件,具体的数据库等配置还需要进一步的补充;

Trickle ICE

该测试网页,测试默认走的udp, 所以一定要开放udp 端口

今天先记录到这里,mosquitto 服务器搭建网上有说明,这里就不再多说了,后面有空再整理如何替换信令服务器的方法

2、搭建自己的mosquitto服务器

3、利用自己的服务器,用kvs webrtc c-sdk实现打洞

用mosquitto替换AWS KVS(Kinesis Video Streams)之WebRTC-C库的信令控制相关推荐

  1. AWS KVS(Kinesis Video Streams)之WebRTC的C库

    作为小白用户编译就卡出各种问题.各种环境问题各种bug调试. 针对亚马逊的kvs 的vs2019编译去除kvs的信令服务器代码,实现自己的mqtt信令控制.最终可以p2p发送视频数据和音频数据. 编译 ...

  2. AWS KVS(Kinesis Video Streams)之WebRTC的C库测试

    想要验证AWS KVS with WebRTC的嵌入式C库,我们将其源码编译(详见WebRTC编译过程)后,可以运行其提供的sample,注:该过程是在Linux环境上. 1.编译结束后,我们在bui ...

  3. AWS KVS(Kinesis Video Streams)之WebRTC集成过程(六)

    因为我们的实际的使用过程是智能摄像头设备(门铃/Camera)和Echoshow(实际上是Alexa)对接,实现语音全双工,我们计划集成AWS提供的完整的WebRTC的方案(SDK),因此在所有依赖库 ...

  4. AWS KVS(Kinesis Video Streams)之WebRTC移植编译(五)

    在使用KVS完整的WebRTC的SDK(包括信令.STUN/TURN等),我们还需要编译(详见SDK的依赖项)如下两个库 1.amazon-kinesis-video-streams-producer ...

  5. AWS KVS(Kinesis Video Streams)之WebRTC集成过程报错问题整理(七)

    在前面我已经将君正T31X平台的WebRTC相关的依赖库编译完成,且现在将kvsWebrtcClientMaster测试用例也需要编译出来,在Camera中运行,验证依赖库的正确性. 根据自己编写的C ...

  6. AWS KVS(Kinesis Video Streams)之WebRTC集成过程报错问题整理(八)

    1.用例情况: [1]第一组 master:君正平台的 kvsWebrtcClientMaster viewer:https://us-west-2.console.aws.amazon.com/ki ...

  7. AWS KVS(Kinesis Video Streams)之WebRTC移植编译(一)

    本文在于记录amazon-kinesis提供的设备端WebRTC SDK的依赖项编译过程,该过程在嵌入式设备君正平台验证 1.首先我们可能需要一个墙外的服务器拉取代码,我是在开启了一个AWS的美国环境 ...

  8. AWS KVS(Kinesis Video Streams)之WebRTC移植编译(三)

    继上一篇文章后,中途被其他事情耽误两周,现在继续... 编译第三方库: 一.[君正平台:编译usrsctp] 1.下载源码 git clone https://github.com/sctplab/u ...

  9. AWS KVS(Kinesis Video Streams)之WebRTC依赖项

    KVS WebRTC依赖于openssl.srtp.usrsctp.kvspic.我们挨个来编译,如果我们需要往嵌入式设备中移植,需要移植这些依赖项,因此在编译移植前,我们需要得到源码. 先下载所有代 ...

最新文章

  1. 开发日记-20190427
  2. java越权发送邮件_已登录用户 越权 访问action方法怎么解决?
  3. C专家编程-Chapter6 运行时数据结构(转)
  4. 多晶硅价格已处于阶段性高点
  5. 怎么使用ar打包静态库
  6. idea报错 电脑死机蓝屏
  7. 用gdb调试nasm汇编程序
  8. ibm v3700添加硬盘_机 · 科普帖丨从大到小又从小到大,硬盘这些年是怎么过来的...
  9. UEFI+GPT安装Win10和RHEL6.5双系统
  10. python句柄无效_python免注册调用大漠出现错误句柄无效
  11. 通信教程 | USB、HDMI、DP接口及速度
  12. 计算机不能上网查找原因的步骤,电脑能连接上wifi但不能上网的原因_电脑能连接上wifi但不能上网的解决方法...
  13. 烟花背景的3D打字魔方相册(末尾附加下载地址)
  14. 读书百客:《小星》赏析
  15. 图片延迟加载对seo有什么影响呢?
  16. VBA开发:设置单元格数据有效性
  17. 工具及方法 - 电子烟开发中使用温度测试工具
  18. Python第五章序列,集合,字典
  19. 国家计算机技术与软件专业技术资格(水平)考试与职称有何对应关系?
  20. asp.net zero 8.2 学习-11-Metronic替换google字体,加速网页加载速度

热门文章

  1. 企业IT部门基本岗位配置
  2. Ubuntu 18.04 升级 20.04 Bate
  3. 解析XML数据,必看
  4. 社群运营方案的基本要素有哪些?
  5. 1037. 在霍格沃茨找零钱(20) python篇
  6. Unity中关于 Mipmap
  7. 《语言本能》笔记一——孩子天生会说话
  8. css怎么设置上三角,如何使用css实现三角符号 (附代码)
  9. CISCO CCNA VLAN
  10. android怎样添加图片锐化功能,如何在android中锐化图像?