基于webrtc实现音视频通信

与传统通信方式不同,p2p通信的实现过程不依赖于中间服务器的信息收发,直接通过信令等完成通信过程的建立;

通过websocket实现信令服务器的建立,而通过信令来确定通信双方;

webrtc通过 sdp协议来完善通信双方间协议的一致性;

webrtc通过ice机制找到对方并建立联系,实现nat穿越;

核心对象 RTCPeerConnection

RTCPeerConnection 作为创建点对点连接的 API,是我们实现音视频实时通信的关键。

整个**媒体协商过程(SDP)**可以简化为三个步骤对应上述四个媒体协商方法:

1、呼叫踏创建 Offer(createOífer)井将 offer 消息(内容是呼叫罐的SDP 信息)通过信令服务器传送给投收端,同时调用 setLocalDesccription 将含有本地 SDP 信息的 Offer 保存起来;

2、投收踏收到对端的 Ofer 信息后调用 setRemoteDesccription 方法将含有对蹊 SDP 信息的 Offcr 保存起来,并创建Answer(createAnswer)井将Answer 消息(内容是接收端的 SDP 信息)通过信令服务裔传送给呼叫端;

3、呼叫鳞收到对端的 Answer信息后调用 setRemoteDesccription 方法将含有对阔 SDP 信息的 Answer 保存起来;

经过上述三个步骤,则完成了 P2P 通信过程中的媒体协商部分,实际上在呼叫以及接收调用。

相关推荐
RTC老炮12 小时前
webrtc降噪-WienerFilter源码分析与算法原理
算法·webrtc
赖small强12 小时前
【ZeroRange WebRTC】Amazon Kinesis Video Streams WebRTC initSignaling() 技术深度解析
websocket·webrtc·stun·kinesis·initsignaling
红米饭配南瓜汤18 小时前
WebRTC 码率预估(1) - 接收端 TransportFeedback 生成和发送流程指南
网络·音视频·webrtc·媒体
metaRTC21 小时前
webRTC IPC客户端Flutter版编程指南
flutter·webrtc·ipc
ZEGO即构开发者1 天前
WebRTC 实战:用即构 SDK 搭建 Web 端 1v1 视频通话(含完整流程与 Demo)
前端·音视频·webrtc
RTC老炮3 天前
webrtc降噪-SpeechProbabilityEstimator类源码分析与算法原理
算法·webrtc
赖small强3 天前
【ZeroRange WebRTC】Amazon Kinesis音视频传输通路详细分析:ICE完成后的数据传输流程
webrtc·ice·dtls·音视频传输·srtp
赖small强4 天前
【ZeroRange WebRTC】DTLS(Datagram Transport Layer Security)技术深度分析
webrtc·重放攻击·dtls·dtls-srtp·防dos攻击机制
metaRTC4 天前
webRTC IPC客户端React Native版编程指南
react native·react.js·ios·webrtc·p2p·ipc
赖small强4 天前
【ZeroRange WebRTC】Amazon Kinesis Video Streams ICE协议Candidate协商机制深度分析
webrtc·nat·ice·candidate·candidatepair·stun绑定请求