CN115527544A - 语音数据传输方法 - Google Patents
语音数据传输方法 Download PDFInfo
- Publication number
- CN115527544A CN115527544A CN202210986038.5A CN202210986038A CN115527544A CN 115527544 A CN115527544 A CN 115527544A CN 202210986038 A CN202210986038 A CN 202210986038A CN 115527544 A CN115527544 A CN 115527544A
- Authority
- CN
- China
- Prior art keywords
- encoder
- target
- voice
- bandwidth
- determining
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 89
- 230000005540 biological transmission Effects 0.000 title claims abstract description 59
- 238000011144 upstream manufacturing Methods 0.000 claims 2
- 238000004891 communication Methods 0.000 abstract description 14
- 238000005070 sampling Methods 0.000 description 22
- 238000001914 filtration Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003828 downregulation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000003827 upregulation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供一种语音数据传输方法,涉及音频处理技术领域。该语音数据传输方法包括根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定第一目标编码器,并采用所述第一目标编码器对所述待发送语音数据进行编码,得到第一语音编码数据,并向接收方发送包括第一解码指示信息,和所述第一语音编码数据的第一语音数据包。根据本方案,在切换时结合语音特性以及物理层的上行带宽来决定第一目标编码器,并基于此选择语音编解码的切换时间,从而减小切换对用户体验的影响;在无线通信的物理层带宽随信道环境动态调整的无线语音通信场景下的语音传输方法,实现了语音编解码器的平稳切换。
Description
技术领域
本发明涉及音频处理技术领域,具体而言,涉及一种语音数据传输方法。
背景技术
语音编解码功能是影响语音通信质量的重要因素,同时语音数据的码率又受限于数据传输的速率。无线通信受信道环境的影响,传输速率通常是动态变化的。通常使用一种语音编解码无法做到在所有的速率下都有最优的效果,所以需要根据码率来切换不同的语音编解码。
但是目前的语音编解码器无法实现动态、平滑地编解码器切换。
发明内容
本发明的目的在于,针对上述现有技术中的不足,提供一种语音数据传输方法,以便实现语音通信中动态平滑的编解码器切换。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种语音数据传输方法,包括:
根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定第一目标编码器;所述第一编码器和所述第二编码器分别对应不同的码率范围;
采用所述第一目标编码器对所述待发送语音数据进行编码,得到第一语音编码数据;
向接收方发送第一语音数据包,所述第一语音数据包包括:第一解码指示信息,和所述第一语音编码数据,其中,所述第一解码指示信息用于指示所述接收方采用所述第一目标解码器对所述第一语音编码数据进行解码,得到所述待发送语音数据。
可选的,若所述第一编码器的码率小于所述第二编码器的码率,所述第一编码器和所述第二编码器对应的带宽范围存在重叠;所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第一带宽范围内,且,原编码器为所述第二编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第一带宽范围为:大于所述第二编码器对应带宽范围的最小带宽,且,小于或等于第一预设低带宽门限。
可选的,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第二编码器的持续时间超过第一预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第一编码器为所述第一目标编码器;
或者,若原编码器为所述第二编码器的持续时间超过第二预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第一编码器为所述第一目标编码器。
可选的,所述方法还包括:
若所述上行带宽在所述第一带宽范围内,且,原编码器为所述第二编码器的持续时间超过第三预设时长,则确定所述第一编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用所述第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
可选的,所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第二带宽范围内,且,原编码器为所述第一编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第二带宽范围为:大于第一预设高带宽门限,且,小于或等于所述第一编码器对应带宽范围的最大带宽。
可选的,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第一编码器的持续时间超过第四预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第二编码器为所述第一目标编码器;
或者,若原编码器为所述第一编码器的持续时间超过第五预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第二编码器为所述第一目标编码器。
可选的,所述方法还包括:
若所述上行带宽在所述第二带宽范围内,且,原编码器为所述第一编码器的持续时间超过第六预设时长,则确定所述第二编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用所述第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
可选的,若所述第一编码器的码率小于所述第二编码器的码率,所述第一编码器和所述第二编码器对应的带宽范围不存在重叠;所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第一带宽范围内,且,原编码器为所述第二编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定第一目标编码器,其中,所述第一带宽范围为:大于所述第二编码器对应带宽范围的最小带宽,且,小于或等于第二预设低带宽门限。
可选的,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第二编码器的持续时间超过超过第七预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第一编码器为所述第一目标编码器;
或者,若原编码器为所述第二编码器的持续时间超过第八预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第一编码器为所述第一目标编码器。
可选的,所述方法还包括:
若所述上行带宽在所述第一带宽范围内,且,原编码器为所述第二编码器的持续时间超过第九预设时长,则确定所述第一编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用所述第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
可选的,所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第二带宽范围内,且,原编码器为所述第一编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第二带宽范围为:大于第二预设低带宽门限,且,小于或等于第二预设高带宽门限。
可选的,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第一编码器的持续时间超过第十预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第二编码器为所述第一目标编码器;
或者,若原编码器为所述第一编码器的持续时间超过第十一预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第二编码器为所述第一目标编码器。
可选的,所述方法还包括:
若所述上行带宽在所述第二带宽范围内,且,原编码器为所述第一编码器的持续时间超过第十二预设时长,则确定所述第二编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用所述第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
本申请的有益效果是:本申请实施例提供一种语音数据传输方法,根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定第一目标编码器,并采用所述第一目标编码器对所述待发送语音数据进行编码,得到第一语音编码数据,并向接收方发送包括第一解码指示信息,和所述第一语音编码数据的第一语音数据包。本申请提供了一种在无线通信的物理层带宽随信道环境动态调整的无线语音通信场景下的语音传输方法,实现了语音编解码器的平稳切换。根据本申请的方案,在切换时结合语音特性以及物理层的上行带宽来决定第一目标编码器,并基于此选择语音编解码的切换时间,从而减小切换对用户体验的影响。此外,本申请的方案能够在物理层在不同的上行带宽状态时,选择适用于这个带宽最优效果的语音编码器,且切换方法不需要对编解码器的内部实现进行修改,也不存在对编码器的帧长度、实现算法、采样率等的限制。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例提供的一种语音数据传输系统结构示意图;
图2本申请一实施例提供的一种语音数据传输方法的流程图;
图3为本申请又一实施例提供的一种语音数据传输方法的流程图;
图4为本申请另一实施例提供的一种语音数据传输方法的流程图;
图5为本申请实施例提供的一种发送设备的示意图;
图6为本申请实施例提供的一种接收设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
在本申请中,除非另有明确的规定和限定,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包含至少一个特征。在本发明中的描述中,“多个”的含义是至少两个,例如两个、三个,除非另有明确具体的限定。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
语音编解码功能是影响语音通信质量的重要因素,语音数据的码率受限于数据传输的速率。不同的语音编码所需要的码率不同,在不同的码率下不同的语音编码输出的语音质量也会不同。而作为语音数据传输的重要方式——无线通信的传输速率通常受信道环境的影响。受上述多重因素影响,使用一种语音编解码无法做到在所有的速率下都有最优的效果,所以需要根据码率来进行语音编解码器的切换。
目前支持动态码率的编码器主要存在以下问题:第一,部分支持动态码率的编码器调整范围有限的。例如AMR-NB编解码支持动态码率,其支持的动态码率范围为4.75kbps到12.2kbps,对于小于4.75Kbps的传输带宽无法使用了,对于大于12.2kbps的传输带宽也不能充分利用。
第二,部分支持较大调整范围的编码器对于调整范围内的部分的编码效果不好。例如Opus编码支持很大的调整范围,但是与AMR-NB同样码率时,效果就不如AMR-NB。
除此之外,目前的语音数据传输中还存在可用计算资源有限、用户体验感差、编解码切换是延时高、高频信息丢失等问题。具体来讲,上述问题可能体现在:
语音编解码通常由嵌入式设备来完成,先进的编解码往往需要占用更多的资源,嵌入式设备的内存和CPU等可用计算资源有限,无法满足多个编码器同时工作。如何能够动态、平滑的切换编解码,同时又不需要增加额外的资源,是一个比较难解决的问题;
编解码切换时不顾及语音本身的特点,导致切换点可能在发音的中间,使得该发音在前后存在明显差异,严重影响用户体验;
新编解码器的初始化和老编解码器的释放需要时间,因此可能导致额外的延时,如果超过了语音缓存的时间,可能造成丢包;
受编码器采样率影响,当从高采样率编码器切换到低采样率编码器时会丢失高频信息,如果有高频信息的时候做切换,切换效果比较突兀、不流畅,影响用户体验。
针对上述指出的目前语音数据传输中存在的问题,本申请实施例提供了多种可能的实现方式,以实现语音通信中动态平滑的编解码器切换。如下结合附图通过多个示例进行解释说明。
首先,图1为本申请一实施例提供的一种语音数据传输系统结构示意图,如图1所示,语音数据传输系统包括:发送设备100和接收设备300,其中,发送设备100和接收设备300之间通过无线的方式通讯连接,例如发送设备100和接收设备300之间可以通过无线电、电磁波等实现无线通讯连接,本申请对此不做限定。
需要说明的是,发送设备100作为语音数据的发送方,具有音频采集、音频编码、编码后音频发送等功能。发送设备100可由运行有本申请发送方语音数据传输方法的电子设备实现,该电子设备例如可以为终端设备,也可以为服务器。
还需要说明的是,接收设备300作为语音数据的接收方,接收发送设备100发送的语音数据,对其进行解码使用。接收设备300可由运行有本申请接收方语音数据传输方法的电子设备实现,该电子设备例如可以为终端设备,也可以为服务器。
上述仅为示例说明,在实际实现中,语音数据传输系统可以包括多个接收设备300,或者多个发送设备100,发送设备100与接收设备300之前也可能存在其他结构形式,本申请对此不做限定。
图2为本申请一实施例提供的一种语音数据传输方法的流程图,如图2所示,该方法包括:
步骤110:根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定第一目标编码器;第一编码器和第二编码器分别对应不同的码率范围。
需要说明的是,第一编码器和第二编码器支持的动态码率范围不同、适合的带宽不同。
还需要说明的是,本申请中的上行带宽信息是由发送方(即发送设备100)的物理层实时上报的。在一种具体的实现方式中,发送方的物理层可以根据信道质量波动情况对上行带宽上报值做出调整和平滑,例如在波动过大时减小上报值等。
此外,待发送语音数据的语音特性是能够对语音数据中进行区别的形式特征,例如频率特征、声音强度特征等。上述仅为示例说明,在实际实现中,语音特征还可以有其他形式,本申请对此不做限定。
在一种可能的实现方式中,本申请首先在第一编码器和第二编码器中根据上行带宽以及待发送语音数据的语音特性,确定第一目标编码器。该第一目标编码器是第一编码器与第二编码器中能够适配当前的上行带宽以及语音特征的编码器。除此之外,由于确定第一目标编码器后,会直接采用第一目标编码器对语音数据进行编码,因此第一目标编码器的确定条件同样可以用来确定具体的切换时机;也就是说,第一目标编码器还能够根据语音特征,确定合适的切换时机(例如在音量最低或者声音中有用信息最少的时候进行切换等)。上述仅为示例说明,在实际实现中,第一目标编码器的确定、切换等还可以有其他方式,本申请对此不做限定。
还需要说明的是,步骤110确定的第一目标编码器可以是步骤110执行之前的原编码器,也可以是新确认的编码器,本申请对此不做限定。
此外,虽然本申请在实施例中以第一编码器和第二编码器为例,但是本申请的方案可以扩展到更多(编码器数量大于2)的使用场景当中,本申请对具体的编码器数量不做限定。
步骤120:采用第一目标编码器对待发送语音数据进行编码,得到第一语音编码数据。
步骤130:向接收方发送第一语音数据包,第一语音数据包包括:第一解码指示信息,和第一语音编码数据,其中,第一解码指示信息用于指示接收方采用第一目标解码器对第一语音编码数据进行解码,得到待发送语音数据。
确定第一目标编码器后,使用第一目标编码器对待发送的语音数据进行编码,从而得到第一语音编码数据。
在一种可能的实现方式中,为了使得接收设备300能够平稳的根据发送设备100切换的第一目标编码器切换对应的解码器,发送设备100发送的第一语音数据包包括:第一解码指示信息和第一语音编码数据,其中,第一解码指示信息指示接收方采用的第一目标解码器。
在一种具体的实现方式中,第一解码指示信息可以是与第一目标编码器对应的第一目标解码器的标记信息(即该第一解码指示信息可以指定接收设备300使用的第一目标解码器),第一解码指示信息也可以是与第一目标编码器的相关参数,该参数可供接收设备300选择合适的第一目标解码器。上述仅为示例说明,在实际实现中,还可以有其他第一解码指示信息的形式,本申请对此不做限定。此外,本申请中第一解码提示信息例如以包头标记等形式发送,本申请对此也不做限定。
在另一种具体的实现方式中,为了发送设备100和接收设备300之间更高效的数据传输,第一解码指示信息可以在切换编码器时添加,也就是说,在当前语音编码数据使用的编码器与上一次发送的语音编码数据使用的编码器相同时,第一语音数据包中可以仅包括:第一语音编码数据;当目前语音编码数据使用的编码器与上一次发送的语音编码数据使用的编码器不相同时,第一语音数据包中可以包括:第一语音编码数据和第一解码指示信息。这样,当接收设备300接收的第一语音数据包中不包括第一解码指示信息时,接收设备300可以继续沿用当前使用的解码器进行解码;而当语音数据包中包括第一解码指示信息时,才需要切换解码器。
上述仅为示例说明,在实际实现中,还可以有其他的实现形式,本申请对此不做限定。
可选的,继续参考图2,本申请还提供一种语音数据传输方法的可能实现方式,应用于接收设备300,该方法包括:
步骤310:获取第一语音数据包,第一语音数据包包括:第一解码指示信息,和第一语音编码数据。其中,第一语音编码数据是发送方采用第一目标编码器对待发送语音数据进行编码得到的。
步骤320:根据第一解码指示信息,采用第一目标解码器对第一语音编码数据进行解码,得到待发送语音数据。
在一种可能的实现方式中,接收方(即接收设备300)接收到发送方(发送设备100)发送的第一语音数据包之后,采用第一解码指示信息指示的第一目标解码器(或者根据第一解码指示信息中包含的第一目标编码器的参数信息,选择与第一目标编码器对应的第一目标解码器)对第一语音编码数据进行解码,从而得到待发送语音数据。
可选的,在上述实施例的基础上,根据所述第一解码指示信息,采用所述第一目标解码器对所述第一语音编码数据进行解码之前,还可以采用原解码器对预设数目大小的语音数据进行解码;并在释放原解码器切换到第一目标解码器。
在一种具体的实现方式中,接收方发现第一语音数据包的第一解码指示信息与上一次接收到的第一语音数据包的第一解码指示信息发生变化时(例如包头标记与上一次包头标记发生变化),或,(发送方只有切换编码器才会发送第一解码提示信息的情况下)接收方接收到第一语音数据包的第一解码指示信息时,接收方使用原解码器对预设数目大小的语音数据进行解码(例如使用原解码器生成一包或几包PLC补偿包),然后释放原解码器,切换到第一目标解码器。由此,如果切到第一目标解码器造成了比较长的时延,这段时延可以采用预先生成的语音数据(或补偿包)进行填补,从而尽可能减少编解码器切换对用户带来的影响。
综上所述,本申请实施例提供一种语音数据传输方法,根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定第一目标编码器,并采用所述第一目标编码器对所述待发送语音数据进行编码,得到第一语音编码数据,并向接收方发送包括第一解码指示信息,和所述第一语音编码数据的第一语音数据包。本申请提供了一种在无线通信的物理层带宽随信道环境动态调整的无线语音通信场景下的语音传输方法,实现了语音编解码器的平稳切换。根据本申请的方案,在切换时结合语音特性以及物理层的上行带宽来决定第一目标编码器,并基于此选择语音编解码的切换时间,从而减小切换对用户体验的影响。此外,本申请的方案能够在物理层在不同的上行带宽状态时,选择适用于这个带宽最优效果的语音编码器,且切换方法不需要对编解码器的内部实现进行修改,也不存在对编码器的帧长度、实现算法、采样率等的限制。
可选的,在上述图2的基础上,若所述第一编码器的码率小于所述第二编码器的码率,所述第一编码器和所述第二编码器对应的带宽范围存在重叠;步骤110根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器包括:
若所述上行带宽在第一带宽范围内,且,原编码器为所述第二编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第一带宽范围为:大于所述第二编码器对应带宽范围的最小带宽,且,小于或等于第一预设低带宽门限。
为了便于在后续实施例中进行举例说明,本申请在此设定一个可能的第一实现场景:第一实现场景中存在两个编码器,第一编码器、第二编码器;其中,第一编码器适合的带宽范围为s1-s5,第二编码器适合的带宽范围为s2-s6(其中带宽范围s1<s2<s3<s4<s5<s6),预先设定两个门限点:s3(第一预设低带宽门限),s4(第一预设高带宽门限)。需要说明的是,上述实现场景只是为了便于后续举例提供的一种可能的实现场景,本申请实际实现中还可以有其他的使用场景,本申请对此不做限定。还需要说明,为了说明本申请的方法,本申请将带宽范围划分为多个区间(即s1,s2……s6),每个区间包括了一段带宽范围,就具体的区间划分方式以及每个区间对应的具体带宽范围,用户可以根据实际使用情况进行设定,本申请对此不做限定。
首先,需要说明的是,本申请对于门限点的选择包括但不限于以下方式:
当第一编码器和第二编码器对应的带宽范围存在重叠时,第一预设低带宽门限和第一预设高带宽门限可以在带宽的重叠部分进行选择,或者,可以选取两个编码器的音质相差不大的范围的边界为两个门限点(分别为第一预设低带宽门限和第一预设高带宽门限),或者,用户可以根据具体使用场景选择适当的门限点,并可以在使用中对门限点进行调整。上述仅为示例说明,在实际实现中,还可以有其他的门限选择方式,本申请对此不做限定。
还需要说明的是,第一编码器的码率小于第二编码器的码率,第一编码器和第二编码器对应的带宽范围存在重叠;其中,第一编码器的码率小于第二编码器的码率指的是在第一编码器与第二编码器的重叠码率范围之外,第一编码器的非重叠码率范围小于第二编码器的非重叠码率范围。在此情况下,第一编码器的带宽范围小于第二编码器的带宽范围。例如若第一编码器和第二编码器对应的重叠带宽范围为s3-s4,若第一编码器的非重叠带宽范围为s2-s3,第二编码器的非重叠带宽范围为s4-s5,则可以认为第一编码器的带宽小于第二编码器的码率带宽。
在一种可能的实现方式中,第一带宽范围为:大于第二编码器对应带宽范围的最小带宽,且,小于或等于第一预设低带宽门限。例如在本申请的第一实现场景中,第一带宽范围为s2-s3。
在一种具体的实现方式中,在本申请的第一实现场景中,第一带宽范围为s2-s3,在此范围内,若原编码器为第二编码器,则可以根据语音特征,从第一确定第一编码器和第二编码器中确定第一目标编码器。需要说明的是,根据语音特征,确定的第一目标编码器既可以是第一编码器,也可以是第二编码器,本申请对此不做限定。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,若上行带宽小于第一带宽范围,则使用第一编码器。或者,若上行带宽小于第一带宽范围,则切换到第一编码器。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,语音特征可以包括:静音状态指示信息,或者,音量指示信息,上述步骤:根据语音特征,从第一编码器和第二编码器中确定目标编码器,包括:
若原编码器为第二编码器的持续时间超过第一预设时长,且当前语音帧的静音状态指示信息指示处于静音状态,则确定第一编码器为第一目标编码器;
或者,若原编码器为第二编码器的持续时间超过第二预设时长,且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第一编码器为第一目标编码器。
需要说明的是,语音特征可以由发送方的应用层进行检测,该语音特征可以包括每一个语音帧的静音状态指示信息(例如语音活动检测(Voice Activity Detection,VAD)静音状态),或者,音量指示信息(例如音量大小),或者频率范围,或者能量(例如高频能量)等。本申请对语音特征的具体包括的信息种类不做限定。
在一种可能的实现方式中,若原编码器为第二编码器的持续时间超过第一预设时长,且当前语音帧的静音状态指示信息指示处于静音状态时,确定第一编码器为第一目标编码器。例如,在第一实现场景中,若原编码器为第二编码器,使用第二编码器的时间超过第一预设时长(T1),且当前语音帧为静音帧时,确定第一编码器为第一目标编码器,并切换到第一目标编码器。需要说明的是,在以上实施例的基础上,还可以增加对静音状态的判断,例如可以设定若原编码器为第二编码器的持续时间超过第一预设时长,且当前语音帧的静音状态指示信息指示处于静音状态且静音状态的持续时间大于预设静音时长阈值时,确定第一编码器为第一目标编码器。其中,原编码器为第二编码器的持续时间指的是当前第二编码器在第一带宽范围内的累计使用(或者运行)时长,也就是第二编码器自最近一次在第一带宽范围内的开始编码时间到当前时间的时间长度。
在另一种可能的实现方式中,若原编码器为第二编码器的持续时间超过第二预设时长,且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第一编码器为第一目标编码器。例如,在第一实现场景中,若原编码器为第二编码器,使用第二编码器的时间超过第二预设时长(T2),且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第一编码器为第一目标编码器。在此基础上,若第一编码器与第二编码器的采样率不同时,若第二编码器的持续时长超过第二预设时长,当前语音帧的音量指示信息指示处于音量小于预设音量门限,且高频能量小于预设能量门限时,则确定第一编码器为第一目标编码器。其中,需要说明的是,第二预设时长大于第一预设时长。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,图3为本申请又一实施例提供的一种语音数据传输方法的流程图;如图3所示,该方法还包括:
步骤130:若上行带宽在第一带宽范围内,且,原编码器为第二编码器的持续时间超过第三预设时长,则确定第一编码器为第二目标编码器;
步骤140:采用第二目标编码器对待发送语音数据进行编码,得到第二语音编码数据;
步骤150:向接收方发送第二语音数据包,第二语音数据包包括:第二解码指示信息,和第二语音编码数据,其中,第二解码指示信息用于指示接收方采用第二目标解码器对第二语音编码数据进行解码,得到待发送语音数据。
在一种可能的实现方式中,上行带宽在第一带宽范围内,且,若原编码器为第二编码器的持续时间超过第三预设时长,则确定第一编码器为第二目标编码器。例如,在第一实现场景中,若原编码器为第二编码器,使用第二编码器的时间超过第三预设时长(T3),则确定第一编码器为第二目标编码器。其中,需要说明的是,第三预设时长大于第二预设时长。
确定第二目标编码器后,采用第二目标编码器对待发送语音数据进行编码,得到第二语音编码数据,并向接收方发送第二语音数据包。该第二语音数据包中包括:第二解码指示信息,和第二语音编码数据,第二解码指示信息能够指示接收方采用第二目标解码器对第二语音编码数据进行解码,得到待发送语音数据。其具体的实施方式与上述发送第一语音包数据以及确定第一目标解码器的实现方式相同(见步骤120、步骤130的说明),本申请在此不再赘述。
接收方接收到第二语音包数据后,该方法包括:
步骤330:获取第二语音数据包;第二语音数据包包括:第二解码指示信息,和第二语音编码数据;其中,第二语音编码数据是发送方采用第二目标编码器对待发送语音数据进行编码得到的。
步骤340:根据第二解码指示信息,采用第二目标解码器对第二语音编码数据进行解码,得到待发送语音数据。
接收设备300中步骤330、步骤340中对第二语音数据包的具体处理方式与步骤310、步骤320中对第一语音数据包的具体处理方式相同,本申请在此不再赘述。
综上,本申请中发送方物理层的上行带宽在某个区域范围内时,由语音VAD的静音状态触发语音编码的切换;如果超过一定时间没有检测到VAD的静音状态,则在语音的音量和高频能量低于某个门限时触发语音编码的切换;若上述切换条件均未达到,则当等待时间超过最大时长时直接切换。
可选的,在上述图2的基础上,本申请还提供一种语音数据传输方法的可能实现方式,若上行带宽大于第一预设低带宽门限,小于等于第一预设高带宽门限,由于在此范围内两个编码器均适用,因此可以维持原编码器不变。
可选的,在上述图2的基础上,本申请还提供一种语音数据传输方法的可能实现方式,所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第二带宽范围内,且,原编码器为所述第一编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第二带宽范围为:大于第一预设高带宽门限,且,小于或等于所述第一编码器对应带宽范围的最大带宽。
在一种可能的实现方式中,第二带宽范围为:大于第一预设高带宽门限,且,小于或等于所述第一编码器对应带宽范围的最大带宽。例如在本申请的第一实现场景中,第二带宽范围为s4-s5。
在一种具体的实现方式中,在本申请的第一实现场景中,第二带宽范围为s4-s5,在此范围内,若原编码器为第一编码器,则可以根据语音特征,从第一确定第一编码器和第二编码器中确定第一目标编码器。需要说明的是,根据语音特征,确定的第一目标编码器既可以是第一编码器,也可以是第二编码器,本申请对此不做限定。
可选的,若上行带宽大于第二带宽范围,则使用第二编码器。或者,若上行带宽大于第二带宽范围,则切换到第二编码器。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第一编码器的持续时间超过第四预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第二编码器为所述第一目标编码器;
或者,若原编码器为所述第一编码器的持续时间超过第五预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第二编码器为所述第一目标编码器。
在一种可能的实现方式中,若原编码器为第一编码器的持续时间超过第四预设时长,且当前语音帧的静音状态指示信息指示处于静音状态时,确定第二编码器为第一目标编码器。例如,在第一实现场景中,若原编码器为第一编码器,使用第一编码器的时间超过第四预设时长(T4),且当前语音帧为静音帧时,确定第二编码器为第一目标编码器,并切换到第一目标编码器。需要说明的是,在以上实施例的基础上,还可以增加对静音状态的判断等,本申请对此不做限定。其中,原编码器为第一编码器的持续时间指的是当前第以编码器在第二带宽范围内的累计使用(或者运行)时长,也就是第一编码器自最近一次在第二带宽范围内的开始编码时间到当前时间的时间长度。
在另一种可能的实现方式中,若原编码器为第一编码器的持续时间超过第五预设时长,且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第二编码器为第一目标编码器。例如,在第一实现场景中,若原编码器为第一编码器,使用第一编码器的时间超过第五预设时长(T5),且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第二编码器为第一目标编码器。在此基础上,若第一编码器与第二编码器的采样率不同时,若第一编码器的持续时长超过第五预设时长,当前语音帧的音量指示信息指示处于音量小于预设音量门限,且高频能量小于预设能量门限时,则确定第二编码器为第一目标编码器。其中,需要说明的是,第五预设时长大于第四预设时长。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,图4为本申请另一实施例提供的一种语音数据传输方法的流程图;如图4所示,该方法还包括:
步骤160:若上行带宽在第二带宽范围内,且,原编码器为第一编码器的持续时间超过第六预设时长,则确定第二编码器为第二目标编码器;
步骤170:采用第二目标编码器对待发送语音数据进行编码,得到第二语音编码数据;
步骤180:向接收方发送第二语音数据包,第二语音数据包包括:第二解码指示信息,和第二语音编码数据,其中,第二解码指示信息用于指示接收方采用第二目标解码器对第二语音编码数据进行解码,得到待发送语音数据。
在一种可能的实现方式中,上行带宽在第二带宽范围内,且,若原编码器为第一编码器的持续时间超过第六预设时长,则确定第二编码器为第二目标编码器。例如,在第一实现场景中,若原编码器为第一编码器,使用第一编码器的时间超过第六预设时长(T6),则确定第二编码器为第二目标编码器。其中,需要说明的是,第六预设时长大于第五预设时长。
确定第二目标编码器后,采用第二目标编码器对待发送语音数据进行编码,得到第二语音编码数据,并向接收方发送第二语音数据包。该第二语音数据包中包括:第二解码指示信息,和第二语音编码数据,第二解码指示信息能够指示接收方采用第二目标解码器对第二语音编码数据进行解码,得到待发送语音数据。其具体的实施方式与上述发送第一语音包数据以及确定第一目标解码器的实现方式相同(见步骤120、步骤130的说明),本申请在此不再赘述。
接收方接收到第二语音包数据后,接收设备300的具体实现方式与步骤330、步骤340相同,本申请对此不再赘述。
可选的,在上述图2的基础上,本申请还提供一种语音数据传输方法的可能实现方式,若所述第一编码器的码率小于所述第二编码器的码率,所述第一编码器和所述第二编码器对应的带宽范围不存在重叠;所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第一带宽范围内,且,原编码器为所述第二编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定第一目标编码器,其中,所述第一带宽范围为:大于所述第二编码器对应带宽范围的最小带宽,且,小于或等于第二预设低带宽门限。
为了便于在后续实施例中进行举例说明,本申请在此设定一个可能的第二实现场景:第二实现场景中存在两个编码器,第一编码器、第二编码器;其中,第一编码器适合的带宽范围为s1-s2,第二编码器适合的带宽范围为s3-s6(其中带宽范围s1<s2<s3<s4<s5<s6),预先设定两个门限点:s4(第二预设低带宽门限),s5(第二预设高带宽门限)。需要说明的是,上述实现场景只是为了便于后续举例提供的一种可能的实现场景,本申请实际实现中还可以有其他的使用场景,本申请对此不做限定。还需要说明,为了说明本申请的方法,本申请将带宽范围划分为多个区间(即s1,s2……s6),每个区间包括了一段带宽范围,就具体的区间划分方式以及每个区间对应的具体带宽范围,用户可以根据实际使用情况进行设定,本申请对此不做限定。
首先,需要说明的是,本申请对于门限点的选择用户可以根据具体使用场景选择适当的门限点,并可以在使用中对门限点进行调整,本申请对此不做限定。
在一种可能的实现方式中,第一带宽范围为:大于所述第二编码器对应带宽范围的最小带宽,且,小于或等于第二预设低带宽门限。例如在本申请的第二实现场景中,第一带宽范围为s3-s4。
在一种具体的实现方式中,在本申请的第二实现场景中,第一带宽范围为s3-s4,在此范围内,若原编码器为第二编码器,则可以根据语音特征,从第一编码器和第二编码器中确定第一目标编码器。需要说明的是,根据语音特征,确定的第一目标编码器既可以是第一编码器,也可以是第二编码器,本申请对此不做限定。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,若上行带宽小于第一带宽范围,则使用第一编码器。或者,若上行带宽小于第一带宽范围,则切换到第一编码器。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第二编码器的持续时间超过超过第七预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第一编码器为所述第一目标编码器;
或者,若原编码器为所述第二编码器的持续时间超过第八预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第一编码器为所述第一目标编码器。
在一种可能的实现方式中,若原编码器为第二编码器的持续时间超过第七预设时长,且当前语音帧的静音状态指示信息指示处于静音状态时,确定第一编码器为第一目标编码器。例如,在第二实现场景中,若原编码器为第二编码器,使用第二编码器的时间超过第七预设时长(T7),且当前语音帧为静音帧时,确定第一编码器为第一目标编码器,并切换到第一目标编码器。需要说明的是,在以上实施例的基础上,还可以增加对静音状态的判断,例如可以设定若原编码器为第二编码器的持续时间超过第七预设时长,且当前语音帧的静音状态指示信息指示处于静音状态且静音状态的持续时间大于预设静音时长阈值时,确定第一编码器为第一目标编码器。
在另一种可能的实现方式中,若原编码器为第二编码器的持续时间超过第八预设时长,且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第一编码器为第一目标编码器。例如,在第二实现场景中,若原编码器为第二编码器,使用第二编码器的时间超过第八预设时长(T8),且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第一编码器为第一目标编码器。在此基础上,若第一编码器与第二编码器的采样率不同时,若第二编码器的持续时长超过第八预设时长,当前语音帧的音量指示信息指示处于音量小于预设音量门限,且高频能量小于预设能量门限时,则确定第一编码器为第一目标编码器。其中,需要说明的是,第八预设时长大于第七预设时长。
需要说明的是,如果编码器的码率大于实际的传输带宽,就会造成声音卡顿,因此,即使在第二实现场景中实际带宽可能达到s3,由于第二编码器的码率范围实际上已经超过s3,因此选择第一编码器为第一目标编码器。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,该方法还包括:
若所述上行带宽在所述第一带宽范围内,且,原编码器为所述第二编码器的持续时间超过第九预设时长,则确定所述第一编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用所述第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
在一种可能的实现方式中,上行带宽在第一带宽范围内,且,若原编码器为第二编码器的持续时间超过第九预设时长,则确定第一编码器为第二目标编码器。例如,在第一实现场景中,若原编码器为第二编码器,使用第二编码器的时间超过第九预设时长(T9),则确定第一编码器为第二目标编码器。其中,需要说明的是,第九预设时长大于第八预设时长。
确定第二目标编码器后,采用第二目标编码器对待发送语音数据进行编码,得到第二语音编码数据,并向接收方发送第二语音数据包。该第二语音数据包中包括:第二解码指示信息,和第二语音编码数据,第二解码指示信息能够指示接收方采用第二目标解码器对第二语音编码数据进行解码,得到待发送语音数据。其具体的实施方式与上述发送第一语音包数据以及确定第一目标解码器的实现方式相同(见步骤120、步骤130的说明),本申请在此不再赘述。
接收方接收到第二语音包数据后,接收设备300的具体实现方式与步骤330、步骤340相同,本申请对此不再赘述。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第二带宽范围内,且,原编码器为所述第一编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第二带宽范围为:大于第二预设低带宽门限,且,小于或等于第二预设高带宽门限。
在一种可能的实现方式中,第二带宽范围为:大于第二预设低带宽门限,且,小于或等于第二预设高带宽门限。例如在本申请的第一实现场景中,第二带宽范围为s4-s5。
在一种具体的实现方式中,在本申请的第一实现场景中,第二带宽范围为s4-s5,在此范围内,若原编码器为第一编码器,则可以根据语音特征,从第一确定第一编码器和第二编码器中确定第一目标编码器。需要说明的是,根据语音特征,确定的第一目标编码器既可以是第一编码器,也可以是第二编码器,本申请对此不做限定。
可选的,若上行带宽大于第二带宽范围,则使用第二编码器。或者,若上行带宽大于第二带宽范围,则切换到第二编码器。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第一编码器的持续时间超过第十预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第二编码器为所述第一目标编码器;
或者,若原编码器为所述第一编码器的持续时间超过第十一预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第二编码器为所述第一目标编码器。
在一种可能的实现方式中,若原编码器为第一编码器的持续时间超过第十预设时长,且当前语音帧的静音状态指示信息指示处于静音状态时,确定第二编码器为第一目标编码器。例如,在第二实现场景中,若原编码器为第一编码器,使用第一编码器的时间超过第十预设时长(T10),且当前语音帧为静音帧时,确定第二编码器为第一目标编码器,并切换到第一目标编码器。需要说明的是,在以上实施例的基础上,还可以增加对静音状态的判断等,本申请对此不做限定。
在另一种可能的实现方式中,若原编码器为第一编码器的持续时间超过第十一预设时长,且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第二编码器为第一目标编码器。例如,在第二实现场景中,若原编码器为第一编码器,使用第一编码器的时间超过第十一预设时长(T11),且当前语音帧的音量指示信息指示处于音量小于预设音量门限,则确定第二编码器为第一目标编码器。在此基础上,若第一编码器与第二编码器的采样率不同时,若第一编码器的持续时长超过第十一预设时长,当前语音帧的音量指示信息指示处于音量小于预设音量门限,且高频能量小于预设能量门限时,则确定第二编码器为第一目标编码器。其中,需要说明的是,第十一预设时长大于第十预设时长。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,该方法还包括:
若所述上行带宽在所述第二带宽范围内,且,原编码器为所述第一编码器的持续时间超过第十二预设时长,则确定所述第二编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用所述第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
在一种可能的实现方式中,上行带宽在第二带宽范围内,且,若原编码器为第一编码器的持续时间超过第十二预设时长,则确定第二编码器为第二目标编码器。例如,在第二实现场景中,若原编码器为第一编码器,使用第一编码器的时间超过第十二预设时长(T12),则确定第二编码器为第二目标编码器。其中,需要说明的是,第十二预设时长大于第十一预设时长。
确定第二目标编码器后,采用第二目标编码器对待发送语音数据进行编码,得到第二语音编码数据,并向接收方发送第二语音数据包。该第二语音数据包中包括:第二解码指示信息,和第二语音编码数据,第二解码指示信息能够指示接收方采用第二目标解码器对第二语音编码数据进行解码,得到待发送语音数据。其具体的实施方式与上述发送第一语音包数据以及确定第一目标解码器的实现方式相同(见步骤120、步骤130的说明),本申请在此不再赘述。
接收方接收到第二语音包数据后,接收设备300的具体实现方式与步骤330、步骤340相同,本申请对此不再赘述。
可选的,根据奈奎斯特(Harry Nyquist)采样理论,16K采样率的PCM数据的声音频率最高可以达到8KHz,而8K采样率的PCM数据的声音频率最高只能达到4KHz。语音数据的采样率同样会对语音数据的传输效果产生影响,因此,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,该方法还包括:若原编码器的采样率与第一目标编码器的采样率不同,步骤120采用所述第一目标编码器对所述待发送语音数据进行编码,得到第一语音编码数据之前,该方法还包括:
对待发送语音数据进行低通滤波;
当滤波后的待发送语音数据采样率与第一目标解码器的采样率相同时,采用第一目标解码器对所述待发送语音数据进行编码。
需要说明的是,在本申请中,对待发送语音数据进行低通滤波时,可以采用多个低通滤波器处理待发送语音数据,使其采样率逐级下降,本申请对滤波器的具体设置方法不做限定。
在一种具体的实现方式中,第一实现场景中,如第一编码器的采样率为4KHz,第二编码器采样率为8Hz,可以增加多个低通滤波器(例如设置滤波器门限从4KHz到8KHz分成多档的多个低通滤波器);
当发送方带宽在第一带宽范围时,如果编码器为第二编码器,对声音做低通滤波,滤波范围每隔时间第十三预设时长(T13)下调一档,达到第一编码器对应的采样率(4KHz)之后切换到第一编码器。
发送方带宽在第二带宽范围时,如果编码器为第二编码器,对声音做低通滤波,滤波范围每隔时间第十四预设时长(T14)上调一档,达到第二编码器对应的采样率(8Hz)之后取消低通滤波,切换到第二编码器。
在另一种具体的实现方式中,第二实现场景中,如第一编码器的采样率为4KHz,第二编码器采样率为8Hz,可以增加多个低通滤波器(例如设置滤波器门限从4KHz到8KHz分成多档的多个低通滤波器);
当发送方带宽在第一带宽范围(s3-s4)时,如果编码器为第二编码器,对声音做低通滤波,滤波范围每隔时间第十五预设时长(T15)下调一档,达到第一编码器对应的采样率(4KHz)之后切换到第一编码器。
发送方带宽在第二带宽范围(s4-s5)时,如果编码器为第二编码器,对声音做低通滤波,滤波范围每隔时间第十六预设时长(T16)上调一档,达到第二编码器对应的采样率(8Hz)之后取消低通滤波,切换到第二编码器。
可选的,在上述实施例的基础上,本申请还提供一种语音数据传输方法的可能实现方式,该方法还包括:
发送方上行带宽减少时,对编码器下调(从第二编码器切换到第一编码器),设置的时间门限短(例如第一预设时长、第二预设时长、第三预设时长),各种门限(能量门限等)宽,从而加快下调的速度;
发送方上行带宽增加时,对编码器上调(例如从第一编码器切换到第二编码器),设置的时间门限长(例如第四预设时长、第五预设时长、第六预设时长),各种门限严格(能量门限等),从而放慢上调的速度;此外,本申请中编码器上调和下调的区域不重合,从而避免了乒乓切换。
下述对用以执行本申请所提供的发送设备、接收设备及计算机可读存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。
本申请实施例提供一种发送设备的可能实现示例,能够执行上述实施例提供的语音数据传输方法。图5为本申请实施例提供的一种发送设备的示意图,该发送设备可以集成于终端设备或者终端设备的芯片,该终端可以是具备数据处理功能的计算设备。
该发送设备包括:处理器501、存储介质502和总线,存储介质存储有处理器可执行的程序指令,当发送设备运行时,处理器与存储介质之间通过总线通信,处理器执行程序指令,以执行时执行上述发送方语音数据传输方法的步骤。具体实现方式和技术效果类似,这里不再赘述。
本申请实施例提供一种接收设备的可能实现示例,能够执行上述实施例提供的语音数据传输方法。图6为本申请实施例提供的一种接收设备的示意图,该接收设备可以集成于终端设备或者终端设备的芯片,该终端可以是具备数据处理功能的计算设备。
该接收设备包括:处理器601、存储介质602和总线,存储介质存储有处理器可执行的程序指令,当接收设备运行时,处理器与存储介质之间通过总线通信,处理器执行程序指令,以执行时执行上述发送方语音数据传输方法的步骤。具体实现方式和技术效果类似,这里不再赘述。
本申请实施例提供一种计算机可读存储介质的可能实现示例,能够执行上述实施例提供的语音数据传输方法,存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述发送方和或接收方语音数据传输方法的步骤。
存储在一个存储介质中的计算机程序,可以包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (13)
1.一种语音数据传输方法,其特征在于,包括:
根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定第一目标编码器;所述第一编码器和所述第二编码器分别对应不同的码率范围;
采用所述第一目标编码器对所述待发送语音数据进行编码,得到第一语音编码数据;
向接收方发送第一语音数据包,所述第一语音数据包包括:第一解码指示信息,和所述第一语音编码数据,其中,所述第一解码指示信息用于指示所述接收方采用第一目标解码器对所述第一语音编码数据进行解码,得到所述待发送语音数据。
2.如权利要求1所述的方法,其特征在于,若所述第一编码器的码率小于所述第二编码器的码率,所述第一编码器和所述第二编码器对应的带宽范围存在重叠;所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第一带宽范围内,且,原编码器为所述第二编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第一带宽范围为:大于所述第二编码器对应带宽范围的最小带宽,且,小于或等于第一预设低带宽门限。
3.如权利要求2所述的方法,其特征在于,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第二编码器的持续时间超过第一预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第一编码器为所述第一目标编码器;
或者,若原编码器为所述第二编码器的持续时间超过第二预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第一编码器为所述第一目标编码器。
4.如权利要求2所述的方法,其特征在于,所述方法还包括:
若所述上行带宽在所述第一带宽范围内,且,原编码器为所述第二编码器的持续时间超过第三预设时长,则确定所述第一编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
5.如权利要求2所述的方法,其特征在于,所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第二带宽范围内,且,原编码器为所述第一编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第二带宽范围为:大于第一预设高带宽门限,且,小于或等于所述第一编码器对应带宽范围的最大带宽。
6.如权利要求5所述的方法,其特征在于,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第一编码器的持续时间超过第四预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第二编码器为所述第一目标编码器;
或者,若原编码器为所述第一编码器的持续时间超过第五预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第二编码器为所述第一目标编码器。
7.如权利要求5所述的方法,其特征在于,所述方法还包括:
若所述上行带宽在所述第二带宽范围内,且,原编码器为所述第一编码器的持续时间超过第六预设时长,则确定所述第二编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
8.如权利要求1所述的方法,其特征在于,若所述第一编码器的码率小于所述第二编码器的码率,所述第一编码器和所述第二编码器对应的带宽范围不存在重叠;所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第一带宽范围内,且,原编码器为所述第二编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定第一目标编码器,其中,所述第一带宽范围为:大于所述第二编码器对应带宽范围的最小带宽,且,小于或等于第二预设低带宽门限。
9.如权利要求8所述的方法,其特征在于,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第二编码器的持续时间超过超过第七预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第一编码器为所述第一目标编码器;
或者,若原编码器为所述第二编码器的持续时间超过第八预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第一编码器为所述第一目标编码器。
10.如权利要求8所述的方法,其特征在于,所述方法还包括:
若所述上行带宽在所述第一带宽范围内,且,原编码器为所述第二编码器的持续时间超过第九预设时长,则确定所述第一编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
11.如权利要求8所述的方法,其特征在于,所述根据上行带宽以及待发送语音数据的语音特性,从第一编码器和第二编码器中确定目标编码器,包括:
若所述上行带宽在第二带宽范围内,且,原编码器为所述第一编码器,则根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述第一目标编码器,其中,所述第二带宽范围为:大于第二预设低带宽门限,且,小于或等于第二预设高带宽门限。
12.如权利要求11所述的方法,其特征在于,所述语音特征包括:静音状态指示信息,或者,音量指示信息,所述根据所述语音特征,从所述第一编码器和所述第二编码器中确定所述目标编码器,包括:
若原编码器为所述第一编码器的持续时间超过第十预设时长,且当前语音帧的所述静音状态指示信息指示处于静音状态,则确定所述第二编码器为所述第一目标编码器;
或者,若原编码器为所述第一编码器的持续时间超过第十一预设时长,且当前语音帧的所述音量指示信息指示处于音量小于预设音量门限,则确定所述第二编码器为所述第一目标编码器。
13.如权利要求11所述的方法,其特征在于,所述方法还包括:
若所述上行带宽在所述第二带宽范围内,且,原编码器为所述第一编码器的持续时间超过第十二预设时长,则确定所述第二编码器为第二目标编码器;
采用所述第二目标编码器对所述待发送语音数据进行编码,得到第二语音编码数据;
向所述接收方发送第二语音数据包,所述第二语音数据包包括:第二解码指示信息,和所述第二语音编码数据,其中,所述第二解码指示信息用于指示所述接收方采用第二目标解码器对所述第二语音编码数据进行解码,得到所述待发送语音数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210986038.5A CN115527544A (zh) | 2022-08-16 | 2022-08-16 | 语音数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210986038.5A CN115527544A (zh) | 2022-08-16 | 2022-08-16 | 语音数据传输方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115527544A true CN115527544A (zh) | 2022-12-27 |
Family
ID=84695711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210986038.5A Pending CN115527544A (zh) | 2022-08-16 | 2022-08-16 | 语音数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115527544A (zh) |
-
2022
- 2022-08-16 CN CN202210986038.5A patent/CN115527544A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10559313B2 (en) | Speech/audio signal processing method and apparatus | |
JP4643517B2 (ja) | 音声通信システムにおいて快適雑音を生成する方法および装置 | |
FI116643B (fi) | Kohinan vaimennus | |
JP4810335B2 (ja) | 広帯域オーディオ信号符号化装置および広帯域オーディオ信号復号装置 | |
US9786293B2 (en) | Signal coding and decoding methods and devices | |
KR101960200B1 (ko) | 리던던시 기반의 패킷 송신 에러 복구 시스템 및 방법 | |
RU2617926C1 (ru) | Способ, устройство и система для обработки аудиоданных | |
JP5096582B2 (ja) | ノイズ生成装置及び方法 | |
CN112334980B (zh) | 自适应舒适噪声参数确定 | |
KR20040005860A (ko) | 음성 통신에서의 위로 잡음 생성 방법 및 시스템 | |
KR101648290B1 (ko) | 컴포트 노이즈의 생성 | |
WO2009115039A1 (zh) | 一种噪声生成方法以及噪声生成装置 | |
WO2008023302A1 (en) | Discontinuous transmission of speech signals | |
WO2023197809A1 (zh) | 一种高频音频信号的编解码方法和相关装置 | |
KR20160124877A (ko) | 음성 주파수 코드 스트림 디코딩 방법 및 디바이스 | |
CN111681664A (zh) | 一种降低音频编码码率的方法、系统、存储介质及设备 | |
JP6612808B2 (ja) | 会話/音声信号処理方法および符号化装置 | |
EP3086319B1 (en) | Methods and apparatuses for dtx hangover in audio coding | |
EP2660812A1 (en) | Bandwidth expansion method and apparatus | |
JP2011515705A (ja) | 背景ノイズ情報を符号化する方法および手段 | |
CN115527544A (zh) | 语音数据传输方法 | |
CN105761724B (zh) | 一种语音频信号处理方法和装置 | |
JP5053712B2 (ja) | 無線端末および無線端末の音声再生方法 | |
WO2021214280A1 (en) | Low cost adaptation of bass post-filter |
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 |