WebRTC现状及实现概要

详解WebRTC——网页实时通信技术 简介全称是: Web browser Real Time Communication 特点如下: 应用场景适用于网页间音视频实时通信,点对点数据共享,QQ、腾讯视频已有应用优势1.方便。对于用户来说,在WebRTC出现之前想要进行实时通信就需要安装插件和客户端,但是对于很多用户来说,插件的下载、软件的安装和更新这些操作是复杂而且容易出现问题的,现在WebRTC技术内置于浏览器中,用户不需要使用任何插件或者软件就能通过浏览器来实现实时通信。 2.免费。虽然WebRTC技术已经较为成熟,其集成了最佳的音/视频引 阅读详情

WebRTC现状及实现概要


摘要: Google 通过把 WebRTC 项目开源,希望浏览器厂商能够将该技术内建在浏览器中,从而使Web应用开发人员能够通过HTML标签和JavaScript API就实现Web音频、视频通信功能。本文讲述浏览器引入 WebRTC技术的必要性、WebRTC ...

1 引言

1.1 编写目的

本文讲述浏览器引入 WebRTC(Web Real-Time Communication) 技术的必要性、WebRTC现状及实现方法。
2011 年以前,浏览器之间要实现实时通信需要私有技术,这些技术大部分都是通过插件和客户端来安装使用。对于许多用户来说,插件的下载、安装和更新是一个复杂、繁琐和容易出错的操作。对于开发人员来说,插件的的调试、测试、部署、错误修复和维护同样很难,同时涉及到的一些技术是受版权保护的,整合也是很复杂的。另外,有时很难说服用户来安装插件。
 Google 在 2010 年收购了 GIPS(Global IP Solutions)公司获得 WebRTC 技术,在 2011 年,按 BSD 协议把 WebRTC 开源了,同年 w3c 启动 WebRTC 计划,使 WebRTC成为 HTML5 标准的一部分,目前该规范还在开发中。
Google 通过把 WebRTC 项目开源,希望浏览器厂商能够将该技术内建在浏览器中,从而使Web应用开发人员能够通过HTML标签和JavaScript API就实现Web音频、视频通信功能。Google 在其官网上列出了使用WebRTC技术的四个理由:
  1. 互联网成功的一个关键因素是一些核心技术如HTML、HTTP和TCP/IP是开放和免费实现的。目前,在浏览器通信领域还没有免费、高质量、完整的解决方案。WebRTC就是这样的技术。
  2. 该技术的使用已经超过了 8 年,集成了最佳的音频、视频引擎,并被部署到数以百万的终端中,同时这些技术 Google不收取任何费用。
  3. 该技术包含了使用STUN、ICE、TURN、RTP-over-TCP的关键NAT和防火墙穿透技术,并支持代理。
  4. 通过浏览器,WebRTC把通讯双方的信令状态直接映射到PeerConnection里面来抽象信令处理,这样 开发人员按不同的应用场景选择不同的会话协议,比如 SIP、XMPP/Jingle等等)。

1.2 定义

