会议投屏直播
会议投屏局域网直播的相关实现方案
胡式华
熟悉 打车,支付,新闻,游戏,音视频等APP项目的前后端技术的开发与实践。
展开
-
会议投屏直播:UDP通讯方案的探索(三. 流程架构)
文章目录一. 推流端架构流程二. 接收端架构流程在前面的章节中针对数据格式的定义与数据发送接收方面作了大部分的介绍,但似乎一直缺乏了从架构流程方面全面描术过。尽管前面也零零星星地介绍过部分流程,但是非常不完整的。如果在前面的文章中过多介绍又显得中心不突出。所以这里会进行种点介绍。一. 推流端架构流程相对于“接收端”,“推流端”自动采用UDP + 组播的方式实现后,从逻辑流程复杂度上大大降低了...原创 2019-08-28 17:12:18 · 413 阅读 · 0 评论 -
会议投屏直播:UDP通讯方案的探索(四. FEC分片数据生成及向前纠错处理)
文章目录XOR-FEC分片分组XOR-FEC分片还原与TCP数据传输机制不同,采用UDP向目标地址发送报文时。从理论上说,数据的接收顺序有可能是乱序的,更令人头痛的是UDP其发出后不管的特性使到数据是否已经到达无法感知,而丢包问题又经常发生,所以采用UDP进行数据传输时,基本上一直围绕着丢包处理这件事展开。那么当丢包事情发生的时个,一般的处理办法如下:NACK机制当接收端发现数据包丢失...原创 2019-08-28 18:48:24 · 483 阅读 · 2 评论 -
会议投屏直播:缓冲队列与环形队列
目录前言缓冲队列“无锁数组 + 信号量”的实现方式带锁数组的实现方式环形队列前言队列作为常用的数据结构,使用上较为广泛。以长连接通讯为例,为实现数据生成与发送处理上互不干涉,数据发送缓冲队列是一个较为常用的缓冲手段。在TPLine 投屏直播会议系统中,无论广播发送端还是广播接收端,都采用发送缓冲区实现数据生成后的缓冲发送工作。入队与出队也通常运行在不同的线程中,为实现数据频繁的入队与出队操作...原创 2019-06-22 01:34:09 · 310 阅读 · 0 评论 -
会议投屏直播:投屏数据流获取方案
目录不同系统版本的演进ios 10初始方案的提出iOS 11 数据流方案开始提供ios 12 主动触发控件开始支持注意事项1. Extension 50M 内存限制2. Extension 逻辑处理的时间限制3. 同步线程队列执行编码4. RPSystemBroadcastPickerView不稳定开发过程中的经验1. 如何调试Extension2. 如何处理奇怪的现象不同系统版本的演进这里只...原创 2019-06-20 13:07:06 · 2203 阅读 · 9 评论 -
会议投屏直播:UDP通讯方案的探索(二. 数据的发送与接收)
文章目录一. 为什么想到用组播一. 为什么想到用组播单台设备又要进行音视频数据的采集,同时又要担负对多台加入的设备进行实时推流的能力。显然在内存及并发推流能力上很快就已经进入到一个瓶颈了。在用TCP进行推流的代码实现后,在实际的的测试过程中,在清晰度要求不下降的情况下,连接设置超过20台之后就开始出现明显的卡顿现象了。因为推流端基于Extension(应用扩展)方式实现,在内存使用上不能超...原创 2019-08-28 12:16:11 · 484 阅读 · 0 评论 -
会议投屏直播:UDP通讯方案的探索(一. 数据传输格式的定义)
文章目录一. 前言二. 格式的定义TCP数据包格式UDP数据包格式最大传输单员(MTU)应用层分片的重要性UDP数据包结构UDP数据分片封包UDP数据解包一. 前言一开始用TCP,很大程度时因为简单,可以快速实现一个初级的版本。因为受限于各种要求,TPLine从一开始就不准备通过中间服务对用户端实施推流。所以在使用中,单台IPad作为主播端,同时开启推流程序,同是为多个接入端推送数据流。TC...原创 2019-08-26 20:17:31 · 656 阅读 · 0 评论