完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
书中 第八章 传输控制优化,主要介绍了拥塞控制,弱网降级,抖动缓存与平滑发送,错误恢复等几个部分的内容。 其中抖动缓存与平滑发送是非常重要的一部分,在实践中是保证音视频实时不断流的传输是必须应用的,所以结合个人在UAC的开发中实践,结合书中介绍,分享下该部分内容。 个人从UAC实时音频传输开发来看,抖动缓存与均衡发送是最重要的部分,比必须实现的。 因为实时音视频传输,实际是一个生产者-消费者模型。生产者和消费者的长时间整体看速率是一样的,但是局部上看可能有波动。在某个小的时间点生产和消费者的速率可能不一样,所以必须要有一个缓存”水池”来缓解这种局部的不均衡。 这个水池设计的越大则越能缓解这种抖动的剧烈程度。 而在实践应用中知道,除了设计以上缓存外,还需要注意抖动, 即水池中一定要保证有一定的水量才开始消费,否则产生一个就消费一个,但是产生和消费的时间可能有差异导致断流。 如下,可以等水池中有了生产了两项之后再消费,这样,后面每次消费时都能保证有数据不会断流(只要生产消费的抖动不超过2项的时间),如果抖动更大可以延迟更长时间再消费,同时也要增大缓存大小。 以下是个人在UAC项目中使用状态机对这个延迟的处理 s_out_fifo_pool_state记录当前状态,0表示还未满足达到指定数量5的数据不开始取数, 达到5设置为1表示此时开始取数,取数后如果取不到数了则恢复0状态。
|
|
相关推荐
|
|
《具身智能机器人系统》第1-6章阅读心得之具身智能机器人系统背景知识与基础模块
645 浏览 0 评论
901 浏览 11 评论
812 浏览 0 评论
【「嵌入式系统设计与实现」阅读体验】“基于车牌识别的自动地锁”案例学习
907 浏览 0 评论
【「HarmonyOS NEXT启程:零基础构建纯血鸿蒙应用」阅读体验】+ 8-10章有感
617 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 02:30 , Processed in 0.661420 second(s), Total 65, Slave 46 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号