音视频同步方法、装置及存储介质制造方法及图纸

技术编号:27692678 阅读:24 留言:0更新日期:2021-03-17 04:53
本发明专利技术涉及音视频数据处理技术领域,公开了一种音视频同步方法、装置及存储介质,该方法包括通过缓冲区预先对音视频数据中的音频数据做第一预设长度的数据缓冲;在播放音视频数据过程中,如果缓冲区内的音频数据的缓冲长度大于第一预设长度,则对缓冲区内的音频数据进行丢包处理以使缓冲区内的音频数据的缓冲长度保持在第一预设长度内。本发明专利技术公开的音视频同步方法、装置及存储介质可避免由于网络的抖动而导致音频数据积压从而造成音视频不同步的问题,使音视频数据保持同步。

【技术实现步骤摘要】
音视频同步方法、装置及存储介质
本专利技术涉及音视频数据处理
,具体涉及一种音视频同步方法、装置及存储介质。
技术介绍
在播放视频过程中,音视频数据同步是保障用户体验的基本要求,若音视频数据不同步,则会大大影响用户的视频观看体验。为保持音视频同步,现有技术中常用的技术方案是以音频、视频以及系统时间中的其中一个为参照,让视频跟随音频、音频跟随视频或以系统时间为参照对音视频数据进行同步处理。然而,在音视频实时传输的场景中,采用这样的方式可能会由于网络抖动会导致音频数据积压,从而造成音视频数据不同步。
技术实现思路
为了解决现有技术中存在的由于网络抖动会导致音频数据积压而造成音视频数据不同步的问题,本专利技术的目的在于提供一种音视频同步方法、装置及存储介质,以避免由于网络的抖动而导致音频数据积压从而造成音视频不同步的问题,使音视频数据保持同步。第一方面,本专利技术提供了一种音视频同步方法,包括:通过缓冲区预先对音视频数据中的音频数据做第一预设长度的数据缓冲;在播放所述音视频数据过程中,如果所述缓冲区内的音频数据的缓冲长度大于所述第一预设长度,则对所述缓冲区内的音频数据进行丢包处理以使所述缓冲区内的音频数据的缓冲长度保持在所述第一预设长度内。通过上述设计,本专利技术通过缓冲区对音视频数据中的音频数据做数据缓冲,并在播放音视频数据过程中如果音频数据的缓冲长度大于第一预设长度,则丢弃缓冲区内的音频数据使得缓冲区内的音频数据的缓冲长度保持在第一预设长度内。由于缓冲区内的音频数据积压过多时丢弃掉一部分积压的音频数据,从而使得音视频数据能够保持同步,避免由于网络的抖动而导致音频数据积压从而造成音视频数据不同步的问题,保障视频的观看体验。在一个可能的设计中,所述对所述缓冲区内的音频数据进行丢包处理,包括:丢弃所述缓冲区内的至少一个第二预设长度的音频数据包;其中,所述第二预设长度小于所述第一预设长度。在一个可能的设计中,被丢弃的音频数据包为多个,所述丢弃所述缓冲区内的至少一个第二预设长度的音频数据包,包括:基于相邻数据包之间隔相等的前提下,从所述缓冲区内选取相邻数据包之间隔最大的多个所述音频数据包;丢弃选取的多个所述音频数据包。基于上述公开的内容,在丢弃音频数据包时基于相邻数据包之间隔相等的前提下,从缓冲区内选取相邻数据包之间隔最大的多个音频数据包进行丢弃,如此可降低丢包对音频质量的影响,保障音频质量。在一个可能的设计中,所述第一预设长度为150ms,所述第二预设长度为20ms。在一个可能的设计中,所述方法还包括:每隔预设的时间间隔检测所述缓冲区内的音频数据的缓冲长度是否大于所述第一预设长度。第二方面,本专利技术提供了一种音视频同步装置,包括:数据缓冲单元,用于通过缓冲区预先对音视频数据中的音频数据做第一预设长度的数据缓冲;判断单元,用于在播放所述音视频数据过程中,判断所述缓冲区内的音频数据的缓冲长度是否大于所述第一预设长度;丢包处理单元,用于如果所述缓冲区内的音频数据的缓冲长度大于所述第一预设长度,则对所述缓冲区内的音频数据进行丢包处理以使所述缓冲区内的音频数据的缓冲长度保持在所述第一预设长度内。在一个可能的设计中,丢包处理单元在用于对所述缓冲区内的音频数据进行丢包处理时,具体用于:丢弃所述缓冲区内的至少一个第二预设长度的音频数据包;其中,所述第二预设长度小于所述第一预设长度。在一个可能的设计中,被丢弃的音频数据包为多个,所述丢包处理单元在用于丢弃所述缓冲区内的至少一个第二预设长度的音频数据包时,具体用于:基于相邻数据包之间隔相等的前提下,从所述缓冲区内选取相邻数据包之间隔最大的多个所述音频数据包;丢弃选取的多个所述音频数据包。在一个可能的设计中,所述第一预设长度为150ms,所述第二预设长度为20ms。在一个可能的设计中,音视频同步装置还包括:检测单元,用于每隔预设的时间间隔检测所述缓冲区内的音频数据的缓冲长度是否大于所述第一预设长度。第三方面,本专利技术提供了一种音视频同步装置,包括包括依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如上述第一方面所述的音视频同步方法。第四方面,本专利技术提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行第一方面所述的音视频同步方法。第五方面,本专利技术提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如第一方面所述的音视频同步方法。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术提供的音视频同步方法、装置及存储介质的应用环境示意图。图2是本专利技术提供的音视频同步方法的流程图。图3是本专利技术提供的音视频同步装置的结构示意图。图4是本专利技术提供的另一音视频同步装置的结构示意图。具体实施方式下面结合附图及具体实施例来对本专利技术作进一步阐述。在此需要说明的是,对于这些实施例方式的说明虽然是用于帮助理解本专利技术,但并不构成对本专利技术的限定。本文公开的特定结构和功能细节仅用于描述本专利技术的示例实施例。然而,可用很多备选的形式来体现本专利技术,并且不应当理解为本专利技术限制在本文阐述的实施例中。应当理解,尽管本文可能使用术语第一、第二等等来描述各种单元,但是这些单元不应当受到这些术语的限制。这些术语仅用于区分一个单元和另一个单元。例如可以将第一单元称作第二单元,并且类似地可以将第二单元称作第一单元,同时不脱离本专利技术的示例实施例的范围。应当理解,对于本文中可能出现的术语“和/或”,其仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B三种情况;对于本文中可能出现的术语“/和”,其是描述另一种关联对象关系,表示可以存在两种关系,例如,A/和B,可以表示:单独存在A,单独存在A和B两种情况;另外,对于本文中可能出现的字符“/”,一般表示前后关联对象是一种“或”关系。应当理解,在本文中若将单元称作与另一个单元“连接”、“相连”或“耦合”时,它可以与另一个单元直相连接或耦合,或中间单元可以存在。相対地,在本文中若将单元称作与另一个单元“直接相连”或“直接耦合”时,表示不存在中间单元。另外,应当以类似方式来解释用于描述单元之间的关系的其他单词(例如,“在……之间”对“直接在……之间”,“相邻”对“直接相邻”等等)。应当理解,本文使用的术语仅用于描述特定实施例,并不意本文档来自技高网...

