CN103354588A - 录放音采样率的确定方法、装置及系统 - Google Patents
录放音采样率的确定方法、装置及系统 Download PDFInfo
- Publication number
- CN103354588A CN103354588A CN2013102683520A CN201310268352A CN103354588A CN 103354588 A CN103354588 A CN 103354588A CN 2013102683520 A CN2013102683520 A CN 2013102683520A CN 201310268352 A CN201310268352 A CN 201310268352A CN 103354588 A CN103354588 A CN 103354588A
- Authority
- CN
- China
- Prior art keywords
- sample rate
- record
- playback
- buffer size
- rate
- 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
Images
Landscapes
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
Abstract
本发明公开一种录放音采样率的确定方法、装置及系统。上述方法包括:对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,该缓冲区大小为该采样率下,填满该缓冲区所需的时长;将获取到的多个缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。根据本发明提供的技术方案,从整体上降低了VoIP产品的延迟,大大改善了通话质量,提高了用户体验。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种录放音采样率的确定方法、装置及系统。
背景技术
对于网络电话(Voice over Internet Protocol,简称为VoIP)产品而言,在以下两种情况下会产生延迟。第一种情况:在网络传输过程中会产生延迟;第二种情况:语音数据被接收和数据被声卡播放出来之间会产生延迟。
对于第二种情况下产生的延迟而言,语音设备(例如,声卡)在播放声音时,会在一个专用的数据缓冲区中去获取数据然后播放。当这个缓冲区的数据没被填满的时候(即使已经有数据),声音还是未被播放出来的,只有当这个缓冲区被填满了,声卡才会开始播放声音。而创建上述数据缓冲区的目的是为了最大程度地保证声卡在一段时间间隔内未去取数据,这个数据缓冲区也不会至于因为它本身的尺寸太小而导致新接收到的数据把还未取出来播放的数据挤出缓冲区。
在Android系统上录制以及播放语音流,一般是通过调用系统提供的getMinBufferSize接口来返回一个缓冲区大小,这个缓冲区大小是成功创建一个AudioRecord和AudioTrack对象所需要的最小缓冲区的大小,这个缓冲区的大小,意味着在某采样率下,要填满这个缓冲区所需的时间。然而,返回的这个缓冲区大小不能保证绝对平滑的录放音。在不同的Android设备下,不同的采样率获得的缓冲区大小不一,在实际应用中,如果仅仅根据语音质量需要,随便选择一种采样率,这可能会导致语音延迟增大,从而大大地降低了通话质量,影响了用户体验。
因此,如何有效降低上述第二种情况下产生的延迟,以提高通话质量,是目前亟待解决的问题。
发明内容
本发明提供了一种录放音采样率的确定方法、装置及系统,以至少解决相关技术中由于上述第二种情况下产生的延迟,大大降低了通话质量,影响了用户体验的问题。
根据本发明的一个方面,提供了一种录放音采样率的确定方法。
根据本发明的录放音采样率的确定方法包括:对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;以及将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
根据本发明的另一方面,提供了一种录放音采样率的确定装置。
根据本发明的录放音采样率的确定装置包括:获取模块,用于对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;确定模块,用于将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
根据本发明的又一方面,提供了一种录放音采样率的确定系统。
根据本发明的录放音采样率的确定系统包括:进行当前通话的两端,所述两端均包括获取模块和第一确定模块;所述获取模块,用于对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;所述第一确定模块,用于将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
通过本发明,由于将获取到的多个缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率,因此从整体上降低了上述第二种情况下产生的延迟,大大改善了通话质量,提高了用户体验。
附图说明
图1是根据本发明实施例的录放音采样率的确定方法的流程图;
图2是根据本发明优选实施例的录放音采样率的确定方法的流程示意图;
图3是根据本发明实施例的录放音采样率的确定装置的结构框图;
图4是根据本发明优选实施例的录放音采样率的确定装置的结构框图;
图5是根据本发明实施例的录放音采样率的确定系统的结构框图;以及
图6是根据本发明优选实施例的录放音采样率的确定系统的结构框图。
具体实施方式
下面结合说明书附图对本发明的具体实现方式做一详细描述。
图1是根据本发明实施例的录放音采样率的确定方法的流程图。如图1所示,该录放音采样率的确定方法包括以下处理:
步骤S101:对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;
步骤S103:将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
相关技术中,通话两端采用固定的音频采样率来采集和播放语音,例如,VoIP产品在节省带宽和衡量语音质量的前提下,都固定为单通道,16位采样。而图1所示的方法中,将获取到的多个缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率,由于当前通话的录放音采样率对应的缓冲区大小最小,因此从整体上降低了上述第二种情况下产生的延迟,大大改善了通话质量,提高了用户体验。
优选地,上述当前通话可以为采用网络电话方式进行的通话;进行上述当前通话的两端均可以为Android设备。
优选地,对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小进一步包括以下处理:采用所述多个预定采样率中的各个采样率,依次调用getMinBufferSize接口,获取所述各个采样率所对应的缓冲区大小。
需要说明的是,调用getMinBufferSize接口返回的缓冲区大小由以下三个参数决定:采样率,通道数和格式(即采样深度)。而同样的参数在不同的Android设备上通过计算,返回的缓冲区大小也不一样。换句话说,本文所述的缓冲区大小会因为打开声卡时候设置的参数(例如,采样率、声道数和采样深度)以及设备的不同而不同。采用轮询的方式,依次调用getMinBufferSize接口,可以获取多个预定采样率中各个采样率所对应的缓冲区大小。
优选地,在当前通话的两端的录放音采样率不相同时,还可以包括以下处理:根据语音质量和消耗带宽(例如,每分钟消耗带宽)确定统一采样率;当所述统一采样率与所述两端中的一端的录放音采样率不一致时,使用所述统一采样率对所述一端采集到的语音数据进行重新采样;将所述重新采样后的语音数据发送至所述两端中的另一端。
优选地,在将所述重新采样后的语音数据发送至所述另一端之后,还可以包括以下处理:使用所述另一端的录放音采样率对所述另一端接收到的语音数据进行重新采样并播放。
上述统一采样率是根据语音质量和消耗带宽设置的,例如,可以重新采样成32000Hz,24000Hz,16000Hz,8000Hz。即,如果想提供高质量的语音通话,可以设置较高的统一采样率,例如,32000Hz,24000Hz,16000Hz等,由于统一采样率较高,语音数据表示比较丰富,并且从更高的采样率重采样成统一采样率后,减少了失真,因而可以给该用户提供高质量的通话;如果想提供较低质量的语音通话,可以设置较低的统一采样率,例如,8000Hz等,由于统一采样率较低,语音数据表示没那么细致,并且从更高的采样率重采样成统一采样率后,可能造成较大的失真,因而给该用户提供的通话质量就比较低。
在优选实施过程中,图1所示的录放音采样率的确定方法可以运用于当前通话的两端,如果当前通话的两端根据步骤S103获取到的录放音采样率不一致时,需要设置一个统一采样率。例如,通话两端可能因为自身设备的不同确定出不同的采样率,如通话端A获取的最佳录音采样率为32000Hz,最佳放音采样率为8000Hz;而通话端B获取到的最佳录音采样率为8000Hz,最佳放音采样率为8000Hz。在综合考虑带宽与通话质量的情况下,可以采用某一特定的录音或放音采样率(即上述统一采样率),例如,可以采用16000Hz。通话端A在操作时使用32000Hz的采样率采集到语音数据后,对这些语音数据重采样成16000Hz的语音数据,然后发送给通话端B,通话端B接收到数据后把这些数据重采样成8000Hz交给声卡播放。同理,通话端B在操作时使用8000Hz的采样率采集到语音数据后,对这些语音数据重采样成16000Hz的语音数据,然后发送给通话端A,通话端A接收到数据后把这些数据重采样成8000Hz交给声卡播放。这个过程的流程如图2所示。
通过设置统一采样率,对原始语音数据利用重新采样技术处理后再进行网络传输,可以解决由于通话两端录放音采样率不一致,而影响回声消除处理的问题。
图3是根据本发明实施例的录放音采样率的确定装置的结构框图。如图3所示,该确定装置包括:获取模块30和确定模块32;其中,获取模块30,用于对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;确定模块32,用于将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
在图3所示的装置中,确定模块32将获取模块30获取到的多个缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率,由于当前通话的录放音采样率对应的缓冲区大小最小,因此从整体上降低了上述第二种情况下产生的延迟,大大改善了通话质量,提高了用户体验。
优选地,上述当前通话可以为采用网络电话方式进行的通话;进行上述当前通话的两端均可以为Android设备。
优选地,如图4所示,获取模块30可以进一步包括调用单元300和接收单元302;其中,调用单元300,用于采用所述多个预定采样率中的各个采样率,依次调用getMinBufferSize接口;以及接收单元302,用于接收所述getMinBufferSize接口返回的所述各个采样率所对应的缓冲区大小。
优选地,上述确定装置,还用于在在当前通话的两端的录放音采样率不相同时,根据语音质量和消耗带宽确定统一采样率;当所述统一采样率与所述两端中的一端的录放音采样率不一致时,使用所述统一采样率对这一端采集到的语音数据进行重新采样;将所述重新采样后的语音数据发送至上述两端中的另一端。
优选地,上述确定装置,还用于在所述统一采样率与上述另一端的录放音采样率不一致时,使用所述另一端的录放音采样率对所述另一端接收到的语音数据进行重新采样并播放。
需要说明的是,上述装置中各模块各单元相互结合的优选实施方式可以参见图1至图2的描述,此处不再赘述。
图5是根据本发明实施例的录放音采样率的确定系统的结构框图。如图5所示,该确定系统包括:进行当前通话的两端(通话端50和通话端52),通话端50和通话端52均包括:获取模块500,520和第一确定模块502,522;所述获取模块500,520,用于对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;所述第一确定模块502,522,用于将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
在图5所示的系统中,第一确定模块502,522将获取模块500,520获取到的多个缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率,由于当前通话的录放音采样率对应的缓冲区大小最小,因此从整体上降低了上述第二种情况下产生的延迟,大大改善了通话质量,提高了用户体验。
优选地,上述当前通话可以为采用网络电话方式进行的通话;进行上述当前通话的两端均可以为Android设备。
优选地,上述获取模块500,520,进一步用于采用所述多个预定采样率中的各个采样率,依次调用getMinBufferSize接口,获取所述各个采样率所对应的缓冲区大小。
优选地,如图6所示,通话端50和通话端52均还可以包括:第二确定模块504,524,用于在所述两端的录放音采样率不相同时,根据语音质量和每分钟消耗带宽确定统一采样率;第一采样模块506,526,用于在所述统一采样率与本端的录音采样率不一致时,使用所述统一采样率对所述本端采集到的语音数据进行重新采样;发送模块508,528,用于将所述重新采样后的语音数据发送至对端。
优选地,如图6所示,通话端50和通话端52均还可以包括:接收模块510,530,用于接收来自于所述对端的语音数据;第二采样模块512,532,用于在所述统一采样率与本端的放音采样率不一致时,使用所述本端的放音采样率对所述接收到的语音数据进行重新采样并播放。
需要说明的是,上述系统中各装置各模块相互结合的优选实施方式可以参见图1至图2的描述,此处不再赘述。
综上所述,借助本发明提供的上述实施例,采用轮询的方式来获取数据“最小”缓冲区并动态设置声卡采样率,然后对原始数据利用重新采样技术处理后再进行网络传输。因而减少了Android设备在第二种情况下造成的延迟时间,进而可以从整体上降低VoIP产品的延迟,大大改善通话的质量,有效提高通话双方的用户体验。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (11)
1.一种录放音采样率的确定方法,其特征在于,包括:
对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;
将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
2.根据权利要求1所述的录放音采样率的确定方法,其特征在于,对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小包括:
采用所述多个预定采样率中的各个采样率,依次调用getMinBufferSize接口,获取所述各个采样率所对应的缓冲区大小。
3.根据权利要求1所述的录放音采样率的确定方法,其特征在于,在当前通话的两端的录放音采样率不相同时,还包括:
根据语音质量和消耗带宽确定统一采样率;
当所述统一采样率与所述两端中的一端的录放音采样率不一致时,使用所述统一采样率对所述一端采集到的语音数据进行重新采样;
将所述重新采样后的语音数据发送至所述两端中的另一端。
4.根据权利要求3所述的录放音采样率的确定方法,其特征在于,在将所述重新采样后的语音数据发送至所述另一端之后,还包括:
当所述统一采样率与所述另一端的录放音采样率不一致时,使用所述另一端的录放音采样率对所述另一端接收到的语音数据进行重新采样并播放。
5.根据权利要求1至4中任一项所述的录放音采样率的确定方法,其特征在于,所述当前通话为采用网络电话方式进行的通话;进行所述当前通话的两端均为Android设备。
6.一种录放音采样率的确定装置,其特征在于,包括:
获取模块,用于对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;
确定模块,用于将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
7.根据权利要求6所述的录放音采样率的确定装置,其特征在于,所述获取模块包括:
调用单元,用于采用所述多个预定采样率中的各个采样率,依次调用getMinBufferSize接口;
接收单元,用于接收所述getMinBufferSize接口返回的所述各个采样率所对应的缓冲区大小。
8.一种录放音采样率的确定系统,其特征在于,包括:进行当前通话的两端,所述两端均包括获取模块和第一确定模块;
所述获取模块,用于对于多个预定采样率中的每个采样率,获取该采样率所对应的缓冲区大小,其中,所述缓冲区大小为该采样率下,填满该缓冲区所需的时长;
所述第一确定模块,用于将获取到的多个所述缓冲区大小中的最小值所对应的采样率确定为当前通话的录放音采样率。
9.根据权利要求8所述的录放音采样率的确定系统,其特征在于,所述两端均还包括:
第二确定模块,用于在所述两端的录放音采样率不相同时,根据语音质量和消耗带宽确定统一采样率;
第一采样模块,用于在所述统一采样率与本端的录音采样率不一致时,使用所述统一采样率对所述本端采集到的语音数据进行重新采样;
发送模块,用于将所述重新采样后的语音数据发送至对端。
10.根据权利要求9所述的录放音采样率的确定系统,其特征在于,所述两端均还包括:
接收模块,用于接收来自于所述对端的语音数据;
第二采样模块,用于在所述统一采样率与本端的放音采样率不一致时,使用所述本端的放音采样率对所述接收到的语音数据进行重新采样并播放。
11.根据权利要求8至10中任一项所述的录放音采样率的确定系统,其特征在于,所述当前通话为采用网络电话方式进行的通话;进行所述当前通话的两端均为Android设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102683520A CN103354588A (zh) | 2013-06-28 | 2013-06-28 | 录放音采样率的确定方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102683520A CN103354588A (zh) | 2013-06-28 | 2013-06-28 | 录放音采样率的确定方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103354588A true CN103354588A (zh) | 2013-10-16 |
Family
ID=49310891
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013102683520A Pending CN103354588A (zh) | 2013-06-28 | 2013-06-28 | 录放音采样率的确定方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103354588A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107343105A (zh) * | 2017-07-21 | 2017-11-10 | 维沃移动通信有限公司 | 一种音频数据的处理方法和移动终端 |
CN107393543A (zh) * | 2017-06-29 | 2017-11-24 | 智威富(北京)科技有限公司 | 音频数据处理方法及装置 |
CN108021675A (zh) * | 2017-12-07 | 2018-05-11 | 北京慧听科技有限公司 | 一种多设备录音的自动切分对齐方法 |
WO2021120795A1 (zh) * | 2019-12-19 | 2021-06-24 | 腾讯科技(深圳)有限公司 | 采样率处理方法、装置、系统、存储介质和计算机设备 |
CN113870872A (zh) * | 2018-06-05 | 2021-12-31 | 安克创新科技股份有限公司 | 基于深度学习的语音音质增强方法、装置和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101442586A (zh) * | 2008-12-31 | 2009-05-27 | 中兴通讯股份有限公司 | 一种多媒体播放方法及播放终端 |
CN102568494A (zh) * | 2012-02-23 | 2012-07-11 | 贵阳朗玛信息技术股份有限公司 | 消除回声的优化方法、装置及系统 |
-
2013
- 2013-06-28 CN CN2013102683520A patent/CN103354588A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101442586A (zh) * | 2008-12-31 | 2009-05-27 | 中兴通讯股份有限公司 | 一种多媒体播放方法及播放终端 |
CN102568494A (zh) * | 2012-02-23 | 2012-07-11 | 贵阳朗玛信息技术股份有限公司 | 消除回声的优化方法、装置及系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107393543A (zh) * | 2017-06-29 | 2017-11-24 | 智威富(北京)科技有限公司 | 音频数据处理方法及装置 |
WO2019000877A1 (zh) * | 2017-06-29 | 2019-01-03 | 智威富(北京)科技有限公司 | 音频数据处理方法及装置 |
CN107343105A (zh) * | 2017-07-21 | 2017-11-10 | 维沃移动通信有限公司 | 一种音频数据的处理方法和移动终端 |
CN108021675A (zh) * | 2017-12-07 | 2018-05-11 | 北京慧听科技有限公司 | 一种多设备录音的自动切分对齐方法 |
CN108021675B (zh) * | 2017-12-07 | 2021-11-09 | 北京慧听科技有限公司 | 一种多设备录音的自动切分对齐方法 |
CN113870872A (zh) * | 2018-06-05 | 2021-12-31 | 安克创新科技股份有限公司 | 基于深度学习的语音音质增强方法、装置和系统 |
WO2021120795A1 (zh) * | 2019-12-19 | 2021-06-24 | 腾讯科技(深圳)有限公司 | 采样率处理方法、装置、系统、存储介质和计算机设备 |
US11729236B2 (en) | 2019-12-19 | 2023-08-15 | Tencent Technology (Shenzhen) Company Limited | Sampling rate processing method, apparatus, and system, storage medium, and computer device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102568494B (zh) | 消除回声的优化方法、装置及系统 | |
EP2901669B1 (en) | Near-end indication that the end of speech is received by the far end in an audio or video conference | |
CN103957216B (zh) | 基于音频信号特性分类的无参考音频质量评价方法和系统 | |
CN101355600B (zh) | 杂音去除系统、声音获取装置、声音输出装置及记录介质 | |
CN103354588A (zh) | 录放音采样率的确定方法、装置及系统 | |
CN101636990B (zh) | 在通信系统中传输数据的方法 | |
EP3490199B1 (en) | Calling method and terminal | |
WO2017000728A1 (zh) | 流量控制方法、装置和服务器 | |
CN105099949A (zh) | 基于对延迟抖动和对话动态的监视的抖动缓冲器控制 | |
WO2008030292A3 (en) | System and method for adjusting codec speed in a transmission path during call set-up | |
CN108111997A (zh) | 蓝牙设备音频同步方法和系统 | |
CN103177728A (zh) | 语音信号降噪处理方法及装置 | |
CN103095517A (zh) | 流媒体传输质量评估和信息获取方法及相关设备和系统 | |
CN105991857A (zh) | 一种实现参考信号调整的方法及装置 | |
CN101309400A (zh) | 一种流媒体业务停顿信息获取方法及装置 | |
EP3220603B1 (en) | Jitter buffer apparatus and method | |
CN104168218B (zh) | 抖动缓冲方法及装置 | |
CN102571147A (zh) | 声音处理设备、方法和程序 | |
CN107979507A (zh) | 一种数据传输方法、装置、设备及存储介质 | |
CN110096250B (zh) | 一种音频数据处理方法、装置、电子设备及存储介质 | |
US20090257455A1 (en) | Method and apparatus for synchronizing timing of signal packets | |
CN106303754A (zh) | 一种音频数据播放方法及装置 | |
CN109427342A (zh) | 用于防止语音延迟的语音数据处理装置及方法 | |
CN102843344B (zh) | 微型基地台的信号传输方法 | |
CN105611191B (zh) | 语音视频文件合成方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131016 |