CN108206833A - 音视频数据传输方法及其系统 - Google Patents
音视频数据传输方法及其系统 Download PDFInfo
- Publication number
- CN108206833A CN108206833A CN201810027382.5A CN201810027382A CN108206833A CN 108206833 A CN108206833 A CN 108206833A CN 201810027382 A CN201810027382 A CN 201810027382A CN 108206833 A CN108206833 A CN 108206833A
- Authority
- CN
- China
- Prior art keywords
- audio
- rtmp
- video
- rtp
- datas
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title claims abstract description 39
- 241001269238 Data Species 0.000 claims abstract description 122
- 238000006243 chemical reaction Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供一种音视频数据传输方法及其系统,方法包括:客户端上的WebRTC模块采集得到RTP音/视频数据;转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;转换所述RTMP数据流为RTP数据流后发送至WebRTC模块。本发明能够实现在不对原有视频服务器进行任何改动的情况下,实现客户端音效的显著提升,优化用户体验。
Description
技术领域
本发明涉及音视频处理领域,具体说的是一种音视频数据传输方法及其系统。
背景技术
现有的某些视频会议技术在实际运用过程中,运行视频会议应用程序的客户端在对讲过程中扬声器会出现回声、啸叫等问题,外放效果不佳,必须带上耳机接听,用户体验极差。如现有的天河互动应用程序等。
本发明针对出现上述问题的一种特定的视频会议方案进行改进。该方案基于采用RTMP协议(实时消息传输协议)进行视频传输的服务器实现,而本发明则在不对服务器系统进行扩展和不增加成本、复杂度的情况下,通过在原有的服务器上进行数据传输方案的改进,以实现同时支持视频直播和视频双向通话功能,且保证这两项功能的实现过程具有良好的体验。
发明内容
本发明所要解决的技术问题是:提供一种音视频数据传输方法及其系统,对于采用RTMP协议进行视频直播和视频双向通话的系统,能够基于原有的服务器,实现音效播放品质的显著提升。
为了解决上述技术问题,本发明采用的技术方案为:
一种音视频数据传输方法,包括:
客户端上的WebRTC模块采集得到RTP音/视频数据;
转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;
获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;
转换所述RTMP数据流为RTP数据流后发送至WebRTC模块。
本发明提供的另一个技术方案为:
一种音视频数据传输系统,包括依次连接的客户端、转换传输模块以及服务器;
所述客户端上装载有WebRTC模块,用于采集得到RTP音/视频数据;
所述转换传输模块,用于转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;以及从服务器获取RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块;
所述服务器,用于对所述RTMP音/视频数据处理后得到的RTMP数据流。
本发明的有益效果在于:本发明能够针对采用RTMP协议进行视频直播和视频双向通话的系统,直接基于现有的采用RTMP协议的视频服务器,不对其进行任何功能扩展,在不增加成本、复杂度的情况下。通过在客户端上引入WebRTC模块,利用WebRTC模块(支持网页浏览器进行实时语音对话或视频对话的技术)所具备的能够对所要展示的音视频信息进行包括回声消除、噪声抑制等处理的功能特征,实现在视频直播和视频双向通话过程中,能够具备良好的音视频效果,特别是显著提升音效品质。
附图说明
图1为本发明的一种音视频数据传输方法的流程示意图;
图2为本发明实施例一的系统结构组成及信息交互示意图;
图3为本发明实施例一的网关推流过程的步骤流程示意图;
图4为本发明实施例一的网关拉流过程的步骤流程示意图;
图5为本发明的实施例二的系统程序模块结构组成示意图;
图6为本发明的实施例一中客户端的WebRTC框架的结构组成示意图;
图7为本发明的实施例一的音视频数据交互示意图。
标号说明:
1、客户端;2、网关;3、服务器;
11、WebRTC模块;
21、节点构建模块;22、推流模块;23、拉流模块;
221、接收单元;222、第一转换单元;223、第一转换单元;
224、音频处理单元;225、视频处理单元;
231、拉取单元;232、解复用单元;233、音频复用单元;
234、视频复用单元。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:基于现有的服务器,通过客户端引入WebRTC模块,实现在视频直播和视频双向通话过程中,能够具备良好的音视频效果,特别是显著提升音效品质。
本发明涉及的技术术语解释:
请参照图1,本发明提供一种音视频数据传输方法,包括:
客户端上的WebRTC模块采集得到RTP音/视频数据;
转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;
获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;
转换所述RTMP数据流为RTP数据流后发送至WebRTC模块。
从上述描述可知,本发明的有益效果在于:1、由于客户端采用rtmp协议与视频服务器交互,因此原有的视频服务器系统不需扩展。本发明能够在无需增加服务器成本、复杂度的情况下,无论是视频直播或是视频双向通话场景都能获得很好的音视频效果。2、引入开源WebRTC框架,利用WebRTC框架解决回声、啸叫等问题。实现在客户端双向视频通话时,无需带上耳机可直接外放,且外放无回声、啸叫等问题,达到较好的用户体验。
进一步的,通过网关以推流的方式执行所述转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器。
进一步的,通过网关以拉流的方式执行所述获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块。
由上述描述可知,由于视频服务器采用的是RTMP协议,而WebRTC模块采用的是RTC协议,因此,通过网关模块以推流和拉流的方式能很好的实现RTC与RTMP的互转,保证客户端与服务器的正常通信。
进一步的,所述转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器,具体为:
网关接收WebRTC发送过来的RTP音/视频数据;
将所述RTP音/视频数据的时间戳转换为RTMP音/视频数据的时间戳;
依据RTMP协议将转换时间戳后的RTP音/视频数据转换为RTMP音/视频数据,并将其发送至服务器。
由上述描述可知,通过网关实现RTC与RTMP的互转,能够兼具较高的转换效率和良好的转换效果。
进一步的,还包括:
构建网关与所述WebRTC模块连接的ICE节点;
WebRTC模块将采集得到的所述RTP音/视频数据发送到ICE节点。
由上述描述可知,能够利用开源ice4j库灵活地构建网关与WebRTC交互的ice节点,实现二者基于分布式部署的ice节点网络进行数据传输。
进一步的,将WebRTC模块采集得到的RTP音频数据进行AAC编码后再发送至ICE节点。
由上述描述可知,由于视频服务器处理的音频编码需要AAC编码,因此,需要在WebRTC框架中增加对AAC音频编解码的支持。
进一步的,所述转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器,具体为:
网关通过ICE节点获取所述RTP音/视频数据;
若为RTP音频数据,则对其进行AAC解包;将解包后的RTP音频数据的时间戳转换为RTMP音频数据的时间戳;依据RTMP协议将转换时间戳后的RTP音视频数据转换为RTMP音视频数据,并将其发送至服务器;
若为RTP视频数据,则对其进行解包;将解包后的RTP视频数据的时间戳设置为与所述RTMP音频数据的时间戳一致;依据RTMP协议将设置好时间戳后的RTP视频数据转换为RTMP视频数据,并将其发送至服务器。
由上述描述可知,网关需要对获取到的音频数据或视频数据分别进行时间戳的转换,以及协议的转换,以保证服务器获取到的能够进行后续处理的RTMP数据与原始数据本质上的一致性。
进一步的,所述获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;转换所述RTMP数据流为RTP数据流后发送至WebRTC模块,具体为:
网关通过FFmpeg模块从服务器拉取对所述RTMP音/视频数据处理后得到的RTMP数据流;
FFmpeg模块解复用所述RTMP数据流,获得原始RTMP数据流;
若所述原始RTMP数据流为原始AAC音频数据流,则对其添加ADTS音频头部信息,以及构建音频视频同步数据rtcp sr信息;然后再通过FFmpeg模块复用成RTP音频数据后发送至WebRTC模块;
若所述原始RTMP数据流为原始H264视频数据流,则构建音频视频同步数据rtcpsr信息;然后再通过FFmpeg模块复用成RTP视频数据后发送至WebRTC模块。
由上述描述可知,网关将以拉流的方式获取服务器的处理结果,并进行解复用处理后返回给客户端,以保证服务器处理结果的正常播放。
进一步的,还包括:
WebRTC模块对接收到的RTP数据流进行噪声抑制和回声消除处理后,通过客户端播放。
由上述可知,能够直接利用WebRTC模块的功能特性进行数据流音效播放品质的改良,以实现在视频直播或视频双向通话场景中都能获取良好的音视频效果。
本发明提供的另一个技术方案为:
一种音视频数据传输系统,包括依次连接的客户端、转换传输模块以及服务器;
所述客户端上装载有WebRTC模块,用于采集得到RTP音/视频数据;
所述转换传输模块,用于转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;以及从服务器获取RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块;
所述服务器,用于对所述RTMP音/视频数据处理后得到的RTMP数据流。
从上述描述可知,本发明的有益效果在于:能够基于原有的服务器,在不对其进行任何功能扩展的情况下,通过客户端上装载的WebRTC模块实现视频直播和视频双向通话过程中音效播放品质的显著提升。
实施例一
请参照图2至图6,本实施例提供一种音视频数据传输方法,适用于采用RTMP协议的视频服务器与客户端之间进行音视频数据传输的系统,能够在不对视频服务器做任何功能扩展,不增加任何成本、复杂度的前提下,很好的解决现有基于上述系统进行视频直播和视频双向通话过程中音效不佳(外放出现回声、啸叫等问题)的问题。
具体的,本实施例通过引入开源WebRTC框架至客户端,利用WebRTC框架的音效处理特性实现音效的提升,解决双向视频通话和视频直播过程中外放出现回声、啸叫等问题。而由于现有的视频服务器是采用RTMP协议,开源WebRTC框架采用的是RTC协议。因此,为了保证视频直播和视频双向通话功能的实现,本实施例的方法还需要有传输数据的转换处理过程(至少包括协议的转换,时间戳的转换)。同时,由于视频服务器对音频编码需要AAC编码,因此,还要同时在WebRTC框架中增加对音频进行ACC编码的支持。本实施例中的WebRTC框架的结构组成示意图如图6所示。
下面,将对本实施例的方法展开详细说明。
本实施例的方法基于包括客户端、视频服务器以及一转换传输模块的系统实现。通过转换传输模块实现数据传输,以及RTP与RTMP的互转,以及音视频同步算法添加RTP/RTMP时间戳。在此,优选所述转换传输模块为网关,包含推流和倒流步骤,能够实现转换效率以及转换质量的保证。请参阅图2,为本实施例以客户端为手机端,视频服务器为流处理服务器,转换传输模块为网关为例的系统结构组成及信息交互示意图。
请同时参阅图7,本实施例的方法步骤包括:
S1:构建网关与客户端上的WebRTC模块连接的ICE节点;
具体利用开源ice4j库构建与WebRTC交互的ice节点,能够灵活、便捷地搭建分布式部署的ice节点网络作为网关与WebRTC模块的信息传输桥梁。
S2:客户端上的WebRTC模块采集得到RTP音/视频数据,并将其封装成RTP数据包后发送至ICE节点;
具体的,通过客户端上的WebRTC模块采集获取本地的摄像头和麦克风的音/视频数据,该音/视频数据的传输协议为RTP。
具体的,所述封装过程,包括将采集得到的音频数据进行AAC编码;将采集得到的视频数据进行H264编码;将经过编码的音频数据或视频数据封装成RTP数据包。其中,WebRTC模块原先就支持H264编码,而AAC编码为本实施例新增。
S4:网关以推流的方式转换所述RTP音/视频数据为RTMP音/视频数据;
具体的,请参阅图3,该步骤可以包括以下子步骤:
S41:网关通过ICE节点获取RTP数据包;
具体的,网关的ICE节点通过RTCP协议请求关键帧,保证每隔4-8秒,优选为5秒请求一次关键帧,以获取所述RTP音/视频数据。
S42:网关的ICE节点接收WebRTC模块发送过来的RTP数据包;
S43:解析接收到的RTP数据包,判断接获取到的是音频数据还是视频数据;
若是音频数据,则执行S44,依次进行解析AAC的RTP音频数据包,添加RTMP时间戳,以及协议转换后发送至服务器;
若是视频数据,则执行S45,依次进行解析H264的RTP视频数据包,转换时间戳与音频的时间戳保持一致,以及转换协议后发送至服务器;
其中,转换时间戳采用的是时间戳转换算法实现。由于RTP数据包的时间戳代表的是采样数量,而RTMP数据包的时间戳代表的是NTP时间(网络时间协议),因此,需要通过时间戳转换来保证数据进行协议转换后时间的同步,以及音频数据与视频数据的事件同步。例如rtp每个包的采样步进为1024,采样率为48000,需要将其转换为rtmp的时间戳步进为(1024/48)毫秒。
可选的,通过srs-librtmp模块构建AAC(RTP音频数据)的RTMP数据,以及构建H264(RTP视频数据)的RTMP数据。
下面,对S44以及S45步骤展开进行说明:
S44:对音频数据进行AAC解包;对解包后的RTP音频数据,通过引入音视频同步算法添加RTMP时间戳,即将时间戳转换为RTMP音频数据的时间戳;然后再依据RTMP协议将经过时间戳转换的RTP音视频数据转换为RTMP音视频数据后发送至服务器;然后,返回至S2步骤,继续采集处理接收到的RTP数据包;
S45:对其进行H264解包;设置时间戳,使解包后的RTP视频数据的时间戳与上述RTMP音频数据的时间戳一致;然后依据RTMP协议将设置好时间戳后的RTP视频数据转换为RTMP视频数据后发送至服务器。然后,返回至S2步骤,继续采集处理接收到的RTP数据包;
S5:服务器接收到RTMP视频数据和/或RTMP音频数据后,进行相关处理,得到RTMP协议的数据流。
S6:网关以拉流的方式执行所述获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块。
具体的,请参阅图4,该步骤可以包括以下子步骤:
S61:网关利用开源FFmpeg模块从视频服务器上拉取所述RTMP数据流;
S62:网关利用FFmpeg模块解复用所述RTMP数据流,获得原始RTMP数据流。
原始的RTMP数据流是纯净的ES流数据,而对于经过编码处理后的数据流,由于没有头部信息供后续解码使用,是不能成功播放的,因此还需要对其作进行处理再发送给客户端。具体处理包括:
若获得的原始RTMP数据流为原始AAC音频数据流,则对其添加ADTS音频头部信息,然后构建音频视频同步数据rtcp sr信息(采用FFmpeg模块在复用成RTP数据流时周期性的生成rtcp sr信息);最后再采用FFmpeg模块复用成RTP音频数据后发送至WebRTC模块;
若获得的原始RTMP数据流为原始H264视频数据流,则构建音频视频同步数据rtcpsr信息(采用FFmpeg模块在复用成RTP数据流时周期性的生成rtcp sr信息);然后再通过FFmpeg模块复用成RTP视频数据后发送至WebRTC模块。
S7:客户端上的WebRTC模块对接收到的RTP数据流进行包括噪声抑制和回声消除等处理,消除数据流中的回声、啸叫等候,通过客户端播放显示。然后,返回步骤S6,继续获取后续的RTMP数据流。
实施例二
请参照图5,本实施例对应实施例一,提供一种音视频数据传输系统,包括依次连接的客户端1、转换传输模块以及服务器3;
其中,所述客户端1上装载有WebRTC模块11,用于采集得到RTP音/视频数据,并将其发送至ICE节点;以及对接收到的RTP数据流进行噪声抑制和回声消除处理后,通过客户端播放。
其中,所述转换传输模块,优选为网关2,用于转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;以及从服务器获取RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块;
其中,所述服务器3,用于对所述RTMP音/视频数据处理后得到的RTMP数据流。
具体的,上述的WebRTC模块11,具体用于将采集得到的所述RTP音/视频数据发送到ICE节点,若采集得到的是RTP音频数据,则将其进行AAC编码后再发送至ICE节点;
上述的网关2包括以下模块:
节点构建模块21,用于构建网关与所述WebRTC模块连接的ICE节点;
推流模块22:用于转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;推流模块22具体可以包括:
接收单元221,用于网关接收WebRTC发送过来的RTP音/视频数据;
第一转换单元222,用于将所述RTP音/视频数据的时间戳转换为RTMP音/视频数据的时间戳;
第二转换单元223,用于依据RTMP协议将转换时间戳后的RTP音/视频数据转换为RTMP音/视频数据,并将其发送至服务器。
在另一具体实施方式中,所述推流模块22具体可以包括:
接收单元221,用于网关通过ICE节点获取所述RTP音/视频数据;
音频处理单元224,用于若为RTP音频数据,则对其进行AAC解码;将解码后的RTP音频数据的时间戳转换为RTMP音频数据的时间戳;依据RTMP协议将转换时间戳后的RTP音视频数据转换为RTMP音视频数据,并将其发送至服务器;
视频处理单元225,用于若为RTP视频数据,则对其进行解码;将解码后的RTP视频数据的时间戳设置为与所述RTMP音频数据的时间戳一致;依据RTMP协议将设置好时间戳后的RTP视频数据转换为RTMP视频数据,并将其发送至服务器。
网关2还包括:拉流模块23:用于执行所述获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块;拉流模块23具体可以包括:
拉取单元231,用于网关通过FFmpeg模块从服务器拉取对所述RTMP音/视频数据处理后得到的RTMP数据流;
解复用单元232,用于FFmpeg模块解复用所述RTMP数据流,获得原始RTMP数据流;
音频复用单元233,用于若所述原始RTMP数据流为原始AAC音频数据流,则对其添加ADTS音频头部信息,以及构建音频视频同步数据rtcp sr信息;然后再通过FFmpeg模块复用成RTP音频数据后发送至WebRTC模块;
视频复用单元234,用于若所述原始RTMP数据流为原始H264视频数据流,则构建音频视频同步数据rtcp sr信息;然后再通过FFmpeg模块复用成RTP视频数据后发送至WebRTC模块。
综上所述,本发明提供的一种音视频数据传输方法及其系统,能够实现在不对原有视频服务器进行任何改动的情况下,实现客户端音效的显著提升,优化用户体验。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种音视频数据传输方法,其特征在于,包括:
客户端上的WebRTC模块采集得到RTP音/视频数据;
转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;
获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;
转换所述RTMP数据流为RTP数据流后发送至WebRTC模块。
2.如权利要求1所述的音视频数据传输方法,其特征在于,通过网关以推流的方式执行所述转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器。
3.如权利要求2所述的音视频数据传输方法,其特征在于,所述转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器,具体为:
网关接收WebRTC发送过来的RTP音/视频数据;
将所述RTP音/视频数据的时间戳转换为RTMP音/视频数据的时间戳;
依据RTMP协议将转换时间戳后的RTP音/视频数据转换为RTMP音/视频数据,并将其发送至服务器。
4.如权利要求2所述的音视频数据传输方法,其特征在于,还包括:
构建网关与所述WebRTC模块连接的ICE节点;
WebRTC模块将采集得到的所述RTP音/视频数据发送到ICE节点。
5.如权利要求4所述的音视频数据传输方法,其特征在于,将WebRTC模块采集得到的RTP音频数据进行AAC编码后再发送至ICE节点。
6.如权利要求5所述的音视频数据传输方法,其特征在于,所述转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器,具体为:
网关通过ICE节点获取所述RTP音/视频数据;
若为RTP音频数据,则对其进行AAC解包;将解包后的RTP音频数据的时间戳转换为RTMP音频数据的时间戳;依据RTMP协议将转换时间戳后的RTP音视频数据转换为RTMP音视频数据,并将其发送至服务器;
若为RTP视频数据,则对其进行解包;将解包后的RTP视频数据的时间戳设置为与所述RTMP音频数据的时间戳一致;依据RTMP协议将设置好时间戳后的RTP视频数据转换为RTMP视频数据,并将其发送至服务器。
7.如权利要求2所述的音视频数据传输方法,其特征在于,通过网关以拉流的方式执行所述获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块。
8.如权利要求7所述的音视频数据传输方法,其特征在于,所述获取服务器对所述RTMP音/视频数据处理后得到的RTMP数据流;转换所述RTMP数据流为RTP数据流后发送至WebRTC模块,具体为:
网关通过FFmpeg模块从服务器拉取对所述RTMP音/视频数据处理后得到的RTMP数据流;
FFmpeg模块解复用所述RTMP数据流,获得原始RTMP数据流;
若所述原始RTMP数据流为原始AAC音频数据流,则对其添加ADTS音频头部信息,以及构建音频视频同步数据rtcp sr信息;然后再通过FFmpeg模块复用成RTP音频数据后发送至WebRTC模块;
若所述原始RTMP数据流为原始H264视频数据流,则构建音频视频同步数据rtcp sr信息;然后再通过FFmpeg模块复用成RTP视频数据后发送至WebRTC模块。
9.如权利要求1所述的音视频数据传输方法,其特征在于,还包括:
WebRTC模块对接收到的RTP数据流进行噪声抑制和回声消除处理后,通过客户端播放。
10.一种音视频数据传输系统,其特征在于,包括依次连接的客户端、转换传输模块以及服务器;
所述客户端上装载有WebRTC模块,用于采集得到RTP音/视频数据;
所述转换传输模块,用于转换所述RTP音/视频数据为RTMP音/视频数据后发送至服务器;以及从服务器获取RTMP数据流;以及转换所述RTMP数据流为RTP数据流后发送至WebRTC模块;
所述服务器,用于对所述RTMP音/视频数据处理后得到的RTMP数据流。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810027382.5A CN108206833B (zh) | 2018-01-11 | 2018-01-11 | 音视频数据传输方法及其系统 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810027382.5A CN108206833B (zh) | 2018-01-11 | 2018-01-11 | 音视频数据传输方法及其系统 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN108206833A true CN108206833A (zh) | 2018-06-26 |
| CN108206833B CN108206833B (zh) | 2021-04-27 |
Family
ID=62605616
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201810027382.5A Active CN108206833B (zh) | 2018-01-11 | 2018-01-11 | 音视频数据传输方法及其系统 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN108206833B (zh) |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109194697A (zh) * | 2018-11-01 | 2019-01-11 | 杭州当虹科技股份有限公司 | SIP协议在GB28181下Internet监控方法 |
| CN109246115A (zh) * | 2018-09-26 | 2019-01-18 | 杭州当虹科技股份有限公司 | Sip协议在gb28181下无线网络监控方法 |
| CN110381350A (zh) * | 2019-06-25 | 2019-10-25 | 杭州叙简科技股份有限公司 | 基于webrtc的多路录像回放同步系统及其处理方法 |
| CN110958466A (zh) * | 2019-12-17 | 2020-04-03 | 杭州当虹科技股份有限公司 | 一种基于rtmp传输的sdi信号同步回传方法 |
| CN111314786A (zh) * | 2019-12-10 | 2020-06-19 | 杭州当虹科技股份有限公司 | 一种基于WebRTC的PC屏幕分享方法 |
| CN111613103A (zh) * | 2020-06-02 | 2020-09-01 | 河南优观大数据科技有限公司 | 一种多对多音视频交互式远程直播录播教培云系统 |
| CN112533006A (zh) * | 2020-11-05 | 2021-03-19 | 深圳市咪码科技有限公司 | 直播平台与voip终端的通信方法及装置 |
| CN112995714A (zh) * | 2021-04-08 | 2021-06-18 | 天津天地伟业智能安全防范科技有限公司 | 私有视频流转换rtmp标准流的方法及装置 |
| CN113301373A (zh) * | 2021-05-21 | 2021-08-24 | 山东新一代信息产业技术研究院有限公司 | 一种实现视频直播与回放的方法及系统 |
| CN114025191A (zh) * | 2021-11-04 | 2022-02-08 | 北京睿芯高通量科技有限公司 | 一种基于Nginx-rtmp的webrtc低延迟直播方法及系统 |
| CN114285910A (zh) * | 2021-12-23 | 2022-04-05 | 号百信息服务有限公司 | 通信终端与互联网音频格式重塑系统和方法 |
| CN114297553A (zh) * | 2021-12-28 | 2022-04-08 | 上海绚显科技有限公司 | 一种推拉流格式转换方法、装置、电子设备及存储介质 |
| WO2023036258A1 (zh) * | 2021-09-10 | 2023-03-16 | 深圳市道通智能航空技术股份有限公司 | 基于无人机的视频直播方法、系统、设备及存储介质 |
Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100098060A1 (en) * | 2002-03-08 | 2010-04-22 | Strathmeyer Carl R | method and apparatus for connecting packet telephony calls between secure and non-secure networks |
| CN102291404A (zh) * | 2011-08-12 | 2011-12-21 | 苏州阔地网络科技有限公司 | 一种音视频数据传输方法、系统及服务器 |
| US20120047277A1 (en) * | 2010-08-17 | 2012-02-23 | Qualcomm Incorporated | Web server tv dongle for electronic device |
| CN104244108A (zh) * | 2014-09-24 | 2014-12-24 | 上海网达软件股份有限公司 | 一种直播方法及系统 |
| CN104506883A (zh) * | 2014-12-11 | 2015-04-08 | 成都德芯数字科技有限公司 | 一种基于广域网直播的音视频编码器及其工作方法 |
| CN104602044A (zh) * | 2015-02-05 | 2015-05-06 | 秦永红 | 一种rtmp流媒体公网直播系统及其设计方法 |
| CN105978926A (zh) * | 2015-12-03 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种数据传输的方法和装置 |
| CN106303430A (zh) * | 2016-08-21 | 2017-01-04 | 贵州大学 | 浏览器中无插件播放实时监控的方法 |
| CN106803974A (zh) * | 2017-03-01 | 2017-06-06 | 北京牡丹电子集团有限责任公司数字电视技术中心 | 直播视频流实时转发方法 |
| CN107027045A (zh) * | 2017-04-11 | 2017-08-08 | 广州华多网络科技有限公司 | 视频流推送控制方法、装置及视频流导播端 |
| CN107295355A (zh) * | 2017-08-18 | 2017-10-24 | 王建民 | 一种音视频综合处理系统及方法 |
-
2018
- 2018-01-11 CN CN201810027382.5A patent/CN108206833B/zh active Active
Patent Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100098060A1 (en) * | 2002-03-08 | 2010-04-22 | Strathmeyer Carl R | method and apparatus for connecting packet telephony calls between secure and non-secure networks |
| US20120047277A1 (en) * | 2010-08-17 | 2012-02-23 | Qualcomm Incorporated | Web server tv dongle for electronic device |
| CN102291404A (zh) * | 2011-08-12 | 2011-12-21 | 苏州阔地网络科技有限公司 | 一种音视频数据传输方法、系统及服务器 |
| CN104244108A (zh) * | 2014-09-24 | 2014-12-24 | 上海网达软件股份有限公司 | 一种直播方法及系统 |
| CN104506883A (zh) * | 2014-12-11 | 2015-04-08 | 成都德芯数字科技有限公司 | 一种基于广域网直播的音视频编码器及其工作方法 |
| CN104602044A (zh) * | 2015-02-05 | 2015-05-06 | 秦永红 | 一种rtmp流媒体公网直播系统及其设计方法 |
| CN105978926A (zh) * | 2015-12-03 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种数据传输的方法和装置 |
| CN106303430A (zh) * | 2016-08-21 | 2017-01-04 | 贵州大学 | 浏览器中无插件播放实时监控的方法 |
| CN106803974A (zh) * | 2017-03-01 | 2017-06-06 | 北京牡丹电子集团有限责任公司数字电视技术中心 | 直播视频流实时转发方法 |
| CN107027045A (zh) * | 2017-04-11 | 2017-08-08 | 广州华多网络科技有限公司 | 视频流推送控制方法、装置及视频流导播端 |
| CN107295355A (zh) * | 2017-08-18 | 2017-10-24 | 王建民 | 一种音视频综合处理系统及方法 |
Non-Patent Citations (3)
| Title |
|---|
| LIBING0924: "直播-拉流和推流概述", 《HTTPS://WWW.JIANSHU.COM/P/B520C2A9B795》 * |
| 孙凯龙: "基于WebRTC的视频会议系统的设计与实现", 《中国优秀硕士学位论文全文数据库》 * |
| 黄梦轩: "AAC的ADTS头解析", 《HTTPS://WWW.JIANSHU.COM/P/B5CA697535BD》 * |
Cited By (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109246115A (zh) * | 2018-09-26 | 2019-01-18 | 杭州当虹科技股份有限公司 | Sip协议在gb28181下无线网络监控方法 |
| CN109246115B (zh) * | 2018-09-26 | 2021-05-25 | 杭州当虹科技股份有限公司 | Sip协议在gb28181下无线网络监控方法 |
| CN109194697B (zh) * | 2018-11-01 | 2021-05-25 | 杭州当虹科技股份有限公司 | SIP协议在GB28181下Internet监控方法 |
| CN109194697A (zh) * | 2018-11-01 | 2019-01-11 | 杭州当虹科技股份有限公司 | SIP协议在GB28181下Internet监控方法 |
| CN110381350A (zh) * | 2019-06-25 | 2019-10-25 | 杭州叙简科技股份有限公司 | 基于webrtc的多路录像回放同步系统及其处理方法 |
| CN111314786A (zh) * | 2019-12-10 | 2020-06-19 | 杭州当虹科技股份有限公司 | 一种基于WebRTC的PC屏幕分享方法 |
| CN110958466A (zh) * | 2019-12-17 | 2020-04-03 | 杭州当虹科技股份有限公司 | 一种基于rtmp传输的sdi信号同步回传方法 |
| CN111613103A (zh) * | 2020-06-02 | 2020-09-01 | 河南优观大数据科技有限公司 | 一种多对多音视频交互式远程直播录播教培云系统 |
| CN112533006A (zh) * | 2020-11-05 | 2021-03-19 | 深圳市咪码科技有限公司 | 直播平台与voip终端的通信方法及装置 |
| CN112533006B (zh) * | 2020-11-05 | 2023-02-28 | 深圳市咪码科技有限公司 | 直播平台与voip终端的通信方法及装置 |
| CN112995714A (zh) * | 2021-04-08 | 2021-06-18 | 天津天地伟业智能安全防范科技有限公司 | 私有视频流转换rtmp标准流的方法及装置 |
| CN113301373A (zh) * | 2021-05-21 | 2021-08-24 | 山东新一代信息产业技术研究院有限公司 | 一种实现视频直播与回放的方法及系统 |
| WO2023036258A1 (zh) * | 2021-09-10 | 2023-03-16 | 深圳市道通智能航空技术股份有限公司 | 基于无人机的视频直播方法、系统、设备及存储介质 |
| CN114025191A (zh) * | 2021-11-04 | 2022-02-08 | 北京睿芯高通量科技有限公司 | 一种基于Nginx-rtmp的webrtc低延迟直播方法及系统 |
| CN114025191B (zh) * | 2021-11-04 | 2023-08-15 | 北京睿芯高通量科技有限公司 | 一种基于Nginx-rtmp的webrtc低延迟直播方法及系统 |
| CN114285910A (zh) * | 2021-12-23 | 2022-04-05 | 号百信息服务有限公司 | 通信终端与互联网音频格式重塑系统和方法 |
| CN114297553A (zh) * | 2021-12-28 | 2022-04-08 | 上海绚显科技有限公司 | 一种推拉流格式转换方法、装置、电子设备及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN108206833B (zh) | 2021-04-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN108206833A (zh) | 音视频数据传输方法及其系统 | |
| EP2154885B1 (en) | A caption display method and a video communication control device | |
| JP2003504897A (ja) | 電話回線による高速映像伝送 | |
| US20210409476A1 (en) | Method and stream-pushing client terminal for pushing audio and video based on webrtc protocol | |
| CN109788232A (zh) | 一种视频会议的会议记要记录方法、装置和系统 | |
| CN109302576A (zh) | 会议处理方法和装置 | |
| CN110225416A (zh) | 一种视频的传输方法、网络终端、智能终端以及存储装置 | |
| CN113194278B (zh) | 一种会议控制方法、装置及计算机可读存储介质 | |
| CN108063745B (zh) | 一种基于安卓设备的视频通话方法及其系统 | |
| CN109803111A (zh) | 一种视频会议的会后收看方法和装置 | |
| CN108877820A (zh) | 一种音频数据混合方法和装置 | |
| CN110267099A (zh) | 一种基于视联网的数据传输方法和视联网终端 | |
| CN110602522A (zh) | 一种多路实时直播WebRTC流合成方法 | |
| CN110505204A (zh) | 一种即时语音通信方法、装置、电子设备及可读存储介质 | |
| CN101009824A (zh) | 一种音/视频数据的网络传输方法 | |
| WO2012068940A1 (zh) | 通过ip网络监控终端的方法及mcu | |
| US20030206739A1 (en) | Audio/video IP camera | |
| CN108124158A (zh) | 多媒体终端及多媒体终端的数据处理方法 | |
| CN108122558A (zh) | 一种latm aac音频流的实时转容实现方法及装置 | |
| CN1832569B (zh) | 一种会议电视系统 | |
| CN108881819A (zh) | 一种音频数据的传输方法和装置 | |
| WO2006066454A1 (fr) | Procede de transmission des sources video multicanaux sur un systeme de visioconference | |
| CN108632679A (zh) | 一种多媒体数据传输的方法和一种视联网终端 | |
| CN108630215A (zh) | 一种基于视联网的回声抑制方法及装置 | |
| CN103188403B (zh) | 语音网关在线监听方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |