本文主要介绍ORTC(Object Real-time Communication),支持原创,文章来自博客园RTC.Blacker,支持原创,转载必须说明出处,更多详见www.rtc.help。

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

一个WebRTC就已经搞得我们晕头转向的,现在又弄出个ORTC(去年已经提出这个概念了),他们之间有什么关系和差别呢?

直白一点说就是:一些浏览器厂商刚开始不太愿意配合搞HTML5中的RTC规范(比如微软,因为动了他的奶酪),google和firefox就只能自己先搞了,

搞了两年其他人看到这个东西是个趋势,也有点想参与了,但不好意思说出来,所以就开始挑WebRTC的问题,比如:

1,sdp格式晦涩难懂——这是事实,我每次都要对着文档去查。

2,太多高层次的API,以及没有严格的标准规范,火狐和chome一些写法还搞得不一样。

3,无法真正解决历史遗留系统得兼容性问题。

4,要求没有得到应答。

5,等等等等。

正因为存在这么多问题,所以之前那些不怎么积极的厂商就可以名正言顺的插进来一起搞了,各家都派个代表进来,成立个标准组织,制订些新的标准,就这样ORTC就诞生了,其实也可以称作是WebRTC2.0或WebRTC3.0,只不过进来的门派多了,规格要提高,干脆改个全新的名字,这样ORTC就诞生了.

下面我们看看WebRTC和ORTC各自的官网对比:

--------------------------------------------------

--------------------------------------------------

从官网上我们可以知道下面几个信息:

1,他们的本质和使命没有多大差别,主要是组织结构上加了几个新成员(主要是加上了之前不愿配合的那几个人)。

2,www.webrt.org官网需要FQ才能打开,www.ortc.org可直接打开,原因你懂的。

---------------------------------------------------

下面再来看看他们的api构成:

--------------------------------------------------

--------------------------------------------------

这两张图说明:他们的api并没有太大差别,最终都是围绕connection,track,candidate进行。

---------------------------------------

对我们开发人员来说要注意的就是:

不管他名字怎么改(以后可能会有ARTC,BRTC,CRTC),我们用的代码都是那一套,底层操作,如音视频采集,编解码,传输这些都一样,

我们用的都是google提供的webrtc,因为不管是微软还是苹果,一时半会,一年半载不可能将他的东西开源出来,呵呵。

-----------------------------------------------------

所以通过ORTC这个概念的诞生我们可以看到WebRTC已经越来越火,包括一些大的厂商已经开始重兵进入,比如因特尔。

很多人可能以为因特尔是做硬件的,怎么会跟webrtc这种软件开发扯上关系,想想下面这个问题你就明白了:

WebRTC只是个客户端,做视频会议需要用到服务端,需要MCU,而这种东西是可以通过硬件实现,硬件就是芯片,芯片是谁生产的?

所以为了更好支持WebRTC,因特尔连客户端sdk都给我们封装好了,直接用它的东西就行,见下图:

-------------------------------------------------

当然了除了因特尔这些做硬件的大佬外,还有很多提供音视频sdk的厂商也在用webrtc这套东西,下面是反编译某大佬sdk中的部分代码结构:

------------------------------------------------

从我们接触的情况看国内做音视频相关开发的公司,没几家没用过WebRTC这套东西的,只不过用的程度不一样罢了,还有他们对外宣传的时候都会说是什么什么团队,高手解决了什么难题,达到了什么效果,绝对不会说用了webrtc的东西,呵呵,这也是国情使然。

------------------------------------------

再引申一些相像空间:google当年开源WebRTC 的时候肯定想到这些问题,比如有人偷偷用了他们的东西,又死不承认,然后改完又不继续开源,

而且他那些语音处理都是核心技术,所以这些时候换成你是CEO你会怎么做?

所以他可能会将某些核心的模块没有开源出来,或者用一个次品代码,等时机成熟再将核心的东西放出来,估计换成是你你也会这么做,呵呵!

所以说到这里再谈谈我对WebRTC的看法:

“WebRTC就是屠龙刀,用好了威力无穷,用不好后患无穷,所以学会用火找到会用的人很重要”。

-------------------------------------------

支持原创,支持blacker,喜欢这系列的文章或想与我交流RTC开发的相关问题,请关注我的微信公众号blacker,或扫描下方二维码:

,谢谢

