通用信息

全部产品通用的技术详情

解剖实时猫:了解产品结构,形态,应用场景,网络需求,使用流程等

标记 † 表示该部分功能仅由视频通信解决方案提供

产品

总览

实时猫公私有云一般均由客户端SDK和云两部分组成。

SDK

各平台SDK帮助开发者快速连入实时猫视频通信公有云,实现通信功能,配置参数,控制流程。 包括下列组件,以及相应的文档、Demo和工具:

  • JavaScript Web SDK
  • Android SDK
  • iOS SDK
  • 其它 SDKs

  • 视频通信公有云
    组件用途
    智能实时网络由视频通信服务器节点组成的高质量实时通信网络
    云计算能力针对视频流的监控,切换,录制,加密等云计算能力
    服务器API使用API接口与整个实时猫云沟通:控制连接形态和权限,获取和分析统计信息等
    开发者控制台除提供全部API接口的控制和通信分析统计界面外,还支持公有云的账号和财务管理
  • WebRTC私有云 †

    基于对WebRTC实时通信标准的兼容,为企业提供可独立部署、功能更强大的通信底层技术产品、通信能力以及定制服务。

    产品用途
    视频通信私有云 †
    1. 将实时猫通信云技术部署到指定的企业私有服务器和网络,提供与公有云一致的使用体验,更好的NAT穿透能力,以及更安全强大的企业通信基础设施、开发套件,以及监控平台。
    2. 与其它实时猫高级WebRTC私有云产品结合,实现企业级跨平台、嵌入式通信,并解决负载均衡,智能路由,弹性伸缩,录制存储,QoS,VoIP网关等网络问题。
    视频会议平台† 可供企业深度修改定制的实时猫网页会议平台产品。连接实时猫公私有云,提供小型会议、讨论室、在线咨询、教学、远程客服等场景所需的通话、白板、聊天、文件分享等功能。
    WebRTC媒体服务器 © † 实时猫独有的WebRTC媒体服务器能够提供对接WebRTC协议的服务器端通信和处理功能。包括服务器中继(Forwarding),转发(SFU),用于视频通信的软件定义网络(SDN),转码(Transcoding),录制(Recording),群组通话和混屏(MCU/MSM/MMM),直播推流(Pushing/Broadcasting);以及与浏览器、客户端的信令(Signaling),RTP/RTP消息处理和通信逻辑处理。是大规模,高性能VoLTE网络的技术基础。
    WebRTC 信令网关 © † 高性能的SIP/PSTN/VoIP与WebRTC互通透明网关。服务于呼叫中心,融合通信,VoIP,跨平台通信,传统通信对接等领域。

交付形态

视频通信公有云

开发者自行注册并使用SDK连接实时猫公有云开发,远程访问开发资源,获取技术支持。按使用通信资源的时间长度付费。

WebRTC 私有云

联系实时猫,根据不同需求,获得远程快速部署,技术咨询,定制开发,深度渠道合作等丰富灵活的产品/服务形态。同时获得不同级别的后续技术支持和开发协助。按具体项目和服务情况付费。

场景和运行条件

适用场景

实时猫适合任何单双向自由,小规模,高并发的实时视频通话场景,包括但不限于一对一视频通话,视频客服通话,在线招聘,小班教学,小型在线研讨室和会议室等。 WebRTC私有云 † 还支持更加复杂的大型使用场景。

场景要求适应性
嵌入场景可嵌入任何网页和软件的任何环节
通信形式可自定义通信场景和形式,包括一对一,一对多,多对多等,私有云支持更多场景
支持平台
  • Web网页
  • Android, iOS
  • Windows, macOS 混合式 App
  • Windows, macOS 和 Linux 操作系统原生支持 †
音视频控制音频/视频均可分别控制开启关闭
流向控制可动态定义和开关任何端的上/下行的音/视频
通信控制可动态开启/关闭音视频
音视频适应性可调整视频大小,帧率 (FPS),编解码器等。可获取视频质量评价,网络延迟,丢包率等
通话参与人数每次不超过8人的实时多人群组通话,私有云支持更多人数
直播会议人数最多200听众的会议直播 †
录制存储服务器录制和云存储 †
连接其它通信协议和通信设备支持 SIP / PSTN / VoIP / RTP / RTMP 等网关 †

兼容性

总览

平台支持情况
WebJavaScript Web SDK 兼容 Chrome 43+, Firefox 39+, Opera 23+ 以及大多数国产浏览器
Android
  1. Android 原生 SDK
  2. Web SDK 兼容 Android 5.0+ 原生浏览器以及Chrome Mobile浏览器
iOSiOS 原生 SDK
Win/macOS/Linux
  1. Hybrid (混合式) SDK
  2. 基于GTK+ 的原生SDK †

浏览器兼容性 (JavaScript Web SDK)

  • 实时猫在浏览器端的通信基于WebRTC技术实现,因此需要支持该技术的浏览器内核。
  • 在桌面端,目前Chrome,Firefox,Opera 浏览器,以及绝大多数国产浏览器的近期版本,包括360安全浏览器7.2+ 等等,均可顺利兼容实时猫。
  • 在移动端,Web端可以兼容 Android 5.0+ 原生浏览器以及Android 系统下的Chrome Mobile浏览器。iOS 系统中尚无浏览器可以完美支持实时猫Web端。为了实现最大的移动端兼容性,可使用实时猫 iOS 和 Android的原生SDK。
  • Microsoft Edge和Safari浏览器将在未来不久的更新后兼容。Internet Explorer无法兼容实时猫。

