WebRTC
文章平均质量分 88
一世豁然
Windows/Liunx 音频视频、音视频算法、流媒体开发
展开
-
WebRTC 开发实践:如何实现 SFU 服务器
上一篇文章《WebRTC 开发实践:为什么你需要 SFU 服务器》我们了解了 WebRTC SFU 服务器的基本原理和必要性,解决了 What 和 Why,本文则更近一步,探究一下实现 SFU 服务器的关键技术点有哪些 ?重点解决一下 How1 什么是 SFU ?首先,我们再看一次 SFU 服务器的定义,什么是 SFU ?SFU 的全称是:Selective Forwarding Un...转载 2019-11-19 13:27:30 · 1285 阅读 · 0 评论 -
WebRTC 开发实践:为什么你需要 SFU 服务器
当你入门 WebRTC 之后,很快就会接触到一个名词,叫做:SFU,你可能很容易就在网上寻找到很多 SFU 的开源实现,并并兴致勃勃地开始编译、部署和测试这些服务器,但是可曾想过,为啥我们的 WebRTC 应用需要 SFU 服务器 ?1 WebRTC P2P 通话的网络模型如图是 WebRTC P2P 模式下的网络拓扑结构,ClientA 和 ClientB 如果能够顺利建立 P2P ...转载 2019-11-19 13:13:36 · 542 阅读 · 0 评论 -
架构设计:基于Webrtc、Kurento的一种低延迟架构实现
前言在音视频领域,低延迟交互一直是一个非常重要的需求。而直播大多基于RTMP协议,其存在1到3秒左右的延迟,基本无法胜任低延迟交互的需求;另外在游戏领域、语音聊天、教育领域,低延迟也是一个非常重要的议题。下面以直播的连麦架构的设计来简单介绍下整个架构设计的演进流程。最朴素的连麦架构(基于RTMP)架构设计架构解析连麦端A/B存在多平台特性,例如Android、iOS、P...转载 2019-11-18 13:52:22 · 782 阅读 · 0 评论 -
WebRTC协议简介
一、ICE交互式连接建立(ICE)是允许您的Web浏览器与对等方连接的框架。 从对等A到对等B的直接连接根本无法工作有很多原因。 它需要绕过防火墙,以防止打开连接;如果在大多数情况下,您的设备没有公用IP地址,则为您提供一个唯一的地址;如果您的路由器不允许您直接与对等方连接,则需要通过服务器中继数据 。 ICE使用STUN和/或TURN服务器来完成此操作,如下所述。二、STUN...翻译 2019-11-14 14:00:07 · 1177 阅读 · 0 评论 -
webrtc信令交互流程
本博客转载于:https://www.cnblogs.com/fangkm/p/4364553.htmlWebRTC是HTML5支持的重要特性之一,有了它,不再需要借助音视频相关的客户端,直接通过浏览器的Web页面就可以实现音视频对聊功能。而且WebRTC项目是开源的,我们可以借助WebRTC源码快速构建自己的音视频对聊功能。无论是使用前端JS的WebRTC API接口,还是在WebRT...转载 2019-11-08 11:53:34 · 422 阅读 · 0 评论 -
WebRTC代码目录结构
本博客转载于:http://blog.csdn.net/wanghorse/article/details/46387997├── ./base//基础平台库,包括线程、锁、socket等├── ./build//编译脚本,gyp├── ./common_audio//基础公共的音频处理│├── ./common_audio/include//就转载 2017-11-07 12:07:42 · 557 阅读 · 0 评论 -
WebRTC中RTP/RTCP协议实现分析
本博客转载于:http://www.jianshu.com/p/c84be6f3ddf3一 前言RTP/RTCP协议是流媒体通信的基石。RTP协议定义流媒体数据在互联网上传输的数据包格式,而RTCP协议则负责可靠传输、流量控制和拥塞控制等服务质量保证。在WebRTC项目中,RTP/RTCP模块作为传输模块的一部分,负责对发送端采集到的媒体数据进行进行封包,然转载 2017-08-31 10:42:34 · 881 阅读 · 0 评论 -
WebRTC本地API
WebRTC本地API的实现基于W3C的WebRTC 1.0: Real-time Communication Between Browsers。此处提供了实现WebRTC本机API(包括Stream和PeerConnection API)的代码。 还提供了示例客户端应用程序。本文档的目标读者是希望使用WebRTC本地API来实现WebRTC JavaScript API或开发本地RTC应...翻译 2017-08-06 14:56:00 · 3426 阅读 · 0 评论 -
WebRTC的模块处理机制
本博客转载于:http://www.jianshu.com/p/9f4d4a725efb对于实时音视频应用来讲,媒体数据从采集到渲染,在数据流水线上依次完成一系列处理。流水线由不同的功能模块组成,彼此分工协作:数据采集模块负责从摄像头/麦克风采集音视频数据,编解码模块负责对数据进行编解码,RTP模块负责数据打包和解包。数据流水线上的数据处理速度是影响应用实时性的最重要因转载 2017-06-13 11:17:25 · 2237 阅读 · 0 评论 -
webrtc开源代码阅读1 分享
本博客转载于:http://blog.sina.com.cn/s/blog_40d608bb01010n73.html一、简介。 WebRTC是一项在浏览器内部进行实时视频和音频通信的技术,是谷歌2010年以6820万美元收购收购Global IT Solutions公司而获得一项技术。 在今年6月2日,也就是前天,WebRTC正式被Goog转载 2017-05-16 15:31:55 · 838 阅读 · 0 评论 -
WebRTC源码分析四:视频模块结构
本博客转载于:http://blog.csdn.net/neustar1/article/details/19492113本文在上篇的基础上介绍WebRTC视频部分的模块结构,以进一步了解其实现框架,只有了解了整体框架结构,对局部算法修改才能够胸有成竹。一、对外接口 对外接口有ViEBase,ViECapture,ViECodec,ViEEncr转载 2017-05-23 22:26:20 · 946 阅读 · 0 评论 -
WebRTC源码分析三:视频处理流程
本博客转载于:http://blog.csdn.net/neustar1/article/details/19480863 文本介绍视频的处理流程。图1中显示了两路视频会话视频信号流过程。图1 视频流程示意图以一路视频会话为例,主要分为以下几个线程:1)视频源产生线程:Camera生产视频画面,封装成视频帧,以一定帧率投递到下一个模块。;2)转载 2017-05-23 22:24:41 · 1118 阅读 · 0 评论 -
WebRTC手记之框架与接口
本博客转载于:http://www.cnblogs.com/fangkm/p/4370492.html上一篇文章简单地介绍了下WebRTC的协议流程,这一篇就开始介绍框架与接口。一提到框架,本能地不知道从什么地方入手了。曾经直接从Chromium项目对WebRTC的源码的集成方面入手,后来发现这个步子迈的太大了,看的越多,概念越混乱,看了半个月感觉也没啥沉淀。还是从We转载 2017-02-17 16:14:08 · 591 阅读 · 0 评论 -
WebRTC手记之本地视频采集
本博客转载于:http://www.cnblogs.com/fangkm/p/4374610.html前面两篇文章介绍WebRTC的运行流程和使用框架接口,接下来就开始分析本地音视频的采集流程。由于篇幅较大,视频采集和音频采集分成两篇博文,这里先分析视频采集流程。分析的时候先分析WebRTC原生的视频采集流程,再捎带提一下Chromium对WebRTC视频采集的适配,这样能更好转载 2017-02-17 16:15:47 · 2060 阅读 · 0 评论 -
WebRTC手记之本地音频采集
本博客转载于:http://www.cnblogs.com/fangkm/p/4374668.html上一篇博文介绍了本地视频采集,这一篇就介绍下音频采集流程,也是先介绍WebRTC原生的音频采集,再介绍Chromium源码对它的定制。1. WebRTC原生音频采集先介绍一下WebRTC中与音频采集貌似相关的接口概念:结构上看起来是不是和视频Tr转载 2017-02-17 16:17:16 · 1268 阅读 · 0 评论 -
WebRTC手记Channel概念
本博客转载于:http://www.cnblogs.com/fangkm/p/4401075.html前面两篇博文完整地介绍了WebRTC音视频的采集模块,接下来应该开始介绍关键的音视频编码模块。不过在介绍音视频编码模块之前,需要介绍一下Channel概念,WebRTC的每路数据的传输流程都封装成一个Channel对象。详细UML图如下:MediaChannel转载 2017-02-17 16:18:38 · 885 阅读 · 0 评论 -
WebRTC手记之WebRtcVideoEngine2模块
本博客转载于:http://www.cnblogs.com/fangkm/p/4401143.html终于讲到视频数据的编码发送模块了,不容易。总体来说也看了不少时间WebRTC的源码了,最大的感触就是各个模块在开发的时候非常独立,每个模块都定义了自己的一套接口,最后串起来的时候添加各种适配对象来转接。这给我们这些刚开始源码阅读的人带来非常大的苦恼,不过WebRTC的模块内的结转载 2017-02-17 16:20:24 · 933 阅读 · 0 评论 -
WebRTC详解
1、WebRTC目的WebRTC(Web Real-Time Communication)项目的最终目的主要是让Web开发者能够基于浏览器(Chrome\FireFox\...)轻易快捷开发出丰富的实时多媒体应用,而无需下载安装任何插件,Web开发者也无需关注多媒体的数字信号处理过程,只需编写简单的Javascript程序即可实现,W3C等组织正在制定Javascript 标准AP转载 2017-02-16 09:27:48 · 4066 阅读 · 0 评论 -
【WebRTC】NetEQ概述
本博客转载于:http://blog.csdn.net/boywgw/article/details/48311987#commentsWebRTC由语音引擎,视频引擎和网络传输三大模块组成,其中语音引擎是WebRTC中最具价值的技术之一。WebRTC语音引擎由一系列音频和网络处理模块组成,包括了从音频采集到网络传输等处理流程的完整解决方案。转载 2017-05-23 22:18:11 · 1446 阅读 · 0 评论 -
WebRTC源码分析一:音频处理流程
本博客转载于:http://blog.csdn.net/neustar1/article/details/19200489#comments本文概要介绍WebRTC的音频处理流程,见下图:webRTC将音频会话抽象为一个通道Channel,譬如A与B进行音频通话,则A需要建立一个Channel与B进行音频数据传输。上图中有三个Channel,每个Channe转载 2017-05-23 22:20:53 · 2739 阅读 · 0 评论 -
WebRTC源码分析二:音频模块结构
本博客转载于:http://blog.csdn.net/neustar1/article/details/19344503本文介绍WebRTC音频模块组成和结构,详细介绍音频引擎的配置和启动,相信看完本文后,很多人可以利用WebRTC完成一个音频通话程序开发。一、对外接口 音频部分的对外主要接口如下,各个接口之间的关系如图1所示。1)VoiceEngi转载 2017-05-23 22:22:54 · 843 阅读 · 0 评论 -
WebRTC手记之初探
本博客转载于:http://www.cnblogs.com/fangkm/p/4364553.htmlWebRTC是HTML5支持的重要特性之一,有了它,不再需要借助音视频相关的客户端,直接通过浏览器的Web页面就可以实现音视频对聊功能。而且WebRTC项目是开源的,我们可以借助WebRTC源码快速构建自己的音视频对聊功能。无论是使用前端JS的WebRTC API接口,还是在W转载 2017-02-17 16:12:21 · 550 阅读 · 0 评论