【技术保护点】
1.一种音视频同步方法,其特征在于,包括:/n通过缓冲区预先对音视频数据中的音频数据做第一预设长度的数据缓冲;/n在播放所述音视频数据过程中,如果所述缓冲区内的音频数据的缓冲长度大于所述第一预设长度,则对所述缓冲区内的音频数据进行丢包处理以使所述缓冲区内的音频数据的缓冲长度保持在所述第一预设长度内。/n

【技术特征摘要】
1.一种音视频同步方法,其特征在于,包括:
通过缓冲区预先对音视频数据中的音频数据做第一预设长度的数据缓冲;
在播放所述音视频数据过程中,如果所述缓冲区内的音频数据的缓冲长度大于所述第一预设长度,则对所述缓冲区内的音频数据进行丢包处理以使所述缓冲区内的音频数据的缓冲长度保持在所述第一预设长度内。


2.如权利要求1所述的方法,其特征在于,所述对所述缓冲区内的音频数据进行丢包处理,包括:
丢弃所述缓冲区内的至少一个第二预设长度的音频数据包;
其中,所述第二预设长度小于所述第一预设长度。


3.如权利要求2所述的方法,其特征在于,被丢弃的音频数据包为多个,所述丢弃所述缓冲区内的至少一个第二预设长度的音频数据包,包括:
基于相邻数据包之间隔相等的前提下,从所述缓冲区内选取相邻数据包之间隔最大的多个所述音频数据包;
丢弃选取的多个所述音频数据包。


4.如权利要求2所述的方法,其特征在于,所述第一预设长度为150ms,所述第二预设长度为20ms。


5.如权利要求1所述的方法,其特征在于,所述方法还包括:
每隔预设的时间间隔检测所述缓冲区内的音频数据的缓冲长度是否大于所述第一预设长度。


6.一种音视频同步装置,其特征在于,包括:
数据缓冲单元,用于通过缓冲区预先对音视频数据中的音频数据做第一预设长度的数据缓冲;
判断单元...

【专利技术属性】
技术研发人员:任纪川陈锡华
申请(专利权)人:深圳乐播科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1