webrtc
一朵喇叭花压海棠
树欲静而风不止
展开
-
WebRTC视频JitterBuffer详解
本文从代码层面详细描述了WebRTC的视频JitterBuffer模块的主要功能模块,可以作为代码走读的参考。原创 2020-06-16 23:42:01 · 20460 阅读 · 29 评论 -
基于OBS的WebRTC H264编码器
基于OBS实现了WebRTC的H264编码器,借助OBS内部已经集成的硬件编码器,降低WebRTC的H264编码CPU消耗。原创 2019-03-14 00:02:08 · 3351 阅读 · 8 评论 -
WebRTC Windows端推1080P/30帧优化
WebRTC Window端推1080P/30帧1 背景2 WebRTC版本3 测试3.1 测试环境3.1.1 硬件3.1.2 软件3.2 测试内容/数据4 一些分析5 结论1 背景Windows端的浏览器(例如Chrome)推1080P/30帧在普通机器上应该是可以的,但是默认的OpenH264软编CPU占用较高,据说在某些特定机器的某些编码参数下可以触发硬件编码,可以有效降低CPU占用。然...原创 2019-03-04 15:29:33 · 2630 阅读 · 1 评论 -
基于WebRTC的直播CDN
本文主要介绍基于WebRTC的CDN系统的结构、原理、工作流程。原创 2018-12-17 16:22:56 · 8468 阅读 · 0 评论 -
Janus架构以及基本开发
本文介绍Janus的内部结构、主要的数据流程,为Janus的开发提供参考。原创 2018-12-13 17:16:07 · 34749 阅读 · 7 评论 -
OBS集成WebRTC
本文主要描述:- OBS的输出插件开发;- 外部的YUV视频数据怎么输入WebRTC;- 外部的PCM音频数据怎么输入WebRTC;- 外部怎么实现WebRTC的编码器;- 怎么封装OBS的编码器让WebRTC可以使用X264和硬件编码器。原创 2018-12-05 19:25:25 · 9374 阅读 · 6 评论 -
iOS ARKit推流到WebRTC
本文介绍了iOS使用WebRTC推ARKit合成流的方法,包含核心代码。原创 2018-10-07 00:20:19 · 1866 阅读 · 0 评论 -
WebRTC Android端软件/硬件编解码的策略
本文介绍了WebRTC Android端软/硬编/解的策略,包含黑白名单、错误检测自动回退等措施。原创 2018-10-06 23:24:55 · 1809 阅读 · 0 评论 -
WebRTC的丢包计算方法
本文介绍了WebRTC内部计算丢包的算法,其跟RTT的计算有紧密联系,在Janus等服务优化丢包逻辑时可以作为参考。原创 2018-09-06 22:13:54 · 5265 阅读 · 0 评论 -
WebRTC+libwebsockets+Janus的秒开实践
本文主要介绍了基于WebRTC、Janus的直播系统优化秒开时间的主要方法,主要是信令的简化、CDN的优化部署、Janus dtls握手优化等。Janus有一个必丢第一个dtls握手包的问题,需要客户端容错。原创 2018-08-25 15:12:10 · 10667 阅读 · 13 评论 -
WebRTC、Janus卡顿优化实践(SPS、PPS丢包)
本文介绍了WebRTC弱网下丢SPS、PPS包导致明显较长时间卡顿的解决方法,适用于各个平台APP端。如果是丢其他的包,可以通过NACK重传在一个RTT内快速回复,而SPS、PPS丢包则不行。原创 2018-08-25 08:54:23 · 5621 阅读 · 0 评论 -
WebRTC的NACK和RTX简述
背景在丢包 10%下测试WebRTC,发现丢包导致的卡顿,需要一些开启一些机制来保证丢包重传。摘要简述WebRTC中NACK、RTX的功能和联系。正文NACK、RTX是WebRTC里丢包重传策略,两个策略之间有一定的联系。NACK:接收端通过RTCP将丢包的序列号通知给发送端,让发送端重传该包。RTX:发送端在新的SSRC上发送重传包或者冗余包。两者均需要通过sdp协商...原创 2018-08-24 16:51:46 · 7832 阅读 · 4 评论 -
IOS下实现高性能画板橡皮擦的办法
摘要IOS下使用CAShapeLayer+UIBezierPath实现互动画板时橡皮擦的实现方式。背景要在IOS端做一个在线教育DEMO,集成音视频互动、PPT白板互动、聊天等功能。画板实现IOS画板有很多实现,主要有DrawRect+UIBezierPath:实现比较简单,橡皮擦也好实现,但是CPU较高,内存消耗大。 CAShapeLayer+UIBezierPath:...原创 2018-07-18 10:14:23 · 3845 阅读 · 3 评论 -
WebRTC Windows版编译(支持H264+OpenSSL)
摘要 本文介绍了在Windows下编译WebRTC的方法,WebRTC默认支持VP8、VP9(谷歌自己的编码)和BoringSSL(谷歌的OpenSSL分支,主要修复一些OpenSSL主线的漏洞),本文将介绍在Windows下让WebRTC支持使用更广泛的H264、OpenSSL的方法。版本 本文使用的版本是57,我下载WebRTC代码的时候最新版本是62,但是为了方便编译...原创 2018-03-24 18:57:07 · 5490 阅读 · 2 评论 -
openssl windows自动编译+静态库符号缺失问题(/Fd选项)
摘要: 本文描述使用bat脚本自动编译openssl1.0.2j的过程,并解释了使用openssl静态库时可能出现的链接告警(warning LNK4099: PDB 'lib.pdb' was not found),原因是其符号文件lib.pdb缺失,本文提供的编译脚本将符号文件一并拷贝到输出目录。其背景是在windows平台下编译webrtc的debug版本时,在不使用boringssl...原创 2018-03-24 10:09:02 · 2478 阅读 · 0 评论