概述

音视频通信时为了节省服务器带宽,通信效率最好的就是p2p,但是在现实的应用场景中,我们的客户端都是在大局域网内部的,stun协议就是要解决如何穿透这些局域网实现p2p。但在有些网络中不支持穿透就需要使用TURN或者SFU进行转发。

metaRTC5.0新版实现对TURN支持。metaRTC5.0提供有metaRTC客户端和浏览器TURN的demo。

源码下载

GitHub - metartc/metaRTC: A cross-platform WebRTC SDKA cross-platform WebRTC SDK. Contribute to metartc/metaRTC development by creating an account on GitHub.https://github.com/metartc/metaRTCmetaRTC: metaRTC为纯C版本的webrtc 可与谷歌webrtc类库互通,支持Webrtc/SRT/RTMPhttps://gitee.com/metartc/metaRTC

浏览器TURN

如果浏览器使用turn,如ipc等客户端则不需要配置

在metaipc5_html中js/srs.sdk.p2p.js文件中,用下面代码替换280行代码

    const config = {bundlePolicy: 'balanced',// certificates?: RTCCertificate[];// iceCandidatePoolSize?: number;iceTransportPolicy: "relay",//  allrtcpMuxPolicy : 'negotiate',iceServers: [{urls: "turn:192.168.1.102:3478",username: "metartc",credential: "metartc"}]};self.pc = new RTCPeerConnection(config);

metaRTC Turn配置

配置文件yang_config.ini中

iceCandidateType参数可以在配置文件中配置,也可以在程序中赋值。

typedef enum{YangIceHost,YangIceStun,YangIceTurn
}YangIceCandidateType;

配置参数后metaRTC会根据参数进行ice处理。

coturn配置

编辑配置文件/etc/turnserver.conf

# Uncomment if extra security is desired,
# with nonce value having a limited lifetime.
# The nonce value is unique for a session.
# Set this option to limit the nonce lifetime.
# Set it to 0 for unlimited lifetime.
# It defaults to 600 secs (10 min) if no value is provided. After that delay,
# the client will get 438 error and will have to re-authenticate itself.去掉#stale-nonce=600注释
改为 stale-nonce = 0
#设置用户名密码 user=username2:password2
user=metartc:metartc
#设置realm
realm=metartc.cn
#设置侦听端口,默认为3478
listening-port=3478

metaRTC5.0实现webrtc的TURN支持相关推荐

  1. Spring3.0.5源码扩展支持AOP 获取HttpServletResponse

    Spring3.0.5源码扩展支持AOP 获取HttpServletResponse.老项目直接升级Spring版本风险无法评估,所以直接扩展Spring包支持低版本没有的功能. 目录 Spring扩 ...

  2. ZLMS教学管理平台系统V1.2.0最新版本发布,支持纯Web视频直播点播,还带运营在线支付功能!完全免费提供!...

    ZLMS教学管理平台系统V1.2.0最新版本发布,支持纯Web视频直播,点播!还带在线支付功能! ZLMS 开发团队在综合参考了各方面的合理建议之后,经过两个多月的紧张开发及测试,终于发布V1.2.0 ...

  3. ASP.NET Core 6.0对热重载的支持

    .NET 热重载技术支持将代码更改(包括对样式表的更改)实时应用到正在运行的程序中,不需要重启应用,也不会丢失应用状态. 一.整体介绍 目前 ASP.NET Core 6.0 项目都支持热重载.在以下 ...

  4. JeeWx捷微3.0多触点版本发布,支持微信公众号,微信企业号,支付窗——喜迎双“旦”

    喜迎双旦,JeeWx捷微3.0多触点版本发布^_^ JeeWx捷微V3.0--多触点版本管理平台(支持微信公众号,微信企业号,支付窗) JeeWx捷微V3.0.0版本是一个颠覆和跨时代版本,官方团队历 ...

  5. Magento支付宝手机网站支付插件V6.0旗舰版发布,支持在微信中使用支付宝支付,订单重新支付功能!...

    2019独角兽企业重金招聘Python工程师标准>>> 功能 严格按照支付宝接口文档编写代码. 支付宝异步通知机制,确保订单状态及时更新,无丢失遗漏. 订单完美对接:支付后即使关掉支 ...

  6. IT66311 是一款单输入、单输出 HDMI 2.0 重新定时缓冲器,支持高达 6.0Gbps 的信令速率。

    IT66311 是一款单输入.单输出 HDMI 2.0 重新定时缓冲器,支持高达 6.0Gbps 的信令速率.它符合最新的HDMI 2.0a规范,并向后兼容HDMI1.4规范.凭借6.0Gbps功能, ...

  7. FreeSwitch(CentOs7.0)+WebRTC(web)+座机呼叫(带SSL注册证书)

    FreeSwitch(CentOs7.0)+WebRTC(web)+座机呼叫完成版带SSL注册证书 前言 1.freeswitch的安装,CentOS7原本yum安装起来比较慢,提倡更换yum源会快许 ...

  8. 流媒体服务器开发——SRS 4.0与WebRTC音视频通话丨音视频开发丨嵌入式开发丨FFmpeg丨iOS音视频开发

    SRS 4.0与WebRTC音视频通话 1. 音视频高薪岗位都需要什么技能点 2. WebRTC的技术点分析 3. SRS 4.0如何使用WebRTC 视频讲解如下,点击观看: 流媒体服务器开发--S ...

  9. LT6711A-HDMI2.0到eDP / DP1.2支持4K 60Hz

    LT6711AHDMI2.0到eDP / DP1.2支持4K 60Hz LT6711A 制造商:Lontium LT6711A 封装:QFN64 7.5*7.5 LT6711A 最小包装:2600/包 ...

  10. yuml 保存为图片_Towxml 3.0 让微信小程序支持 LaTex 数学公式及 yuml 流程图

    Towxml 3.0 让微信小程序支持 LaTex 数学公式及 yuml 流程图 Towxml 是一个让小程序可以解析 Markdown,html 的解析库. 能够使小程序完美解析 Markdown ...

最新文章

  1. 那些总是写“烂代码”的同学,强烈推荐你用这款IDEA插件!
  2. 一些数字:全球企业的人工智能应用进展
  3. 10 个有用的 PHP 代码
  4. cx+oracle+sql含中文,sql 判断字段值是是否包含中文字符
  5. 分析:Java的好处究竟在哪里?
  6. python位运算符_详细介绍Python语言中的按位运算符
  7. 你真的了解Python吗?这篇文章可以让你了解90%,赶紧收藏!
  8. android 自定义 打包文件类型,Android设置apk打包文件名报错
  9. U811.1接口EAI系列之二-BOM构成-委外BOM构成--VB语言
  10. 挑战王者荣耀“绝悟” AI,会进化的职业选手太恐怖了!
  11. 842. 将数组拆分成斐波那契序列
  12. Choosing Capital for Treeland codeforce 219-D
  13. php绘制甘特图,如何用excel做甘特图?甘特图制作方法图解
  14. ThinkPad Win7更改鼠标滚轮设置问题
  15. 生信分析电脑推荐_生信工程师的个人计算机配置推荐
  16. java-php-python-ssm无人智慧药柜系统设计计算机毕业设计
  17. 悲观锁、乐观锁以及分布式锁
  18. java之自定义注解的完整使用
  19. clearWState(WState_Polished)编译出错
  20. Frontend 当前前端的三种渲染方式

热门文章

  1. kindle资源网址
  2. linux i3 桌面,Linux 桌面平铺管理器 - i3wm
  3. [现代控制理论]6_稳定性_李雅普诺夫_Lyapunov
  4. scala下载和安装——aboutyun
  5. 广数980系统锁解除密码
  6. matpower安装问题
  7. Ubuntu常用软件大全
  8. svnserver配置文件详解
  9. 软考高项--项目管理概述
  10. DB2错误码sqlcode对应表