Doug Mohney
WebRTC是一个不断发展而且没有固定下来的标准,但很多人在尝试使用WebRTC做其能力以为的事。开发人员的关注点是WebRTC“不能”做某些事情,或者需要被“固定”下来做某些事情。在这种争议中,我认为应该用WebRTC做它能力范围内的事,要用发展和用户需求来驱动能力,而不是将WebRTC过度延伸至当初设计之外的领域。
在话说远之前,请允许我表达这个观点—这些标准非常重要。尽管一些人已经表达过“标准并无所谓”的观点,但需要着重注意的是,标准使每个人—从开发者到用户—的生活都变的更加简单。更为重要的是,一个单一的标准是最好的—这么多年来,并没有这些多SIP标准/差别的混乱阻碍了VoIP无缝互操作性。你将“标准”插入你的问题、解决方案中,开始了,那就继续吧。
WebRTC需要发展成一个每个人都使用的单一标准。现在,在WebRTC 1.0和ORTC之间有一些岔路,今后会分解为WebRTC NV并成为Ring,一个大家都会支持的真正标准。希望WebRTC会发展成所有浏览器(咳咳,Safari,咳咳)都不用插件就能进行音视频通话。苹果正在进行将WebRTC加入的工作,但是鉴于他们总是拖延,他们也许会等WebRTC NV成为一个规范的标准之后才完成,再说了谁知道呢?苹果最终还是会把WebRTC加入到所有东西里,所以这只是一个时间和耐心的问题了—但是大部分的开发者等不起,所以我们做了很多程序补丁(programming duct tape)来使WebRTC应用现在就能在iOS和Safari浏览器上使用。
对于现在的WebRTC应用来说屏幕共享是一个痛处。WebRTC 1.0最初不是为了本地屏幕共享或者本地桌面控制所设计的。作为替代,有很多程序补丁(插件)可以在Chrome及Firefox上激活屏幕共享,这利用了立即安装所需插件的能力—在我看来,这是一个可以使所有插件都工作的方法。
远程控制是设计WebRTC时所没有涉及到的一点。怎么想怎么都觉得这是安全方面的噩梦,所以你需要不同系列的工具/代码来以一个相对于安全且合理的方式实现。
有一项进步我会把它放在WebRTC的任务清单(to-do list)上,就是即时动态地加入新的音频和视频编译码器。所有人好像都想要一系列真正的固定标准,同时也在继续为今后会加入的新的且更好的视频编译码器工作。为什么要局限于你已经知道将来一定会被替代的事物之中呢?
WebRTC应该在互操作性能上有一个“标准”编译码器的基线。但是也没有理由为什么一个浏览器不能够“获得”新编译码器,要么是事务处理的一次性原则,要么是永久性的作为维护更新或者其他机制的一部分存储新编译码器。是的,这有点像插件以及与其相关的坏事,但是需要进行一些识别,编译码器应该是一个可互换的通信机理而不是一成不变的设置。