阅读 144

WebRTC 原生API

WebRTC 原生API

它包括Stream和PeerConnection两部分,它们的结构图如下:

原生API代码地址
测试Demo地址
该API基于WebRTC 1.0: Real-time Communication Between Browsers做的再次封装,为原生开发App开发者提供便利;

呼叫时序图

拨打方的时序图

App的通过工厂方法创建本地媒体流,将本地流添加到新建的PeerConnection上,本地PeerConnection跟远端PeerConnection发送Offer以及接收到远端PeerConnection的Answer后然后就可以开始媒体通讯了。

接听方的时序图

App的PC观察者接收到远端发送的Offer,通过PC的工厂方法创建本地流添加到PC上,然后本地PC向远端PC发送Answer消息。然后开启媒体对话。

挂断时序图

App的PC观察者关闭PC,PC将状态改为kClosing,然后移除本地流,发送shutdown消息给远端PC,远端PC发送ok给本地PC,本地PC状态改为kClosed。

线程模型

主要使用了2个线程:signaling(信号线程)和worker
在signaling线程执行的任务有: 调用Stream APIs 、 PeerConnection APIs 以及所有回调
在worker线程执行的任务有:

关注下面的标签,发现更多相似文章
评论