随笔分类 -  全部

全部便以索引
摘要:1.前言 本文介绍了webrtc中的fec相关封装原理, 协议,分析其在webrtc中的应用过程和使用策略。 2.正文 2.1 red 为什么做red封装呢?Ulpfec编码后的内容会做Red封装后再放入RtpPacket,可fec在RFC5109已经定义好自己的传输格式,而且sdp协商过程中也有U 阅读全文
posted @ 2021-09-25 02:27 woder 阅读(4380) 评论(3) 推荐(3) 编辑
摘要:1. 前言 本文是webrtc拥塞控制的下文,主要介绍的是从cc-controller获取码率之后,如何将码率设置到PacingController控制发送速率,同时如何将码率分配调整到各个stream,各个stream的layer, simulcast,fec中 2. 正文 2.1 整体码控结构 阅读全文
posted @ 2021-09-25 02:23 woder 阅读(6810) 评论(0) 推荐(1) 编辑
摘要:webrtc源码分析(8)-拥塞控制(上)-码率预估本文是webrtc中拥塞控制的上文,主要是分析webrtc中的拥塞控制的码率探测,预估和调整的部分,介绍了整体框架和原理以及相关的类; 阅读全文
posted @ 2021-09-10 02:40 woder 阅读(14457) 评论(11) 推荐(7) 编辑
摘要:webrtc源码分析(4)-视频发送流程本文介绍了webrtc中视频的基本发送流程,阐述了视频如何从编码,到RTP打包,到Paced控制,经过ICE发送的流程: 阅读全文
posted @ 2021-08-18 01:57 woder 阅读(6131) 评论(4) 推荐(4) 编辑
摘要:webrtc源码分析(5)-Api接口本文结合了webrtc源码上的example分析webrtc的API接口以及webrtc的基本通讯流程和相关概念 阅读全文
posted @ 2021-07-30 22:49 woder 阅读(3023) 评论(0) 推荐(0) 编辑
摘要:webrtc源码分析(6)- jitter delay计算详解本文主要介绍webrtc jitter buffer的平滑原理和平滑视频抖动最关键的指标-jitter delay的计算 阅读全文
posted @ 2021-07-12 10:26 woder 阅读(7111) 评论(6) 推荐(1) 编辑
摘要:周期函数的傅里叶变换 傅里叶变换最开始需要从傅里叶级数开始讲起 傅里叶级数 一个周期信号f(t), 周期为T, 角频率为 w0=2πf0=2πT,可以展开成如下形式: \[ \begin{align*} 三角函数基的傅里叶展开: f(t) &= 阅读全文
posted @ 2021-07-12 10:23 woder 阅读(1121) 评论(0) 推荐(0) 编辑
摘要:#1. 说明 本文是来自忠厚老实的老王在B站讲的卡尔曼滤波,经过自己理解写的总结笔记,课讲的非常好,一定要去听 #2. 贝叶斯公式和应用 对于事件A和B,设其同时发生的概率为P(A=aB=b), 则存在: \[ P(A =a \bigcap B = b)=P(A=a|B=b 阅读全文
posted @ 2021-07-12 10:22 woder 阅读(2352) 评论(0) 推荐(0) 编辑
摘要:1 概 执行完av_parser_parse2()后不管有没有构成一个packet,av_parser_parse2()告知我们已使用数据都可以不用再管了,因为其内部拷了一份;当然,如果提供buf数据是足够的,能通过返回的pkt.size判断有没有packet 2 正文 2.1 ffmpeg的解码流 阅读全文
posted @ 2021-05-24 14:39 woder 阅读(5944) 评论(0) 推荐(0) 编辑
摘要:1.前言 webrtc线程源于chromium,其中有消息队列,通信等功能,相对于原始的std::thread或者posix pthread而言,好用不少,本文介绍了webrtc 线程的常用功能以及实现; webrtc版本:M91 2.正文 2.1 webrtc中的主要线程 出于管理接口即时性,平衡 阅读全文
posted @ 2021-04-30 22:46 woder 阅读(2604) 评论(1) 推荐(0) 编辑
摘要:正文 Intel汇编与At&t汇编区别 AT&T的立即数前面有修饰符号.e.g.4 Intel的立即数不需要修饰 e.g. 4 AT&T寄存器名称前有修饰符号% e.g. movl $4, %eax Intel寄存器名称不需要修饰 e.g. mov eax, 4 AT&T的源操作数在左边,目 阅读全文
posted @ 2021-01-20 10:18 woder 阅读(658) 评论(0) 推荐(0) 编辑
摘要:概 sleep() 将进程放入等待队列,休眠结束后,进入运行队列获取cpu分配,sched_yield()将进程分配到过期队列,所有进程都运行完成后才会运行 正文 进程调度队列 操作系统的进程调度有三大队列: 三个队列:运行队列,过期队列,等待队列 1.等待队列:休眠(或者阻塞)的进程放在等待队列里 阅读全文
posted @ 2020-04-13 23:52 woder 阅读(531) 评论(0) 推荐(0) 编辑
摘要:正文 阅读全文
posted @ 2020-01-20 14:02 woder 阅读(383) 评论(0) 推荐(0) 编辑
摘要:前言 在nginx进行https代理的时候是需要配置证书的,通过CA机构获取的证书是收费的,出于研究测试的话可以通过openssl自己制作证书,使用openssl制作证书如下: (1)生成CA根证书 (2)生成服务器证书请求 (3)通过CA根证书和服务器证书请求生成服务器证书 服务器证书生成后,便可 阅读全文
posted @ 2020-01-20 09:34 woder 阅读(5567) 评论(0) 推荐(1) 编辑
摘要:前言 https是http与ssl的结合,为了解决http明文传输导致信息泄露的问题。ssl通过公钥和私钥保证客户端和服务器之间的通讯加密,由权威机构办法的数字证书杜绝了中间人攻击的可能。 http和ssl http是处于应用层的传输协议,ssl是处于与TCP同层的传输层和应用层之间的协议,由于ht 阅读全文
posted @ 2020-01-20 09:25 woder 阅读(683) 评论(0) 推荐(0) 编辑
摘要:前言 系统搭建的时候必不可免需要证书作测试,但 "自签名证书" 在chrome上还是有限制,直接使用国内云厂商证书申请一套处理下来只需要花几块钱域名费用而且方便,下文介绍腾讯云的证书申请 正文 购买&&配置域名 在腾讯云中选择云产品 域名管理 注册域名, 就可以开始查询选择自己所需的域名,一般作测试 阅读全文
posted @ 2020-01-20 09:20 woder 阅读(1125) 评论(0) 推荐(0) 编辑
摘要:前言 从网上看到的另一句话,webrtc中的信号槽像是变种的观察者模式,当有信号发送的时候,信号发送者通过遍历自己的所有connect的信号槽,然后执行他们的回调;起初会有为什么需要信号槽 信号槽与普通的函数回调有什么区别的疑问, 个人认为信号槽是一种面向对象的回调,当回调涉及到对象,需要考虑到执行 阅读全文
posted @ 2020-01-14 00:25 woder 阅读(1491) 评论(0) 推荐(1) 编辑
摘要:前言 webrtc中为了保证线程安全,在线程中使用消息队列机制处理消息 正文 举一个创建PeerConnectionFactory时的例子为例;此处已经创建了PeerConnectionFactory对象 pc_factory,此时需要对其进行Initialize()操作,首先创建了一个方法调用器 阅读全文
posted @ 2020-01-02 21:49 woder 阅读(1697) 评论(1) 推荐(2) 编辑
摘要:前言 本文介绍了简单的介绍gcc编译一个程序的时候做了什么 正文 一个例子 首先来看一个例子,有两个文件内容如上, fn1.c 中定义了一个函数 fn1() ,而main.c中只是声明了 fn1() 是一个函数,有时我们一般会用如下方式编译, 然后目录下就多了一个可执行文件a.out 但这里封装的太 阅读全文
posted @ 2019-12-22 16:35 woder 阅读(249) 评论(0) 推荐(0) 编辑
摘要:前文 下文中的出现的"当前域"为"当前作用域"的简写 namepsace在c++中是用来避免不同模块下相同名字冲突的一种关键字,本文粗略的介绍了一下namespace的使用以及需要注意的地方: 1.可通过显示指定namespace,或使用using引入符号的方式, 或使用using namepsac 阅读全文
posted @ 2019-12-21 23:23 woder 阅读(2980) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示