WebRTCWebRTC 是 Web Real-Time Communication 的缩写,它是一项在浏览器内部进行实时数据、视频和音频通信的技术,是 Google 2010年以6820万美元收购Global IP Solutions公司而获得一项技术。
MediaStreamTrack媒体数据源,一个媒体数据源构成一个 MediaStreamTrack,比如音频数据源和视频数据源,多个相互之间有关联的媒体数据源(比如有同步关系的音频视频媒体数据源)构成一个媒体流(MediaStream)。
MediaStream媒体流,一个媒体流包含 0 个到多个的媒体数据源,媒体流里面的数据源在呈现(render)必须同步。
MediaStream 通过 getUserMedia 获得。
DataChannel数据通道,两个 WebRTC 终端的连接建立后,它们可以通过这个数据通道传输任意类型的数据。
Peer通过 WebRTC 进行数据交互的节点或用户或终端,它通常是一个 Web App,它们之间的发现,连接的建立和断开通过 signalling(信令)控制。
PeerConnection表示一个 WebRTC 通讯连接对象,它维护与这个通讯连接相关的 MediaStream,处理通讯双方信令事件,完成通讯数据的传输。
Signalling信令,WebRTC 网络通过 Signalling 来发现各个 Peer,通过 Signalling 来控制各个 Peer 之间连接的建立和断开。
STUNSTUN(Session Traversal Utilities for NAT,NAT会话传输应用程序)是一种网络协议,它允许位于NAT(或多重NAT)后的客户端找出自己的公网地址,查出自己位于哪种类型的NAT之后以及NAT为某一个本地端口所绑定的Internet端端口。这些信息被用来在两个同时处于NAT 路由器之后的主机之间建立UDP通信。该协议由RFC 5389定义。
ICE交互式连接建立(Interactive Connectivity Establishment),一种综合性的NAT穿越的技术。
ICE 是由IETF的MMUSIC工作组开发出来的一种framework,可整合各种NAT穿透技术,如STUN、TURN、RSIP(Realm Specific IP,特定域IP)等。该framework可以让SIP的客户端利用各种NAT穿透方式打穿远程的防火墙。
TURNTURN(Traversal Using Relay NAT),是一种资料传输协议(data-transfer protocol)。通过中继服务器,穿透 NAT 或防火墙使两个 TCP 或 UPD 客户端建立连接。

2 参考资料

3 现状

3.1 规范现状

规范现已经发布 1.0 版,处在草案状态,现只支持 1 对 1 通讯,不支持 1 对多通讯,也不支持多对多通讯。
按官网的路线图,预计 2013 年第一季度发布正式推荐标准。

