WebRTC学习资料大全
在学习WebRTC,找了些资料,记录一下,供以后查询。
有些需要FQ才能看
WebRTC 介绍
官网在这里:https://webrtc.org/。然后这里有一个官方的Getting Started:https://webrtc.org/start/。
Google关于WebRTC的幻灯片:
然后是WebRTC的SPEC:
WebRTC项目源码地址:https://chromium.googlesource.com/external/webrtc。
Native开发文档:https://webrtc.org/native-code/development/。
教程
入门的,首选codelabs的Real time communication with WebRTC:
然后是html5rocks上的基础教程:
开发文档、入门教程,参考这里:
这里,http://piratefsh.github.io/projects/2015/08/27/webrtc-stun-turn-servers.html,是一个人部署stun和turn server的记录。
进阶一点的,看这个,比较完整的介绍和实践:
还有这个,介绍如何用WebRTC一步一步实现视频会议:
还找到一个中文版的教程,通过WebRTC实现实时视频通信:
STUN/TURN/Signaling解决方案
WebRTC需要Signaling、STUN、TURN等Server,Google有自己的,还有很多开源的,也有收费的。
免费的:
- Signaling Server需要自己实现,如果你用Nodejs和Socket.io的话,比较容易做。https://codelabs.developers.google.com/codelabs/webrtc-web这里就有一个示例。
- Google的STUN服务器:
stun:stun.l.google.com:19302 - restund:http://www.creytiv.com/restund.html。
- rfc5766-turn-server: https://code.google.com/p/rfc5766-turn-server。挪到这里了:https://github.com/coturn/rfc5766-turn-server/,支持STUN和TURN
- http://www.pjsip.org/, PJSIP,支持STUN、TURN、ICE。
- https://nice.freedesktop.org/wiki/,libnice,支持ICE和STUN。
- http://www.stunprotocol.org/,STUNTMAN,对应的代码,https://github.com/jselbie/stunserver
- https://sourceforge.net/projects/stun/,STUN client and server
- https://github.com/coturn/coturn,C++实现的STUN和TURN服务器,这里有一个安装指南:https://www.webrtc-experiment.com/docs/TURN-server-installation-guide.html
这里有一个WebRTC服务器搭建的文档:http://io.diveinedu.com/2015/02/05/%E7%AC%AC%E5%85%AD%E7%AB%A0-WebRTC%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%90%AD%E5%BB%BA.html。
收费的解决方案:
开源示例
还有一些开源的示例代码,这个比较全了:
对应的demo在这里(Chrome打开可以看效果):
回退一级,还有更多资源:
还有一个,SimpleWebRTC:
还有:
嗯,接下来这个更赞,支持多人视频会议,开源的:
世界上第一个基于HTML5的SIP客户端:https://www.doubango.org/sipml5/。他们的GitHub主页:https://github.com/DoubangoTelecom/doubango。
2016.11.10补充
又找到一个国内的小示例,WebRTC实现网页版多人视频聊天室:http://www.cnblogs.com/FuzhePan/p/3899551.html。看样子是多人聊天室,一对一视频的实现。
还有一个WebRTC native demo:http://sourcey.com/webrtc-native-to-browser-video-streaming-example/,能够在C++的客户端和浏览器之间视频通信。
在线演示
搜集了一些在线演示的示例:
- https://apprtc.appspot.com
- http://www.simpl.info/getusermedia
- https://webrtc.github.io/samples
- http://webcamtoy.com/app/
- http://www.shinydemos.com/facekat/
- http://idevelop.ro/ascii-camera/
- https://meet.jit.si/,多人的视频会议
围绕WebRTC的框架和服务
框架,视频通信的:
- https://github.com/webrtc/adapter,封装了浏览器差异
- https://github.com/henrikjoreteg/SimpleWebRTC,前面说过这个链接了
- https://github.com/priologic/easyrtc
- https://github.com/webRTC/webRTC.io
Peer间传递数据的:
服务:
RTCMultiConnection,JS封装库和Signaling服务:
图书
- 《Real-Time Communication with WebRTC》,https://bloggeek.me/book-webrtc-salvatore-simon/
- https://bloggeek.me/best-webrtc-book/,这里介绍了5本书。
课程
WebRTC学习资料大全的更多相关文章
- 【2016年特别福利】史上最全CSS学习资料大全
css学习篇 [2016年特别福利]史上最全CSS学习资料大全
- Angular学习资料大全和常用语法汇总(让后端程序员轻松上手)
前言: 首先为什么要写这样的一篇文章呢?主要是因为前段时间写过一些关于Angualr的相关实战文章,有些爱学习的小伙伴对这方面比较感兴趣,但是又不知道该怎么入手(因为认识我的大多数小伙伴都是后端的同学 ...
- flutter全栈开发学习资料大全 免费flutter学习视频 文字教程!
flutter今年特别火,google推出flutter就是为了一次开发全平台应用,包括PC端,手机wap端,android,ios直接生成APP应用,如果真的能像谷歌说的,那我们开发人员就真的好好学 ...
- sencha touch 入门学习资料大全(2015-12-30)
现在sencha touch已经更新到2.4.2版本了 重新整理一下资料 官方网站:http://www.sencha.com/products/touch/ 在线文档:http://docs.sen ...
- JAVA学习资料大全
最高端的JAVA架构师资源(来自龙果学院 价值¥1399元).JAVA互联网分布式架构(龙果学院 价值¥899元).Spring Boot(2017年最新 包括源码原理分析) + Spring Clo ...
- sencha touch 入门学习资料大全
现在sencha touch已经更新到2.3.1版本了 重新整理一下资料 官方网站:http://www.sencha.com/products/touch/ 在线文档:http://docs.sen ...
- Java+Python+前端 学习资料大全 百度云盘
Java架构师3大阶段 链接:https://pan.baidu.com/s/1DlXh33y5t4cZUmZH0cLvCw 提取码:5s76 2019前端架构阶段 链接:https://pan.ba ...
- Ext JS 6 入门学习资料大全(2016-12-14)
现在 sencha touch已经升级为 Ext JS 6 了重新整理下资料 官方网站:https://www.sencha.com/ 在线文档:http://docs.sencha.com/extj ...
- Ext JS 6 入门学习资料大全(2018-03-07)
现在 sencha touch已经升级为 Ext JS 6 了重新整理下资料 官方网站:https://www.sencha.com/ 在线文档:http://docs.sencha.com/extj ...
随机推荐
- JDE隐藏Constant等(Hide Object)
Grid中隐藏列,列值可以使用属性配置,但是列表头Constant需要用函数修改,如下所示:
- BPMX3模拟登录
实现功能只需要输入一个帐号即可登录系统. 需要实现上面的功能需要: 1.编辑imitate.jsp页面 <%@page import="com.hotent.core.util.Con ...
- FZU 2027 单词问题 map标记字符串典型问题
题目链接:单词问题 找一个字符串里的所有单词,重复的只输出一次.关于map函数key值是字符串的问题一直比较含糊... 挣扎了一番,大概是,map的key值是char型数组的时候,标记的是地址,于是有 ...
- 小记:获取post和get请求。
package com.lixu.httpget_post; import java.io.ByteArrayOutputStream; import java.io.IOException; imp ...
- 一模 (1) day1
第一题:(水题) 题目大意:求出n个 X% (X是小于等于2位的整数) 的乘积,去掉末尾的0: 解题过程: 1.直接 把整数乘好,然后确定小数点的位置,去掉多余的0 输出即可. 第二题:(搜索题) ...
- javascript 错误处理
try{ var date=new Date(); date.test();//调用date的未定义的test方法; document.wrire("try块执行结束<br>&q ...
- C#使用SqlDataReader读取数据库数据时CommandBehavior.CloseConnection参数的作用
主要用在ExecuteReader(c)中,如果想要返回对象前不关闭数据库连接,须要用CommandBehavior.CloseConnection: CloseConnection解决了流读取数据模 ...
- CSU 1021 B(Contest #3)
Description 从m个不同元素中取出n (n ≤ m)个元素的所有组合的个数,叫做从m个不同元素中取出n个元素的组合数.组合数的计算公式如下: C(m, n) = m!/((m - n)!n! ...
- Quartz之主方法运行
import static org.quartz.JobBuilder.newJob; import static org.quartz.TriggerBuilder.newTrigger; impo ...
- java面试题之ssh
1.写出你熟悉的开源框架以及各自的作用(项目中为什么使用SSH) 答:框架:hibernate,spring,struts1/struts2. Hibernate主要用于数据持久化:封装了JDBC操作 ...