WebRtc 概念
运行模式
- P2P
- SFU
- MCU
Mac 上到Android 编译环境
每个平台AppRTCMobile 之间是可以实现自推自收和两终端互相推收.
下载代码
git config –global http.proxy 127.0.0.1:1087
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=$PATH:/Users/fushp/Desktop/workspace/work/notes/code/WebRTC/depot_tools
- fetch –nohooks webrtc_ios
- 编辑 当前目录下 .gclient ,在target_os上加上mac 用于mac开发
编译
WebRTC::FEC
https://www.freesion.com/article/481957484/
- 源码位置
相关源码在/src/webrtc/modules/rtp_rtcp/source目录下
code 解析
webrtc/sdk/android_gradle
使用 Android Studio来启动上面的工程
1.启动一个APPRTC Server
APPRTC Server 包含了三个模块
Signaling server
ICE Server
用于UDP 的NAT 穿透协议
STUN: NAT 穿透的一套工具,内网外网映射机制TURN Server
TURN协议是STUN扩展,一对多
docker run –rm
-p 8080:8080 -p 8089:8089 -p 3478:3478 -p 3478:3478/udp -p 3033:3033
-p 59000-59500:59000-59500/udp
-e PUBLIC_IP=192.168.220.39
-it piasy/apprtc-server
端口介绍:
TCP 8080 is used for room server;
TCP 8089 is used for signal server;
TCP 3033 is used for ICE server;
TCP 3478, UDP 3478 and UDP 59000-65000 is used for TURN/STUN server;
UDP范围 可以修改下
- PUBLIC_IP 指的是 APPRTC Server 地址
概念
PeerConnection(PC)
RTCPeerConnectionSDP (描述会话的协议)
ICE
用于UDP 的NAT 穿透协议ICE Candidate
视频协议
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 337950548@qq.com