Android IOS WebRTC 音视频开发总结(四五)-- ORTC背后的真相的更多相关文章

  1. 转:Android IOS WebRTC 音视频开发总结 (系列文章集合)

    随笔分类 - webrtc   Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键? 摘要: 本文主要介绍WebRTC端到端监控(我们翻译和整理的,译 ...

  2. Android IOS WebRTC 音视频开发总结(八十五)-- 使用WebRTC广播网络摄像头视频(下)

    本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...

  3. Android IOS WebRTC 音视频开发总结(八十三)-- 使用WebRTC广播网络摄像头视频(上)

    本文主要介绍WebRTC (我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:bl ...

  4. Android IOS WebRTC 音视频开发总结(四六)-- 从另一个角度看国内首届WebRTC大会

    文章主要从开发者角度谈国内首届WebRTC大会,支持原创,文章来自博客园RTC.Blacker,支持原创,转载必须说明出处,更多详见www.rtc.help. -------------------- ...

  5. Android IOS WebRTC 音视频开发总结(六)-- iOS开发之含泪经验

    前段时间在搞webrtc iOS开发,所以将标题改为了Android IOS WebRTC 音视频开发总结, 下面都是开发过程中的经验总结,转载请说明出处(博客园RTC.Blacker): 1. IO ...

  6. Android IOS WebRTC 音视频开发总结(二四)-- p2p调用堆栈

    本文主要分析webrtc音视频点对点部分的代码结构,文章来自博客园RTC.Blacker,转载请说明出处. 前段时间在查一个偶尔断线的问题(这种问题最蛋疼,不好重现,只能凭经验去搞),所以理了下web ...

  7. Android IOS WebRTC 音视频开发总结(二三)-- hurtc使用说明

    本文主要介绍如何测试基于浏览器和手机的视频通话程序,转载请说明出处,文章来自博客园RTC.Blacker,更多详见www.blackerteam.com   很多人想测试浏览器(包括浏览器版本和桌面e ...

  8. Android IOS WebRTC 音视频开发总结(六十)-- 您为什么招不到适合的音视频人才

    本文主要介绍音视频行业招聘现状,文章最早发表在我们的微信公众号上,详见这里,欢迎关注微信公众号blackerteam,更多详见www.blackerteam.com 有过音视频人才招聘经验的应该都深有 ...

  9. Android IOS WebRTC 音视频开发总结(五七)-- 网络传输上的一种QoS方案

    本文主要介绍一种QoS的解决方案,文章来自博客园RTC.Blacker,欢迎关注微信公众号blacker,更多详见www.rtc.help QoS出现的背景: 而当网络发生拥塞的时候,所有的数据流都有 ...

随机推荐

  1. vs2012出现无法启动iis express web 服务器的错误

    一直用的好好的,今天调试时却总报上面的错误.“文件查看器”->"windows 日志"->"系统"里发现有几条“HttpEvent”错误, 具体信息 ...

  2. Coding.net 代码管理快速入门

    当项目创建好了之后,我们该如何上传代码到 coding 上呢? Coding 网站使用“ Git 仓库”(类似 github )来管理代码. 其操作原理在于:利用 git 服务,将本地的项目目录下的文 ...

  3. minicom的安装及使用

    1.下载 sudo apt-get install minicom 2.运行 sudo minicom -s 3.修改端口 首先查看端口:ls /dev/tty...

  4. Java SE 第十一讲----面向对象特征之封装2

    1.如果一个类包含了属性跟方法,那么该类的每一个对象都具有自己的属性,但无乱一个类有多少个对象,这些对象共享同一个方法. 2.关于方法参数传递的总结: 对于Java中的方法参数传递,无论传递的是原生数 ...

  5. IE,Chrome滚动条样式CSS

    <style type="text/css"> *{ scrollbar-face-color:#F3F3F3; /*面子*/ scrollbar-arrow-colo ...

  6. Quartz.net一个简要示例

    下面描述了一个Quartz.net最常用的应用场景,按特定秒数触发执行特定任务. 1.任务要继承自:IJob,在Execute方法中填入自己需要执行的任务. public virtual void E ...

  7. Codeforces 622F 「数学数论」「数学规律」

    题意: 给定n和k,求 1 ≤ n ≤ 109, 0 ≤ k ≤ 106 思路: 题目中给的提示是对于给定的k我们可以求出一个最高次为k+1的关于n的通项公式. 根据拉格郎日插值法,我们可以通过k+2 ...

  8. C - Fractal(3.4.1)

    Description A fractal is an object or quantity that displays self-similarity, in a somewhat technica ...

  9. How to Resize a Datafile (文档 ID 1029252.6)

    APPLIES TO: Oracle Database - Enterprise Edition - Version 9.2.0.1 and laterInformation in this docu ...

  10. 1、程序启动原理和UIApplication【转】

    一.UIApplication 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序. (2)每一个应用都有自己的UIApplica ...