移动端兼容性 (Android 和 iOS 原生 SDK)

  • Android SDK
    项目需求
    操作系统版本Android v4.1+
    API版本v16+
  • iOS SDK
    项目需求
    操作系统版本iPhone 4s+
    iPhoneiPhone 4s+
    iPadiPad 2+

混合式 (Hybrid) 应用

在混合式应用开发中嵌入实时猫,即在其它平台展示/打包基于实时猫 Web JavaScript SDK 开发的应用,可以考虑以下方案

平台方案
多种平台Electron
多种平台Crosswalk
AndroidAndroid Webview v36 以上
JavaJxBrowser
C++Qt5 Webengine
C# WebCefSharp

桌面操作系统

如需从桌面操作系统 (Windows, macOS, Linux) 连接实时猫,建议使用 HTML + JS + Electron 的方式构建混合式桌面应用,打通 Web 与桌面系统。

对于特定需求的私有云用户,实时猫还提供基于GTK+,支持全部常见32位和64位桌面操作系统的原生SDK。

网络要求

总览

一对一视频通话场景下的客户端带宽概略需求如下

分辨率(pixels)最小带宽需求约数 (kbps)
160x120200
320x240600
480x3201600
640x4802000
1024x7682400

细节

  • 网络分析模型
    • 实时猫视频通信公有云服务可以按照点对点连接这一模型理解。WebRTC私有云服务† 还会使用其它模型。
    • 在点对点模型中,要将A的视频发送给B,会产生一道上传的数据流;要获取B的视频,同样会接收一道下载的数据流,这样就会产生双向网络流量。
    • 对于任意一端,要正常使用进行通讯,需要保证每一时刻,网络上传带宽大于上传数据的码率,且下载带宽大于下载数据的码率。
  • 一对一通信

    (即将更新)

  • 视频通信(帧率取 15 FPS)

    (即将更新)

功能

协议和编码器支持

支持的协议

协议
WebRTC
ORTC †
SIP / PSTN / VoIP †

支持的媒体传输层

协议
ICE / STUN / TURN
RTP / RTCP
DTLS-SRTP

支持的音频编解码器

编解码器
Opus
iSAC
iLBC

支持的视频编解码器

编解码器
VP8
VP9
H.264
VP10和H.265

编解码器和视频参数均可自行设置和动态调整,具体方法见各SDK相关章节。

SDK功能

  • 核心功能  RTCat

    功能点支持情况
    创建会话(Session)
    获取本地视频流(Stream)
    监测网络状况
    获取音视频输入输出设备
  • 会话控制  Session

    功能点支持情况
    新建会话
    发送接收数据消息
    • 发送接收点对点消息
    • 发送接收广播消息
    获取会话状态
    获取会话中各端(Peer)
    接收各端进出状态
    断开会话
  • 视频流控制  Stream

    功能点支持情况
    创建视频流
    • 创建
  • 收发端处理  Peer: Sender & Receiver

  • 事件和异常监控  Events & Errors

  • 开发者控制台功能

    项目管理  Projects

    (即将更新)

    用量统计  Statistics

    (即将更新)

    会话分析  Analytics

    (即将更新)

    服务器API功能

    项目

    (即将更新)

    会话

    (即将更新)

    令牌

    (即将更新)

    录制

    (即将更新)

    网络优化支持

    NAT 穿透

    通过ICE(Interactive Connectivity Establishment)协议协商解决点对点传输中的NAT穿透问题并提高通信的可靠性。在ICE框架下,实时猫使用完全自研的STUN和TURN。

    • STUN

      独立研发的STUN(Session Traversal Utilities for NAT)用于帮助NAT/防火墙后的两端获得双方的公共地址并建立连接。

    • TURN

      独立研发的TURN(Traversal Using Relay around NAT)高效实现经过单台服务器或服务器链路来接力(Relay)的连接。拥有完备的基于地理位置的智能接入和负载均衡功能。

    多点接入

    用于优化不同网络的用户的接入体验的实时网络技术。通过基于地理位置的智能DNS技术,将用户发起通信自动连入最近的服务器节点,再由节点将音视频流实时发送至骨干网络。

    智能传输

    在弹性伸缩的音视频云中,自动发现最优中继传输路径,优化传输路由,降低延迟,并动态监控网络性能和负载变化情况。

    网络补偿

    • 丢包重传 †

      对音视频数据包修复,重排,缓存,重发,以修复网络问题造成的通信错误。

    • 前向纠错 (FEC) †

      在网络传输丢包严重或视频质量要求较高时,通过包含纠错信息的编码包尝试恢复数据损失。

    开发

    Demo和工具

    公开工具

    视频会议平台演示 ©

    快速分析测试网络状况和视频效果,监测具体环境(操作系统、硬件设备、软件配置、网络状况)下使用实时猫的一对一音视频连接效果。

    支持Web ©、Android ©、iOS ©、Windows以及macOS。

    专用工具 †

    • 录制测试工具

      测试实时猫公私有云录制服务器节点的连接,录制和回放效果。

    • NAT网络穿透测试工具

      在多平台上检测NAT类型的客户端工具。

    • SFU视频转发测试工具

      兼容WebRTC的实时音视频流透明路由转发工具。

    • MCU 测试工具

      兼容WebRTC的多视频源混屏测试工具,支持2-36路混合。