3.2 Google WebRTC(http://www.webrtc.org/)库现状

WebRTC 已经实现了大部分功能,小部分功能还不是很完善,比如:
  • MediaStream 里的音频无法给 audio 标签处理,也无法给其它 Web API(比如 Web Audio)处理;
  • ICE 尚未完全兼容规范 RFC 5245,将要发布的 Chrome M23 会有第一个实现;
  • DataChannel 尚未实现,这个主要是因为标准委员会还在讨论该规范。

3.3 浏览器实现现状

Windows 环境下,据说 IE 从版本 10 开始支持,Chrome 从版本 20 开始支持,Firefox 从版本 17(预计在 2013 年 1 月发布)开始支持,Opera 从版本 12 开始支持,爱立信在 2011-05-26( http://labs.ericsson.com/blog/beyond-html5-experiment-with-real-time-communication-in-a-browser)发布了一个针对 Ubuntu 修改版的 webkit 可以测试 WebRTC 功能。
手机/平板方面,目前只有爱立信在 2012.10.19 发布的移动浏览器 Bowser 支持( https://labs.ericsson.com/blog/bowser-the-world-s-first-webrtc-enabled-mobile-browser)。Bowser 采用自己实现的 WebRTC 框架(没有使用 webrtc.org 的框架),媒体引擎采用 GStreamer,在 iTunes App Store 和 Google Play 有下载,运行效果如下图:

4 设计

4.1 系统框架

如上图,浏览器里的 WebRTC 有两个明显不同的层次:
  1. 浏览器开发人员关注的 WebRTC C++ API 层
  2. Web App 开发人员关注的 Web API 层
图中,各个功能模块介绍如下:
4.1.1 Your Web App
Web开发者开发的程序,Web开发者可以基于集成WebRTC的浏览器提供的web API开发基于视频、音频的实时通信应用。
4.1.2 Web API
面向第三方开发者的WebRTC标准API(Javascript),使开发者能够容易地开发出类似于网络视频聊天的web应用,对应规范参考: http://www.w3.org/TR/webrtc/。
4.1.3 WebRTC C++ API
本地C++ API层,使浏览器厂商容易实现WebRTC标准的Web API。
4.1.4 Transport / Session
传输/会话层,组件来自 libjingle(但不使用或不要求使用 xmpp/jingle 协议)。
1.RTP/SRTP Stack
实时传输协议(SRTP 带加密),浏览器之间建立连接后,通过 RTP 协议传输音视频数据。
2.STUN/ICE
STUN/ICE 组件允许不同网络环境下的浏览器建立直接或间接的通讯连接。
3.Session Management
是一个抽象会话层,执行会话建立和管理功能,这层协议留给应用开发者实现。
4.1.5 VoiceEngine
音频引擎是包含一系列音频多媒体处理的框架,包括从视频采集卡到网络传输端等整个解决方案。功能包括音频 iSAC 编码,iLBC 编码,音频抖动缓冲处理,回声消除,噪音抑制等等。
4.1.6 VideoEngine
视频引擎是包含一系列视频处理的整体框架,从摄像头采集视频到视频信息网络传输再到视频显示整个完整过程的解决方案。功能包括视频 VP8 编解码,视频抖动缓冲处理和图像质量增强等等。

4.2 概要设计

WebRTC 由三个部分组成:
1.MediaStream
来自本地的音频视频流,或者来自远端浏览器的音频视频流。
2.PeerConnection
执行音频视频调用,支持加密和带宽控制。
3.DataChannel
采用点对点传输,用来传输常规数据。
各部分的关系如下图:

4.2.1 MediaStream 实现
媒体流,一个媒体流包含 0 个到多个的媒体数据源,媒体流里面的数据在呈现(render)的时候必须同步进行(就是常说的音视频同步)。WebRTC 客户端连接建立后传递的数据流就是这个东西。 MediaStream 通过 getUserMedia 获得,MediaStream 的实现由 w3c 规范 Media Capture and Streams(http://dev.w3.org/2011/webrtc/editor/getusermedia.html)定义。
4.2.2 Signalling 实现
Signalling 也叫信令,它不是 WebRTC 的一部分,但对于 WebRTC 应用来说很重要!
 除了使用 PeerConnection 在客户端(Peer)之间传输数据流(MediaStream),还需要一种机制在客户端之间传递控制信息,通过控制信息处理客户端之间的发现、连接建立、连接维护和连接关闭等任务,这种机制就是通信领域常说的信令(Signalling)。
信令实现的方法和协议 WebRTC 没有指定,这样 WebRTC 应用的开发者就可以采用合适他们的协议,比如 SIP、XMPP 等等,采用其它合适的双向通讯通道,比如 WebSocket、XMLHttpResuest(XHR)、Google Channel API,来完成信令任务。 http://apprtc.appspot.com/ 的测试例子就是通过 Google Channel API 来实现的。
启动一个 WebRTC 会话,WebRTC 需要以下几个信息:
  • 本地客户端的配置信息;
  • 远程客户端的配置信息;
  • 远程参与建立P2P连接的信息:主要是 IP 和端口。
客户端配置信息叫做 SessionDescription,结构必须符合 Session Description Protocol(SDP, http://tools.ietf.org/html/rfc4566)的要求。
信令的处理过程大致如下:
  1. 呼叫方发送 offer;
  2. 被呼叫方接受这个 offer;
  3. 被呼叫方方式 answer;
  4. 呼叫方接受 answer。
上述信令处理过程叫做 JSEP(JavaScript Session Establishment Protocol,规范为 http://datatracker.ietf.org/doc/draft-ietf-rtcweb-jsep/)。JSEP 在最新版本的 chromium 里有实现参考。
4.2.3 PeerConnection 实现
WebRTC 连接对象,负责客户端信令处理,连接建立,媒体传输等任务。
PeerConnection 参与了 WebRTC 应用开发三个主要模块:发起连接,接受连接和中止连接。
1. 客户端发起一个连接的调用图如下:

2. 客户端接受一个连接的调用图如下:

3. 客户端中止一个连接的调用图如下:

4.2.4 DataChannel 实现
数据通道,现有规范尚未完善,该功能开源库 webrtc.org 还在开发中,待 webrtc.org 库实现后再考虑整合和移植。

5 实现

Chrome 从版本 20 开始支持 WebRTC,实现主要参考 chromium 里的实现进行移植,主要包括以下几个方面:
  • WebKit 库方面,除了适配,已经支持 WebRTC,操作如下:
    1. 编译时启用宏 ENABLE_MEDIA_STREAM;
    2. 采用 http://svn.webkit.org/repository/webkit/trunk/Source/WebCore/Modules/mediastream 下面的所以 idl 文件,并把生成的 cpp 文件添加到 WebCore工程里;
    3. 把 http://svn.webkit.org/repository/webkit/trunk/Source/WebCore/Modules/mediastream 下面的所有 cpp 文件添加到 WebCore工程里;
    4. 把 http://svn.webkit.org/repository/webkit/trunk/Source/WebCore/platform/mediastream 下面的所有 cpp 文件添加到 WebCore工程里;
  • 适配开发

    适配的实现主要是要实现 PeerConnection,参考实现是:

    http://svn.webkit.org/repository/webkit/trunk/Source/WebCore/platform/mediastream/chromium

    (chromium 的适配使用了 http://www.webrtc.org/ 库)

  • WebKit已有实现关键类介绍

    1. 各种事件:

    2. MediaStream 的定义及协作图如下:

    3. MediaStream 适配接口

      其中 MeiaStreamCenterBlackBerry 是 BlackBerry 上的实现,MediaStreamCenterChromium 是 Chromium 的实现,MediaStreamCenterGStreamer 是采用 GStream 框架的实现。

    4. PeerConnection

    5. DataChanne(数据通道)

    6. RTCIceServer(RTC Ice 服务器)

    7. RTCIceCandidate(RTC 参与者)

    8. RTCSessionDescription(RTC 会话描述对象)

6 部署

WebRTC Web APP 应用,不像其它 Web APP 应用,网页提供代码,浏览器支持就可以了。一个典型的 WebRTC Web APP 应用的部署包括以下 3 个部分:

7 测试


完整webRtc技术及应用概要 首先让我们简单了解一下基本的通信背景知识。如果从实时通信和语音协议的发展来看,最早的语音通信协议应该发生在1977年,人们把实时通信技术通过Network Voice Protocol(NVP-rfc741)在网络上应用,并且演示了其技术的可用性。在语音发展过程中,实时通信开始也经历了多个历史阶段,并且结合其他的技术逐渐实现了突破。以下是一个关于语音技术的部分阶段的发展进程。如下图示例所示,最初的工作模型也相对比较简单,随着技术的不断完善和协议的修改,今天的语音技术已经出现了很大的突破。 阅读详情

相关推荐

WebRTC学习—WebRTC详解

目录 一:WebRTC学习了解   (一)WebRTC应用场景   (二)WebRTC的难点   (三)学习流程   (四)学习目标 二:WebRTC介绍   (一)概述   (二)WebRTC可以实现的功能   (三)WebRTC学习内容 三:WebRTC原理与架构   (一)核心层解析   (二)引擎层:音频引擎、视频引擎、传输模块 补充:虽然UDP很适合实时通讯,但是也有需要使用TCP的场景 四:WebRTC目录结构   (一)主目录结构   (二)WebRTC Module目录 五:WebRTC.

Linuxhus的博客 3184

java 实现 websocket的五种方式

本文主要讲述在Java技术领域实现websocket服务的五种方式.  使用Java原生代码实现websocket服务的方法, 此方法需要引入一个第三方库java-websocket.jar. 截至目前2023/01/01最新版本为1.5.3.  项目源代码位于: https://github.com/TooTallNate/Java-WebSocket  示例代码位于: https://github.com/TooTallNate/Java-WebSocket/tree/master/src/m

萧曳丶 1万+

Android开发中WebRTC的现状及未来展望

本文将介绍Android开发中WebRTC的现状以及未来的发展前景,并提供相应的源代码示例供参考。社区支持和生态系统的发展:WebRTC拥有活跃的开发者社区和丰富的生态系统,未来将会有更多的开源项目和工具涌现,为开发者提供更多选择和便利。安全性的提升:随着隐私和安全问题的日益突出,WebRTC将继续加强对数据传输的安全性,确保用户的通信内容不会被未经授权的访问和窃取。更好的性能和稳定性:随着硬件和网络的不断进步,WebRTC在性能和稳定性方面将有进一步的改进,提供更流畅、高质量的音视频通信体验。

UnhcTransforms的博客 257

WebRTC系列——FEC:Reed–Solomon codes for coders(纠错码)

这是一篇翻译原文:纠错码; 简介     纠错码(RS码)是一种用于纠正错误的信号处理技术。 如今,它们无处不在,例如在通信(移动电话、互联网)、数据存储和存档(硬盘驱动器、光盘 CD/DVD/蓝光、存档磁带)、仓库管理(条形码)和广告(二维码)中。     其中Reed–Solomon 纠错是一种特定类型的纠错码。 它是最古老的算法之一,但仍被广泛使用,因为它的定义非常明确,并且现在在公共领域有几种有效的算法可用。 &nbsp

HOSTEN的博客 3843

基于光电传感的非接触式酒精浓度检测系统设计与实现

本文详细介绍了基于光电传感技术的非接触式酒精浓度检测系统设计与实现。系统利用940nm红外LED和OPT101光电传感器,结合朗伯-比尔定律,通过STM32微控制器进行信号采集与处理,实现了快速、准确的酒精浓度测量,测量精度达±1%,适用于工业检测和便携式应用场景。

y7z8a的博客 365

R 绘制环形树状图

按大类小类的从属关系绘制环形图,并把不同值的节点设置为相应大小。要求同一类的节点应为同一颜色。 按照输入,处理代码和输出记录

weixin_43718786的博客 1874

WebRTC简介及使用

WebRTC 只是一个媒体引擎,上面有一个 JavaScript API,所以每个人都知道如何使用它(尽管浏览器实现仍然各不相同),本文对 WebRTC(网页实时通信)的相关内容进行简要介绍。WebRTC,名称源自网页实时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音通话或视频聊天的技术,是谷歌 2010 年以 6820 万美元收购 Global IP Solutions 公司而获得的一项技术。WebRTC 提供了实时音视频的核心技术。

明天你好的博客 3万+

学习笔记【Day 20】鸿蒙PC应用在SD WAN MSTP场景用CodeArts test工具测试过程

多生成树协议(MSTP)作为二层网络高可靠、无环路的核心技术,其在鸿蒙 PC 上的兼容性与稳定性测试尤为重要。本文结合华为云 CodeArts TestPlan 全流程测试管理平台,详细拆解鸿蒙 PC 端 MSTP 功能的测试设计、环境搭建、执行验证。1.测试左移,保障迭代效率CodeArts TestPlan 将 MSTP 测试从后期集成阶段 “左移” 至开发早期,通过可复用用例库与自动化脚本,支持每次代码提交后的快速回归测试,避免网络功能稳定性因迭代被破坏。2.平台化工具破解复杂场景测试难题。

aiyijianghe的博客 1059

什么是WebRTC?零基础快速入门:架构分析、基本概念、连接流程

WebRTC(Web Real-Time Communication)是一个用于浏览器和移动应用程序的技术,允许在不使用插件的情况下实现点对点的音视频通信和数据共享。WebRTC 是一个复杂的技术栈,涉及多个概念,如RTCPeerConnection、Stream、Track、Channel、ICE等概念。以下将对WebRTC的架构、关键概念及连接建立流程进行介绍。

weixin_46056189的博客 8445

GEE——土地利用分类之监督分类

利用GEE做监督分类,以武汉市为例。 训练器我们选择随机森林;数据选择Landsat-8;训练样本使用的是GEE提供的一种,它把地表分为三类:水体、植被和城市用地。 选择训练样本 用要素集来标记训练样本。每个要素都有一个landcover 的属性,0表示城市用地,1表示植被,2表示水体。 对影像进行分类 其中一部分进行分类器的训练,还有一部分留下来做精度验证。 输出影像及混淆矩阵 print(LABEL_DATA); var wuhan = ee.FeatureCollection('users/

qq_41600680的博客 1万+

Ubuntu 24.04 LTS安装WPS Office 2025冬季版全攻略(附字体缺失解决方案)

本文提供了在Ubuntu 24.04 LTS系统上安装WPS Office 2025冬季版的完整指南,详细对比了dpkg、Snap和GUI三种安装方式的优劣。针对安装后常见的中文字体缺失、思源黑体粗细异常等核心问题,给出了从原理分析到手动补充字体库、修改字体配置文件的深度解决方案,确保WPS Office在Linux环境下获得最佳使用体验。

weixin_29284201的博客 620

webRtc技术及应用概要

Web Real-Time Communication(WebRTC)是最近几年非常热门的一项新的基于浏览器的技术,很多VoIP的厂家和应用集成厂家的解决方案中都逐渐支持了WebRTC技术。WebRTC技术通过对浏览器或者移动终端应用,结合API接口,实现了视频,语音功能。当然,WebRTC受到如此多重视,当然也离不开主要的推动者Google,微软,Mozilla等大牌厂家的鼎力支持,以及几个著名的协议组织,例如,W3C和IETF的协助。

liveweb视频汇聚平台 468

【AI大模型应用开发】【LangChain系列】实战案例6:利用大模型进行文本总结的方法探索,文本Token超限怎么办?

假设有一组文档(PDF、Notion页面、客户问题等),你想要总结内容。可以利用大模型来帮你。今天来系统看下利用大模型来对文本进行总结的方法,以LangChain的使用为例。

同学小张的博客 3749

WebRTC是什么

WebRTC(Web Real-Time Communication)是什么?标准?API?还是一个项目?众说纷纭。那么WebRTC到底是什么呢?

ZDK_csdn的博客 1万+

OBC_开环扫频波特图拟合操作流程(结合 Simulink)

摘要: 本文详细介绍了基于Simulink的开环扫频波特图测试与拟合流程,适用于电源/控制系统(如LLC/PFC)的小信号分析。主要内容包括:1)前期准备(测试点选择、信号范围设定);2)Simulink建模方法(信号注入、数据记录);3)两种扫频方式(逐频正弦/Chirp扫频)的实现;4)MATLAB数据处理(FFT分析、传递函数拟合);5)线性分析工具使用技巧。重点强调了激励信号幅值控制、稳态数据采集及模型验证方法,并提供完整MATLAB脚本示例。该流程可有效获取系统频域特性,为控制器设计提供可靠依据。

Sumerking的博客 234

OpenTK简介

OpenTK 因其强大的功能、跨平台特性和灵活性,适用于多种需要图形和计算能力的应用场景,为开发者提供了丰富的可能性和创作空间。

仰望星空的博客 1980

WebRTC与H.265编码的兼容性现状及解决方案

WebRTC作为实时通信的开放标准,与新一代视频编码标准H.265(HEVC)的兼容性存在特定挑战和机遇。

OpenSkeye的博客 2581

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

WebRTC 代码实现详述

WebRTC (Web Real-Time Communication) 是一种支持浏览器进行实时媒体通信的技术,允许音视频通话和数据共享,而不需要安装额外的插件。为了使 WebRTC 进行 P2P(点对点)通信,必须通过信令服务来交换SDP(Session Description Protocol)和 ICE(Interactive Connectivity Establishment)候选者信息。接下来介绍如何使用 HTTP 来交换 WebRTC 信令。

m0_67793437的博客 2144

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

WebRTC 在 Android 端实现一对一通信

WebRTC 在 Android 端实现一对一通信

ProgramNovice的博客 3748

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

webrtc 判断是否支持_完整SIP/SDP媒体协商概论-SIP/WebRTC概要

​Session Description Protocol(简称是SDP)全称是会话描述协议,此协议用来创建一种协商机制,这种协商机制是由呼叫控制协议创建的介于两个呼叫用户之间的会话进行,协商机制支持的四大协商方式主要包括:功能协商性能协商语音和视频的安全设置协商在多媒体会议中的数据协商为了说明SDP的具体内容讨论,我们首先需要明确呼叫控制协议的概念。目前,绝大部分的呼叫控制协议中,我们主要使用S...

weixin_32243793的博客 344
上一篇: HTML5 LocalStorage 本地存储
下一篇: ubuntu12.10下安装Asterisk
zljjava
博客等级 码龄15年 155粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值