剑痴乎

  • 首页
  • 文章分类
    • 音视频
    • WebRTC
    • 编程之美
    • Linux
    • Windows
    • 生活点滴
    • 校园生活
  • 参考
    • API参考
    • 实用工具
    • 测试音视频
    • 文档
  • 留言板
  • 关于
WebRTC
WebRTC

Linux平台WebRTC编译

系统要求 系统:Ubuntu 16.04及以上(本文Ubuntu 18.04) 磁盘空间:至少6.4 GB磁盘空间 安装工具 [crayon-63e13511bea8b867198888/] 安装depot tools [crayon-63e13511bea91050934219/] 获取代码 [crayon-63e13511bea93060400252/] 安装依赖 [crayon-63e13511bea94613029188/] 生成Ninja工程文件 WebRTC默认使用Ninja作为编译系统,Ninja工程…

2021年1月28日 1条评论 1691点热度 12人点赞 Jeff 阅读全文
WebRTC

WebRTC研究:Simulcast层数变化

当我们上行推Simulcast流的时候,会发现Simulcast层数会时不时变化,本来是大小流(大小两个分辨率)两层,但是变为只有一层小流了,后面又恢复为两层了,如果我们服务端支持Simulcast的话,这就成为一个棘手问题。 例如我们团队的WebRTC产品,客户端默认会启用Simulcast,上行推送多个不同分辨率的流到服务端,服务端下行会依据带宽估计值,自动选择某个分辨率的流给订阅客户端。假设此时下行带宽足够,服务端会推送大流。但是对于上行客户端来说,因为某种原因,Simulcast层数减少为一层,只剩一路小流…

2020年12月27日 19条评论 3382点热度 12人点赞 Jeff 阅读全文
WebRTC

WebRTC研究:RTP报头扩展

RTP Header RTP协议中,RTP Header(报头)包括固定报头(Fixed Header)与报头扩展(Header extension,可选)。 RTP Fixed Header结构如下,其中前12字节是每个RTP包必须包含的。 [crayon-63e13511c29ca838275088/] 但是这Fixed Header携带的信息满足不了更复杂的需求。所以引入了RTP Header Extension,可以携带更多的信息。 RTP Header Extension 如果RTP Fixed Head…

2020年10月25日 5条评论 2046点热度 10人点赞 Jeff 阅读全文
WebRTC

WebRTC研究:音频带内FEC

在WebRTC中,对于音频丢包,目前有三种丢包恢复方案: 带内FEC 带外FEC NACK 本文介绍其中最简单的带内FEC。带内FEC属于WebRTC中默认启用的功能,由Opus编解码器实现,经过我们测试,30%随机丢包率下语音聊天,仍有不错的质量。不过单一靠带内FEC是无法实现更高的抗丢包要求,例如突发丢包环境或者30%以上随机丢包率,这也是各个厂商的优化点。 Opus编解码器 Opus编解码器其实是一种混合音频编解码器,融合了SILK与CELT两种编解码器。 SILK编解码器 由Skype开发 使用线性预测 适…

2020年10月24日 4条评论 2008点热度 8人点赞 Jeff 阅读全文
WebRTC

WebRTC研究:BBR拥塞控制被移除了

本来想写篇文章分析下WebRTC拥塞控制中的BBR算法代码,不过更新最新代码后发现BBR相关代码已经被移除了,所以也没必要了。WebRTC中对应的代码提交如下: [crayon-63e13511c5b8e905712178/] 给出的理由是WebRTC中性能表现很糟糕,BBR得等到以后我研究完QUIC协议再专门分析了。

2020年8月22日 5条评论 2255点热度 10人点赞 Jeff 阅读全文
WebRTC

WebRTC安卓编译

系统要求 系统:Ubuntu 18.04 磁盘空间:至少16GB磁盘空间 安装工具 [crayon-63e13511c7362927045806/] 安装depot tools [crayon-63e13511c7367995126584/] 获取代码 [crayon-63e13511c7368609632301/] 依赖安装 [crayon-63e13511c7369676867875/] 编译 直接使用aar编译工具编译,这里我们指定编译armeabi-v7a与arm64-v8a两种架构。 [crayon-63…

2020年8月17日 2条评论 1841点热度 6人点赞 Jeff 阅读全文
WebRTC

音视频开发入门:视频基础

数字图像 平时我们看到的视频其实是由一幅幅图像组成,所以先来了解下数字图像。 数字图像由一个个像素组成,是二维图像用有限数字数值像素的表示。如下路所示,我们放大一个图像后,能明显看到一个个像素块: 图像分辨率 水平分辨率指的一幅图像的宽,垂直分辨率指的一幅图像的高。一般说的分辨率用水平分辨率(宽)X 垂直分辨率(高)表示。 常见分辨率有: QVGA:320x240 CIF:352×288 VGA:640x480 HD:1360x768 FHD:1920x1080 WQHD:2560x1440 4K UHD:3840…

2020年8月16日 5条评论 1852点热度 22人点赞 Jeff 阅读全文
WebRTC

WebRTC研究:FEC之RED封装

首先看下webrtcglossary中的定义。 RED stands for REDundant coding and it is a RTP payload format defined in RFC 2198 for encoding redundant audio or video data. The primary motivation of sending redundant data is to be able to recover packets lost under lossy network co…

2020年8月16日 10条评论 2599点热度 6人点赞 Jeff 阅读全文
12345
版权声明

为支持原创,创作更好的文章,未经许可,禁止任何形式的转载与抄袭,如需转载请邮件私信!本人保留所有法定权利。违者必究!

近期评论
  • ouyang on WebRTC研究:RTP报头扩展假如放中间是否有歧义了,例如我中间说2个…
  • Artificial intelligence creates content for the site, no worse than a copywriter, you can also use it to write articles. 100% uniqueness :). Click Here: https://bit.ly/3iPPltW?h=70a8a6efa38594c078497e06bfe05726& on WebRTC研究:基于Transport Feedback的早期丢包检测upn6859h
  • yy on WebRTC研究:Trendline滤波器-TrendlineEstimator我也有这个问题,不理解。
  • Unreal on WebRTC研究:统计参数之往返时延非常不准
  • huowa222 on WebRTC研究:FEC之RED封装rtp header 有 pt 字段

COPYRIGHT © 2022 jianchihu.net. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang