音频数据传输方法和装置制造方法及图纸

技术编号:33351559 阅读:15 留言:0更新日期:2022-05-08 09:58
本公开提供了音频数据传输方法和装置,涉及人工智能领域,尤其涉及语音技术领域。具体实现方案为:获取音频数据;在当前状态为非静音状态时,检测所述音频数据是否为语音数据;若不是语音数据,则将所述音频数据进行编码,得到静音帧;若第一计数达到预定值,则根据所述第一计数生成第一聚合包,并清空所述第一计数,将所述第一聚合包发送到接收端;否则,累加第一计数。该实施方式能够有效降低通话中的流量成本和服务器的CPU负载。量成本和服务器的CPU负载。量成本和服务器的CPU负载。

【技术实现步骤摘要】
音频数据传输方法和装置


[0001]本公开涉及人工智能领域,尤其涉及语音
,具体为一种音频数据传输方法和装置。

技术介绍

[0002]在实时音视频通话场景下,人声部分不是持续的,会有一段一段的停顿期。这个停顿期若是也正常编码音频数据,对带宽有些浪费,所以有些编码器支持非连续传输功能。若是检测当前会议没有明显通话声音,编码出来的数据是1

2个字节的包头不包含任何音频数据的静音帧,可以减少这些静音帧的发送,从而节省带宽。另外在静音(mute)场景下,不需要编码音频数据,每帧数据都是静音帧,可以更加有效的节省音频带宽和降低客户端CPU资源消耗。
[0003]现有技术中非连续传输功能是对检查到静音帧,则不进行发送,这样在整个实时通话系统里面需要很多模块进行配合实现,实现复杂度很高,移植性不强,且会引起无法进行丢包统计、无法同步等问题。

技术实现思路

[0004]本公开提供了一种音频数据传输方法、装置、设备、存储介质以及计算机程序产品。
[0005]根据本公开的第一方面,提供了一种音频数据传输方法,包括:获取音频数据;在当前状态为非静音状态时,检测所述音频数据是否为语音数据;若不是语音数据,则将所述音频数据进行编码,得到静音帧;若第一计数达到预定值,则根据所述第一计数生成第一聚合包,并清空所述第一计数,将所述第一聚合包发送到接收端;否则,累加第一计数。
[0006]根据本公开的第二方面,提供了一种音频数据传输方法,包括:响应于接收到数据包,检测所述数据包的类型;根据所述数据包的类型对所述数据包进行预处理后插入到缓冲器中;从所述缓冲器中按时间顺序读取数据包;根据读取出的数据包的类型对读取出的数据包进行解码。
[0007]根据本公开的第三方面,提供了一种音频数据传输装置,包括:获取单元,被配置成获取音频数据;检测单元,被配置成在当前状态为非静音状态时,检测所述音频数据是否为语音数据;编码单元,被配置成若不是语音数据,则将所述音频数据进行编码,得到静音帧;生成单元,被配置成若第一计数达到预定值,则根据所述第一计数生成第一聚合包,并清空所述第一计数,将所述第一聚合包发送到接收端;计数单元,被配置成若第一计数未达到预定值,则累加第一计数。
[0008]根据本公开的第四方面,提供了一种音频数据传输装置,包括:检测单元,被配置成响应于接收到数据包,检测所述数据包的类型;预处理单元,被配置成根据所述数据包的类型对所述数据包进行预处理后插入到缓冲器中;读取单元,被配置成从所述缓冲器中按时间顺序读取数据包;解码单元,被配置成根据读取出的数据包的类型对读取出的数据包
进行解码。
[0009]根据本公开的第五方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面所述的方法。
[0010]根据本公开的第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面所述的方法。
[0011]根据本公开的第七方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现第一方面所述的方法。
[0012]本公开的实施例提供的音频数据传输方法和装置,通过将静音帧聚合打包发送,既节省了带宽,还能保证语音同步,并且保证各种数据包统计的正确性。
[0013]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0014]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0015]图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
[0016]图2是根据本公开的音频数据传输方法应用于发送端的一个实施例的流程图;
[0017]图3是根据本公开的音频数据传输方法应用于发送端的一个应用场景的示意图;
[0018]图4是根据本公开的音频数据传输方法应用于接收端的一个实施例的流程图;
[0019]图5是根据本公开的音频数据传输方法应用于接收端的一个应用场景的示意图;
[0020]图6是根据本公开的音频数据传输装置的一个实施例的结构示意图;
[0021]图7是根据本公开的音频数据传输装置的又一个实施例的结构示意图;
[0022]图8是适于用来实现本公开的实施例的电子设备的计算机系统的结构示意图。
具体实施方式
[0023]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0024]图1示出了可以应用本公开的音频数据传输方法或音频数据传输装置的实施例的示例性系统架构100。
[0025]如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0026]用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如即时通信工具、网页浏览器应用、购物类应用、搜索类应用、邮箱客户端、社交平台软件等。
[0027]终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬
generates,舒适噪声生成)包)。使用第一计数来统计已生成的第一聚合包的数量,第一聚合包发送后清空第一计数。将静音态下生成的RTP包称为第二聚合包(也可称为mute包)。使用第二计数来统计已生成的第二聚合包的数量,第二聚合包发送后清空第二计数。RTP包中还可包括序号、时间戳等用来表示数据包先后顺序的字段。
[0041]每个聚合包数据部分为一个字节,可以定义为以下格式:
[0042]CNG包:|0 x x x v v v v|(比如0x02,表示为CNG包,聚合了2个包,x为预留位,v v v v表示第一计数)
[0043]mute包:|1 x x x v v v v|(比如0x83,表示为mute包,聚合了3个包,x为预留位,v v v v表示第二计数)
[0044]在生成第一聚合包时,RTP扩展头标识可设置为CNG聚合包,例如,第一位为0。
[0045]步骤205,若第一计数未达到预定值,则累加第一计数。
[0046]在本实施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种音频数据传输方法,包括:获取音频数据;在当前状态为非静音状态时,检测所述音频数据是否为语音数据;若不是语音数据,则将所述音频数据进行编码,得到静音帧;若第一计数达到预定值,则根据所述第一计数生成第一聚合包,并清空所述第一计数,将所述第一聚合包发送到接收端;否则,累加第一计数。2.根据权利要求1所述的方法,其中,所述方法还包括:若是语音数据,则将所述音频数据进行编码,得到语音帧;根据所述语音帧生成语音包;将所述语音包发送到接收端。3.根据权利要求2所述的方法,其中,所述将所述语音包发送到接收端,包括:若所述第一计数不为0,则根据所述第一计数生成第一聚合包并清空所述第一计数;将所述第一聚合包发送到接收端;将所述语音包发送到接收端。4.根据权利要求1所述的方法,其中,所述方法还包括:在当前状态为静音状态时,若第二计数达到预定值,则根据所述第二计数生成第二聚合包,并清空所述第二计数,将所述第二聚合包发送到接收端;否则,累加第二计数。5.一种音频数据传输方法,包括:响应于接收到数据包,检测所述数据包的类型;根据所述数据包的类型对所述数据包进行预处理后插入到缓冲器中;从所述缓冲器中按时间顺序读取数据包;根据读取出的数据包的类型对读取出的数据包进行解码。6.根据权利要求5所述的方法,其中,所述根据所述数据包的类型对所述数据包进行预处理后插入到缓冲器中,包括:如果类型是第一聚合包,则将所述数据包拆解成第一计数个噪声包插入到缓冲器中;如果类型是第二聚合包,则将所述数据包拆解成第二计数个静音包插入到缓冲器中;如果类型是语音包则直接插入到缓冲器中。7.根据权利要求5所述的方法,其中,所述根据读取出的数据包的类型对读取出的数据包进行解码,包括:若读取出的数据包为静音包,则生成全0数据包;若读取出的数据包为噪声包,则生成舒适噪声;若读取出的数据包为语音包,则进行音频解码。8.一种音频数据传输装置,包括:获取单元,被配置成获取音频数据;检测单元,被配置成在当前状态为非静音状态时,检测所述音频数据是否为语音数据;编码单元,被配置成若不是语音数据,则将所述音频数据进行编码,得到静音帧;生成单元,被配置成若第一计数达到预定值,则根据所述第一计数生成第一聚合包,并
清空所述第一计数,将所述第一聚合包发送到接收端;计数单元,被配置成若第一计数未达到预定值,则累加第一计数...

【专利技术属性】
技术研发人员:陈盛斌
申请(专利权)人:上海小度技术有限公司
类型:发明
国别省市:

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

1