WebRTC中的NAT穿透

2023-03-10
阅读 3 分钟
717
我们知道,WebRTC会按照内网、P2P、中转的顺序来尝试连接。在大部分的情况下,实际是使用P2P或者中转的。这里P2P的场景主要使用的技术就是NAT穿透。

WebRTC中的ICE

2023-02-11
阅读 1 分钟
1.5k
ICE简介ICE是用于UDP媒体传输的NAT穿透协议(适当扩展也可以支持TCP),它需要利用STUN和TURN协议来完成工作。STUN协议提供了获取一个内网地址对应的公网地址映射关系(NAT Binding)的机制,并且提供了它们之间的保活机制。TURN协议是STUN协议的一个扩展,允许一个peer只使用一个转发地址就可以和多个peer实现通信。其...

WebRTC中的SDP

2022-11-14
阅读 7 分钟
1.2k
在WebRTC的通信过程中,SDP是其中重要的协议。SDP(Session Description Protocol)全称是会话描述协议。主要用于两个会话实体之间的媒体协商。WebRTC引入SDP来描述媒体信息,用于媒体协商时决定双方是否可以进行通信,以及用何种方式进行通信。SDP作为WebRTC的信令系统的一部分,驱动着WebRTC的运转。从这个角度来说,S...

WebRTC客户端主要流程分析

2022-10-07
阅读 2 分钟
1k
因为WebRTC规范里没有包含信令协议,所以像OWT、mediasoup等支持WebRTC的开源项目,其通信两端建立连接的过程中的信令逻辑各不相同。但是,总体上来说,其通信过程必然会包括以下过程。

实时音视频通信的指标和主要矛盾

2022-09-13
阅读 3 分钟
806
对于互动性很强的实时通信场景,比如上课、视频会议等。相比于线上,我们都更喜欢线下交流。这主要是因为线下交流会更有“真实感”。那么线上交流的“真实感”缺失在哪呢?

WebRTC目录结构

2022-07-31
阅读 2 分钟
985
我们下载完WebRTC源码后想深入分析其源码的话,首先就需要了解WebRTC的目录结构。因为WebRTC的分层工作做的很好,其代码的目录结构也比较清晰,在了解这个结构后,就能根据想分析的功能去对应目录寻找需要的源码了。

音视频中的DTS、PTS

2022-06-10
阅读 2 分钟
1.1k
I 帧(Intra coded frames) : I 帧图像采用帧内编码方式,即只利用了单帧图像内的空间相关性,而没有利用时间相关性。I 帧使用帧内压缩,不使用运动补偿,由于 I 帧不依赖其它帧,所以是随机存取的入点,同时是解码的基准帧。I 帧主要用于接收机的初始化和信道的获取,以及节目的切换和插入,I 帧图像的压缩倍数相对较...

SRS带宽不足下内存泄漏

2022-05-29
阅读 3 分钟
1k
最近解决了SRS中的一个bug,特此记录一下。SRS(4.0)服务器上,使用RTMP推流,在网页端用webrtc拉流。设置低带宽场景下存在内存大幅度持续不断上涨现象,应该是有内存泄漏。观察发现2个现象——1.存上涨幅度与推流端码率成正比。2.关闭nack后内存上涨幅度明显减小。控制台上打印SRS日志发现错误日志: {代码...} 结合日志...

Windows下编译WebRTC

2021-12-12
阅读 3 分钟
4.5k
随着新冠疫情的影响,这两年音视频的需求呈爆发式增长。在音视频领域中,WebRTC可以说是一个绕不开宝库,包括了音视频采集、编解码、传输、渲染的全过程。本文主要记录下在Windows平台上编译WebRTC的全过程。

Linux下编译WebRTC(Linux和Android版本)

2021-12-11
阅读 3 分钟
5.2k
随着新冠疫情的影响,这两年音视频的需求呈爆发式增长。在音视频领域中,WebRTC可以说是一个绕不开宝库,包括了音视频采集、编解码、传输、渲染的全过程。本文主要记录下在Linux平台上编译WebRTC Linux和Android版本的全过程。

音视频基础知识点

2021-10-07
阅读 1 分钟
1.2k
PCM:脉冲编码调制(Pulse Code Modulation)。通过采样、量化、编码将模拟信号转换为数字信号。根据奈奎斯特采样定理:为了不失真地恢复模拟信号,采样频率应该不小于模拟信号频谱中最高频率的2倍。