2023年9月15日

webrtc中的dtls

摘要: 简介 DTLS(Datagram Transport Layer Security) 是基于 UDP 场景下数据包可能丢失或重新排序的现实情况下,为 UDP 定制和改进的 TLS 协议。 在WebRTC 中使用 DTLS 的地方包括两部分: 协商和管理SRTP密钥和为DataChannel提供加密通 阅读全文

posted @ 2023-09-15 16:26 WillingCPP 阅读(309) 评论(0) 推荐(0) 编辑

2023年8月3日

WebRTC研究:RTP报头扩展

摘要: # RTP Header RTP协议中,RTP Header(报头)包括固定报头(Fixed Header)与报头扩展(Header extension,可选)。 RTP Fixed Header结构如下,其中前12字节是每个RTP包必须包含的。 ``` 0 1 2 3 0 1 2 3 4 5 6 阅读全文

posted @ 2023-08-03 18:05 WillingCPP 阅读(283) 评论(0) 推荐(0) 编辑

WebRTC研究:Transport-cc之RTP及RTCP

摘要: Transport-cc指的是Transport-wide Congestion Control。WebRTC最新的拥塞控制算法(Sendside BWE)基于Transport-cc,接收端记录数据包到达时间,构造相关RTCP包,然后反馈给发送端,在发送端做带宽估计,从而进行拥塞控制。之所以基于T 阅读全文

posted @ 2023-08-03 18:00 WillingCPP 阅读(136) 评论(0) 推荐(0) 编辑

2023年2月7日

webrtc windows编译记录

摘要: //cmd set path=D:\zzh\depot_tools;%path% set DEPOT_TOOLS_WIN_TOOLCHAIN 0 set vs2022_install=C:\Program Files\Microsoft Visual Studio\2022\Community // 阅读全文

posted @ 2023-02-07 15:15 WillingCPP 阅读(350) 评论(0) 推荐(0) 编辑

2023年1月15日

linux grep/sed/awk

摘要: 1. sed基础逻辑 按照行处理 行匹配处理逻辑- 编辑/显示 行不匹配处理逻辑 - 显示 2. sed语法 sed [选项] [sed内置命令自负] [输入文件] 2.1 选项(-开头) -n 取消默认的sed的输出, 和p一起合作 -i 写入文件, 处理结果是否修改源文件 -e 多次编辑 -r 阅读全文

posted @ 2023-01-15 22:24 WillingCPP 阅读(19) 评论(0) 推荐(0) 编辑

2023年1月7日

NDK 减少 so 库体积方法总结

摘要: #. 使用 strip 使用 NDK toolchain 可以把调试的 C++ 符号表(Symbol Table)中数据删除,我们一般我们打成 APK 会自动帮我们做这个工作,当然也可以手动设置: 手动的在链接选项中加入 strip 参数,配置如下所示: SET_TARGET_PROPERTIES( 阅读全文

posted @ 2023-01-07 09:22 WillingCPP 阅读(500) 评论(0) 推荐(0) 编辑

2022年12月26日

Webrtc audio

摘要: 整体理解 在 WebRTC 中,Call 是peer connection 的。 为 WebRTC Call 注入的 AudioState 来自于全局的 MediaEngine 的 VoiceEngine。 AudioState 是全局的,而 Call 则是 connection 内部的。 创建接受 阅读全文

posted @ 2022-12-26 09:26 WillingCPP 阅读(62) 评论(0) 推荐(0) 编辑

2022年12月22日

WebRTC 的音频弱网对抗之 NACK

摘要: 基础知识 音频的 NACK 机制在 WebRTC 中默认是关闭的. rtcp feedbacknack开启就可以了 WebRTC 的音频数据传输中,尽管对低延时有着很高的要求,但也实现了 NACK,以用于一些音质比延迟更重要的场景。 重传数据包的记录功能, 记录那些需要重传 nack_tracker 阅读全文

posted @ 2022-12-22 09:46 WillingCPP 阅读(627) 评论(0) 推荐(0) 编辑

2022年10月19日

webrtc 拥塞控制相关

摘要: RFC8836 对实时交互式音视频应用的拥塞控制算法需求进行了较为全面的总结 延迟 拥塞控制算法应该尽可能降低延时,尤其是算法本身引入的延时。与此同时仍然需要提供可用的带宽水平。 -吞吐率:在相应场景下吞吐率应尽可能高。 公平性:拥塞控制算法应该能够和其他实时流量和 TCP 流量公平地共享链路带宽。 阅读全文

posted @ 2022-10-19 17:33 WillingCPP 阅读(216) 评论(0) 推荐(0) 编辑

2022年9月26日

select, poll, epoll

摘要: 1. select 不足 监听1024个描述符号的限制 rset不可重用 , 每次需要zero, 再填充 解除select阻塞后需遍历每一个fd, 因为不知道那个有数据 2. poll的实现和select非常相似,这里采用同样的方法进行分析。 1024限制没有 不需要rset, 而是引入了一个标识位 阅读全文

posted @ 2022-09-26 13:33 WillingCPP 阅读(18) 评论(0) 推荐(0) 编辑

导航