CN106791271B - 一种音视频同步方法 - Google Patents
一种音视频同步方法 Download PDFInfo
- Publication number
- CN106791271B CN106791271B CN201611096656.3A CN201611096656A CN106791271B CN 106791271 B CN106791271 B CN 106791271B CN 201611096656 A CN201611096656 A CN 201611096656A CN 106791271 B CN106791271 B CN 106791271B
- Authority
- CN
- China
- Prior art keywords
- video
- audio
- rtp
- truertp
- timestamp
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/04—Synchronising
-
- 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
- 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
本发明提供一种音视频同步方法,基于RTCP发送者报文的RTP时间戳和NTP时间戳,来实现音视频同步。该方法实现成本低、兼容性及扩展性好;而且,该方法可以根据不同音视频同步需求,调整音视频的同步范围。
Description
技术领域
本发明涉及视频会议技术领域,尤其涉及一种音视频同步方法。
背景技术
音视频同步控制是视频会议领域的研究热点,音视频同步与否对于视频会议的体验影响重大。当前解决音视频不同步的方案很多,如多路复用法(音视频帧打包传输)、同步标记法(对音视频相关帧打标签,播放时根据标签进行播放)等。
现有解决音视频不同步的方案大部分是基于私有协议进行的,兼容性、扩展性不足,实现成本也比较高。因此,本专利申请提供一种只基于RTCP的RTP时间戳和NTP时间戳,来实现音视频同步的方法。这里,要解决的不同步主要是因为音视频处于不同RTP会话,在网络中传输延迟异导致的不同步。
发明内容
本发明要解决的技术问题,在于提供一种音视频同步方法,该方法可以根据不同音视频同步需求,调整音视频的同步范围。
本发明是这样实现的:一种音视频同步方法,基于RTCP发送者报文的RTP时间戳和NTP时间戳,来实现音视频同步。
进一步的,所述方法具体为:针对音频和视频,从连续的两个RTCP发送者报文包中得到音频与视频的RTP与NTP数据,并根据得到的音频与视频的RTP与NTP数据来获得音频与视频对应的时戳频率;
从RTCP发送者报文包中取最新的音频和视频的NTP时间戳Audio_SRNTP、Video_SRNTP,以及最新的视频的RTP数据来获得视频的RTP时间戳的基础值Video_RTPTime;
每获取一个音频RTP包,则获得音频RTP包的RTP时间戳Audio_TRUERTP,根据RTP时间戳Audio_TRUERTP和RTP时间戳的基础值Video_RTPTime得出基于音频RTP的视频基准RTP时间戳Video_TRUERTP;
从RTCP发送者报文包中取得最新收到的视频RTP时间戳Video_TRUERTP’与所述基于音频RTP的视频基准RTP时间戳Video_TRUERTP进行比对实现音视频同步操作。
进一步的,根据得到的音频与视频的RTP与NTP数据来获得音频与视频对应的时戳频率;即根据公式(1)(2)计算,得到音频与视频对应的时戳频率Audio_Fre、Video_Fre:
其中,Audio_SRRTPtime1,Audio_SRRTPtime2为连续的两个RTCP发送者报文包对应的音频的RTP数据;Audio_SRNTPtime1,Audio_SRNTPtime2为连续的两个RTCP发送者报文包对应的音频的NTP数据;Video_SRRTPtime1,Video_SRRTPtime2为连续的两个RTCP发送者报文包对应的视频的RTP数据;Video_SRNTPtime1,Video_SRNTPtime2为连续的两个RTCP发送者报文包对应的视频的NTP数据;
从RTCP发送者报文包中取最新的音频和视频的NTP时间戳Audio_SRNTP、Video_SRNTP,以及最新的视频的RTP数据根据公式(3)获得视频的RTP时间戳的基础值Video_RTPTime;
Video_RTPTime=Video_SRRTPTime+(Audio_SRNTP-Video_SRNTP)×Video_Fre------(3)
其中,最新的视频的RTP数据Video_SRRTPtime,视频对应的时戳频率Video_Fre;
通过RTP时间戳Audio_TRUERTP和RTP时间戳的基础值Video_RTPTime根据公式(4)得出基于音频RTP的视频基准RTP时间戳Video_TRUERTP;
其中,最新的音频的RTP数据Audio_SRRTPtime。
进一步的,所述从RTCP发送者报文包中取得最新收到的视频RTP时间戳Video_TRUERTP’与所述基于音频RTP的视频基准RTP时间戳Video_TRUERTP进行比对实现音视频同步操作,具体为:
A.Video_TRUERTP’-Video_TRUERTP<-Video_Fre*40*T’
这种情况下,视频帧慢于音频帧,且处于同步定义范围之外,丢弃视频帧,如果视频丢帧严重,对音频帧进行缓存;
B.-Video_Fre*40*T’<(Video_TRUERTP’-Video_TRUERTP)<Video_Fre*120*T’
这种情况下,视频帧处于同步定义范围之内,播放或者操作;
C.Video_Fre*120*T’<Video_TRUERTP’-Video_TRUERTP
这种情况下,视频帧快于音频帧,且处于同步定义范围之外,缓存视频帧,等待音频帧到来;
其中,T为NTP的单位,T=1E12/2^32ps,T’=1E9*T=1E21/2^23ps。
本发明具有如下优点:该方法基于通用的RTCP实现音视频同步,可用于服务器、中间设备、终端,实现成本低、兼容性及扩展性好;而且,该方法可以根据不同音视频同步需求,调整音视频的同步范围。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法结构示意图。
具体实施方式
请参阅图1所示,一种音视频同步方法,基于RTCP发送者报文的RTP时间戳和NTP时间戳,来实现音视频同步;
所述方法具体为:针对音频和视频,从连续的两个RTCP发送者报文包中得到音频与视频的RTP与NTP数据,并根据得到的音频与视频的RTP与NTP数据来获得音频与视频对应的时戳频率;(每次收到SR包都需要更新)
从RTCP发送者报文包(即SR包)中取最新的音频和视频的NTP时间戳Audio_SRNTP、Video_SRNTP,以及最新的视频的RTP数据来获得视频的RTP时间戳的基础值Video_RTPTime;
每获取一个音频RTP包,则获得音频RTP包的RTP时间戳Audio_TRUERTP,根据RTP时间戳Audio_TRUERTP和RTP时间戳的基础值Video_RTPTime得出基于音频RTP的视频基准RTP时间戳Video_TRUERTP;
从RTCP发送者报文包中取得最新收到的视频RTP时间戳Video_TRUERTP’与所述基于音频RTP的视频基准RTP时间戳Video_TRUERTP进行比对实现音视频同步操作。
根据得到的音频与视频的RTP与NTP数据来获得音频与视频对应的时戳频率;即根据公式(1)(2)计算,得到音频与视频对应的时戳频率
其中,Audio_SRRTPtime1,Audio_SRRTPtime2为连续的两个RTCP发送者报文包对应的音频的RTP数据;Audio_SRNTPtime1,Audio_SRNTPtime2为连续的两个RTCP发送者报文包对应的音频的NTP数据;Video_SRRTPtime1,Video_SRRTPtime2为连续的两个RTCP发送者报文包对应的视频的RTP数据;Video_SRNTPtime1,Video_SRNTPtime2为连续的两个RTCP发送者报文包对应的视频的NTP数据;
从RTCP发送者报文包中取最新的音频和视频的NTP时间戳Audio_SRNTP、Video_SRNTP,以及最新的视频的RTP数据根据公式(3)获得视频的RTP时间戳的基础值Video_RTPTime;
Video_RTPTime=Video_SRRTPTime+(Audio_SRNTP-Video_SRNTP)×Video_Fre------(3)
其中,最新的视频的RTP数据Video_SRRTPtime,视频对应的时戳频率Video_Fre;
通过RTP时间戳Audio_TRUERTP和RTP时间戳的基础值Video_RTPTime根据公式(4)得出基于音频RTP的视频基准RTP时间戳Video_TRUERTP;
其中,最新的音频的RTP数据Audio_SRRTPtime。
所述从RTCP发送者报文包中取得最新收到的视频RTP时间戳Video_TRUERTP’与所述基于音频RTP的视频基准RTP时间戳Video_TRUERTP进行比对实现音视频同步操作,具体为:
A.Video_TRUERTP’-Video_TRUERTP<-Video_Fre*40*T’
这种情况下,视频帧慢于音频帧,且处于同步定义范围之外,丢弃视频帧,如果视频丢帧严重,对音频帧进行缓存;
B.-Video_Fre*40*T’<(Video_TRUERTP’-Video_TRUERTP)<Video_Fre*120*T’
这种情况下,视频帧处于同步定义范围之内,播放或者操作;
C.Video_Fre*120*T’<Video_TRUERTP’-Video_TRUERTP
这种情况下,视频帧快于音频帧,且处于同步定义范围之外,缓存视频帧,等待音频帧到来;
其中,T为NTP的单位,T=1E12/2^32ps,T’=1E9*T=1E21/2^23ps。
总之,本发明基于通用的RTCP实现音视频同步,可用于服务器、中间设备、终端,实现成本低、兼容性及扩展性好;而且,该方法可以根据不同音视频同步需求,调整音视频的同步范围。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (1)
1.一种音视频同步方法,其特征在于:基于RTCP发送者报文的RTP时间戳和NTP时间戳,来实现音视频同步;
所述方法具体为:针对音频和视频,从连续的两个RTCP发送者报文包中得到音频与视频的RTP与NTP数据,并根据得到的音频与视频的RTP与NTP数据来获得音频与视频对应的时戳频率;
从RTCP发送者报文包中取最新的音频和视频的NTP时间戳Audio_SRNTP、Video_SRNTP,以及最新的视频的RTP数据来获得视频的RTP时间戳的基础值Video_RTPTime;
每获取一个音频RTP包,则获得音频RTP包的RTP时间戳Audio_TRUERTP,根据RTP时间戳Audio_TRUERTP和RTP时间戳的基础值Video_RTPTime得出基于音频RTP的视频基准RTP时间戳Video_TRUERTP;
从RTCP发送者报文包中取得最新收到的视频RTP时间戳Video_TRUERTP’与所述基于音频RTP的视频基准RTP时间戳Video_TRUERTP进行比对实现音视频同步操作;
根据得到的音频与视频的RTP与NTP数据来获得音频与视频对应的时戳频率;即根据公式(1)(2)计算,得到音频与视频对应的时戳频率Audio_Fre、
其中,Audio_SRRTPtime1,Audio_SRRTPtime2为连续的两个RTCP发送者报文包对应的音频的RTP数据;Audio_SRNTPtime1,Audio_SRNTPtime2为连续的两个RTCP发送者报文包对应的音频的NTP数据;Video_SRRTPtime1,Video_SRRTPtime2为连续的两个RTCP发送者报文包对应的视频的RTP数据;Video_SRNTPtime1,Video_SRNTPtime2为连续的两个RTCP发送者报文包对应的视频的NTP数据;
从RTCP发送者报文包中取最新的音频和视频的NTP时间戳Audio_SRNTP、Video_SRNTP,以及最新的视频的RTP数据根据公式(3)获得视频的RTP时间戳的基础值Video_RTPTime;
Video_RTPTime=Video_SRRTPTime+(Audio_SRNTP-Video_SRNTP)×Video_Fre------(3)
其中,最新的视频的RTP数据Video_SRRTPtime,视频对应的时戳频率Video_Fre;
通过RTP时间戳Audio_TRUERTP和RTP时间戳的基础值Video_RTPTime根据公式(4)得出基于音频RTP的视频基准RTP时间戳Video_TRUERTP;
其中,最新的音频的RTP数据Audio_SRRTPtime;
所述从RTCP发送者报文包中取得最新收到的视频RTP时间戳Video_TRUERTP’与所述基于音频RTP的视频基准RTP时间戳Video_TRUERTP进行比对实现音视频同步操作,具体为:
A.Video_TRUERTP’-Video_TRUERTP<-Video_Fre*40*T’
这种情况下,视频帧慢于音频帧,且处于同步定义范围之外,丢弃视频帧,如果视频丢帧严重,对音频帧进行缓存;
B.-Video_Fre*40*T’<(Video_TRUERTP’-Video_TRUERTP)<Video_Fre*120*T’
这种情况下,视频帧处于同步定义范围之内,播放或者操作;
C.Video_Fre*120*T’<Video_TRUERTP’-Video_TRUERTP
这种情况下,视频帧快于音频帧,且处于同步定义范围之外,缓存视频帧,等待音频帧到来;
其中,T为NTP的单位,T=1E12/2^32ps,T’=1E9*T=1E21/2^23ps。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611096656.3A CN106791271B (zh) | 2016-12-02 | 2016-12-02 | 一种音视频同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611096656.3A CN106791271B (zh) | 2016-12-02 | 2016-12-02 | 一种音视频同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106791271A CN106791271A (zh) | 2017-05-31 |
CN106791271B true CN106791271B (zh) | 2019-08-13 |
Family
ID=58884579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611096656.3A Active CN106791271B (zh) | 2016-12-02 | 2016-12-02 | 一种音视频同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106791271B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109168059B (zh) * | 2018-10-17 | 2021-06-18 | 上海赛连信息科技有限公司 | 一种在不同设备上分别播放音频与视频的唇音同步方法 |
CN110225385B (zh) * | 2019-06-19 | 2021-09-10 | 鼎桥通信技术有限公司 | 一种音视频同步调整方法和装置 |
CN113747208B (zh) * | 2020-05-27 | 2023-05-26 | 阿里巴巴集团控股有限公司 | 音视频数据同步方法、数据同步方法、服务端及接收端 |
CN112929713B (zh) * | 2021-02-07 | 2024-04-02 | Oppo广东移动通信有限公司 | 数据同步方法、装置、终端及存储介质 |
CN113115080A (zh) * | 2021-04-08 | 2021-07-13 | 刘文平 | 移动媒体间实时视频音频高精度同步平台 |
CN115174978B (zh) * | 2022-06-08 | 2023-11-24 | 聚好看科技股份有限公司 | 一种3d数字人的音画同步方法及电子设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1337086B1 (en) * | 2002-02-13 | 2006-07-19 | Matsushita Electric Industrial Co., Ltd. | Method for transmitting data packets using RTP and RTCP protocols |
KR100565333B1 (ko) * | 2004-06-22 | 2006-03-30 | 엘지전자 주식회사 | 휴대단말기의 비디오 오디오 동기장치 및 방법 |
CN101282482B (zh) * | 2008-05-04 | 2011-05-11 | 中兴通讯股份有限公司 | 视频数据与音频数据同步播放的装置、系统和方法 |
CN102571687B (zh) * | 2010-12-10 | 2014-09-17 | 联芯科技有限公司 | 实时媒体流间同步状态信息构建方法、装置及sccas |
CN103533005B (zh) * | 2012-07-06 | 2018-12-07 | 南京中兴新软件有限责任公司 | 基于播放状态信息同步的处理方法、系统及相关装置 |
CN103414957A (zh) * | 2013-07-30 | 2013-11-27 | 广东工业大学 | 一种音视频数据同步的方法和装置 |
CN103607664B (zh) * | 2013-11-22 | 2016-09-14 | 天津市北海通信技术有限公司 | 一种嵌入式多媒体播放系统的音视频同步方法 |
-
2016
- 2016-12-02 CN CN201611096656.3A patent/CN106791271B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106791271A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106791271B (zh) | 一种音视频同步方法 | |
CN108206833B (zh) | 音视频数据传输方法及其系统 | |
CN1941916B (zh) | 用于同步分组数据流的方法和系统 | |
CN103546662A (zh) | 一种网络监控系统中音视频同步方法 | |
CN105656616B (zh) | 多设备间数据同步的方法、装置、发送端及接收端 | |
KR101355059B1 (ko) | 독립적인 시간 소스로부터 시간 신호(들)를 사용한 미디어 스트림들의 동기화 | |
WO2009102582A1 (en) | Synchronizing presentations of multimedia programs | |
EP1995910A3 (en) | Synchronization of a split audio, video, or other data stream with separate sinks | |
CN109168059B (zh) | 一种在不同设备上分别播放音频与视频的唇音同步方法 | |
JP2005523650A (ja) | オーディオおよびビデオストリームの同期のための装置および方法 | |
KR20160048942A (ko) | 미디어 스트림들 간의 타임라인 정보를 상관시키기 위한 시스템 및 방법 | |
CN109565466A (zh) | 多设备间唇音同步方法及设备 | |
US9609179B2 (en) | Methods for processing multimedia flows and corresponding devices | |
TW201236445A (en) | Set-top-box, flash glasses and method of a plurality of users watching a plurality of TV programs at the same time | |
CN108366283A (zh) | 多设备间的媒体同步播放方法 | |
CN111629158B (zh) | 一种音频流和视频流同步切换方法及装置 | |
KR20060003651A (ko) | 네트워크를 통한 원격 멀티미디어 서비스 제공시스템에서의 동영상 및 이미지 데이터의 동기화 방법 | |
CN106063286A (zh) | 用于使用公共定时框架进行多个多媒体设备的无线同步的装置和方法 | |
WO2017071670A1 (zh) | 音视频同步方法、装置及系统 | |
CN112584216B (zh) | 一种唇音同步方法和装置 | |
GB2467073A (en) | A terminal client and a client device for managing messages in a network infrastructure of a telecommunications system | |
US20080005350A1 (en) | System and method for synchronized content rendering in a multi-node network | |
CN114286149A (zh) | 一种跨设备和系统的音视频同步渲染的方法及系统 | |
JP2018074480A (ja) | 受信端末及びプログラム | |
CN104954727A (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 | ||
CP03 | Change of name, title or address |
Address after: Software Park Siming District of Xiamen city in Fujian province 361000 two sunrise Road No. 56 unit 1001 Patentee after: Fujian Xingwang Intelligent Technology Co., Ltd Address before: Software Park Siming District of Xiamen city in Fujian province 350000 two sunrise Road No. 56 unit 1001 Patentee before: FUJIAN STAR-NET WISDOM TECHNOLOGY Co.,Ltd. |
|
CP03 | Change of name, title or address |