CN112885329A - 一种提高混音音质的控制方法、装置及存储介质 - Google Patents
一种提高混音音质的控制方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112885329A CN112885329A CN202110150163.8A CN202110150163A CN112885329A CN 112885329 A CN112885329 A CN 112885329A CN 202110150163 A CN202110150163 A CN 202110150163A CN 112885329 A CN112885329 A CN 112885329A
- Authority
- CN
- China
- Prior art keywords
- sound
- mixing
- channel
- sound mixing
- data
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000005070 sampling Methods 0.000 claims abstract description 26
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 19
- 238000001514 detection method Methods 0.000 claims abstract description 11
- 238000004806 packaging method and process Methods 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 15
- 230000009467 reduction Effects 0.000 claims description 6
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 abstract description 7
- 238000012805 post-processing Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 8
- 230000006872 improvement Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000003745 diagnosis Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000000737 periodic effect Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/033—Voice editing, e.g. manipulating the voice of the synthesiser
-
- 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]
Abstract
本发明公开了一种提高混音音质的控制方法、装置及存储介质,所述方法包括:接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测、统一采样率和写入输入队列;其中,一个所述输入队列对应一个混音通道;计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。本发明通过在混音前对语音数据进行预处理和混音后进行后处理,有效提高了混音输出的音质。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种提高混音音质的控制方法、装置及存储介质。
背景技术
语音合成技术是将各个参会者的语音数据通过混音算法混合,编码后传输给所有的参会者。语音合成技术让更多的参会者可以在同一时刻发言,并将所有发言者的信息传达给所有参会者。
传统的语音合成技术,基本上只关注混音算法本身,较少考虑其它音质相关问题,导致输出的音质质量不够高,无法满足对音质要求较高的场合的需求。
发明内容
本发明实施例的目的是提供一种提高混音音质的控制方法、装置及存储介质,通过在混音前对语音数据进行预处理和混音后进行后处理,有效提高了混音输出的音质。
为实现上述目的,本发明一实施例提供了一种提高混音音质的控制方法,包括以下步骤:
接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测、统一采样率和写入输入队列;其中,一个所述输入队列对应一个混音通道;
计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;
根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;
根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;
将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。
优选地,在所述计算所述输入队列中语音数据的能量值之前,还包括:
检查所有混音通道的通道状态,排除静音或禁止说权限的混音通道;
检查每个混音通道对应的缓存长度,获取其中的累计语音数据长度和当前语音数据长度,若累计语音数据长度短于启动混音的数据长度,或者所述当前语音数据长度短于单次混音处理的数据长度,则禁止对应的混音通道参与混音。
优选地,所述根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态,具体包括:
获取允许参与混音的总通道数量和指定必须参与混音的混音通道,计算得到剩余允许参与混音的通道数量N;其中,N≥1;
根据所述混音通道的权重按高到低,选择排序在前N个的混音通道参与混音;
根据所述输入队列的语音信息设置通道状态;其中,所述通道状态包括不参与、持续参与、等待进入、等待退出、进入和退出。
优选地,在所述根据预设的混音算法,执行混音操作之前,还包括:
控制所述通道状态为进入的混音通道的语音音量按照预设的增强速率逐渐从静音增强到正常音量;
控制所述通道状态为退出的混音通道的语音音量按照预设的减弱速率逐渐从正常音量减弱到静音。
优选地,所述将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端,具体包括:
将所述输出队列的语音数据的采样率转换为通道编码的采样率;
将转换采样率后的语音数据编码为预设的编码类型的数据;
将完成编码的数据封装为RTP数据包,发送至音频发送端。
优选地,在所述接收待混音的RTP数据之前,还包括:
设置定时器的定时周期和触发周期;其中,所述触发周期为所述定时周期的1/K,K≥1;
将启动CPU至首次启动所述定时器的时间,加上所述定时周期,作为初始超时时间。
优选地,所述方法,还包括:
启动所述定时器;
按照所述触发周期定时发起混音的请求;
获取当前时间,判断所述当前时间是否超过超时时间;
若超过,则将所述超时时间更新为所述当前时间加上所述定时周期,同时执行混音的操作;
若未超过,则继续按照所述触发周期定时发起混音的请求。
本发明另一实施例提供了一种提高混音音质的控制装置,所述装置包括:
数据接收模块,用于接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测和写入输入队列;其中,一个所述输入队列对应一个混音通道;
计算模块,用于计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;
选择通道模块,用于根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;
混音模块,用于根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;
发送模块,用于将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。
本发明另一实施例对应提供了一种使用提高混音音质的控制方法的装置,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一项所述的提高混音音质的控制方法。
本发明还有一实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如实现如上述任一项所述的提高混音音质的控制方法。
与现有技术相比,本发明实施例所提供的一种提高混音音质的控制方法、装置及存储介质,通过在混音前对语音数据进行预处理和混音后进行后处理,有效提高了混音输出的音质。
附图说明
图1是本发明一实施例提供的一种提高混音音质的控制方法的流程示意图;
图2是本发明一实施例提供的一种对接收待混音的RTP数据进行处理的流程示意图;
图3是本发明一实施例提供的一种混音前预处理的流程示意图;
图4是本发明一实施例提供的一种混音后处理的流程示意图;
图5是本发明一实施例提供的一种定时处理的流程示意图;
图6是本发明一实施例提供的一种提高混音音质的控制装置的结构示意图;
图7是本发明一实施例提供的一种使用提高混音音质的控制方法的装置的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明实施例1提供的一种提高混音音质的控制方法的流程示意图,所述方法包括步骤S1至步骤S5:
S1、接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测、统一采样率和写入输入队列;其中,一个所述输入队列对应一个混音通道;
S2、计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;
S3、根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;
S4、根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;
S5、将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。
具体地,接收待混音的RTP(Real-time Transport Protocol)数据,对RTP数据进行RTP重排序、数据解码、静音检测、统一采样率和写入输入队列;其中,一个输入队列对应一个混音通道。RTP重排序在一定程度缓解网络包抖动乱序的问题,结合FEC算法、丢包重传等机制,可在很大程度上改善由于网络传输质量差导致的音质下降的问题。数据解码指的是语音数据解码,将各种RTP编码数据,如g711、g722、g729、ilbc、opus等等,解码为原始PCM采样数据,通过统一数据格式,方便后续处理。静音检测指的是判定语音数据包是否为静音,并进行标识,静音状态下后续不参与混音。统一采样率是因为不同的通道编码,可能使用不同的采样率,如711使用8K,722使用16K等等,此处将通道的语音数据采样率进行统一,在保证音质的同时可以简化后续处理。优选地,采样率统一转换为16K。写入输入队列指的是将处理后的数据写入环形缓冲队列,并记录缓冲数据的长度,待混音使用。参见图2,是本发明该实施例提供的一种对接收待混音的RTP数据进行处理的流程示意图。
在写入输入队列后,进行输入队列的读取,读取中可以获取单次混音所需要的语音数据,从而可以计算输入队列中语音数据的能量值,作为对应的混音通道的权重。
根据混音通道的权重,选择参与混音的混音通道,并设置通道状态。一般地,按照混音通道的权重从高到低进行选择。
根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中。将各通道的输出数据写入输出队列,待输出使用。此处不直接输出,使流程更简单清晰,避免混音与输出产生耦合。另外,优选地,混音算法在混音数量限制在4方以下时使用嵌位算法,超过4方推荐AWS算法。如使用嵌位算法,先累加参与混音的通道数据,再计算各通道的输出数据;未参与混音的通道直接使用累加数据,参与混音的通道再减去自己的输入数据;再对输出数据执行嵌位,防止溢出。
将输出队列的语音数据封装为RTP数据包,发送至音频发送端即对端,完成单次音频的输入输出。
本发明实施例1通过提供一种提高混音音质的控制方法,通过在混音前对语音数据进行预处理和混音后进行后处理,有效提高了混音输出的音质。
作为上述方案的改进,在所述计算所述输入队列中语音数据的能量值之前,还包括:
检查所有混音通道的通道状态,排除静音或禁止说权限的混音通道;
检查每个混音通道对应的缓存长度,获取其中的累计语音数据长度和当前语音数据长度,若累计语音数据长度短于启动混音的数据长度,或者所述当前语音数据长度短于单次混音处理的数据长度,则禁止对应的混音通道参与混音。
具体地,检查所有混音通道的通道状态,排除静音或禁止说权限的混音通道,也即先排除部分不参与混音的通道,可以有效减少数据处理量。
检查每个混音通道对应的缓存长度,获取其中的累计语音数据长度和当前语音数据长度,若累计语音数据长度短于启动混音的数据长度,即累计语音数据长度达不到启动混音的数据长度,或者当前语音数据长度短于单次混音处理的数据长度,即当前语音数据长度达不到单次混音处理的数据长度,当出现任一情况时,则禁止对应的混音通道参与混音。因为维持语音的连续性可改善特定状态下的音质。
作为上述方案的改进,所述根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态,具体包括:
获取允许参与混音的总通道数量和指定必须参与混音的混音通道,计算得到剩余允许参与混音的通道数量N;其中,N≥1;
根据所述混音通道的权重按高到低,选择排序在前N个的混音通道参与混音;
根据所述输入队列的语音信息设置通道状态;其中,所述通道状态包括不参与、持续参与、等待进入、等待退出、进入和退出。
具体地,获取允许参与混音的总通道数量和指定必须参与混音的混音通道,将两者相减,计算得到剩余允许参与混音的通道数量N;其中,N≥1;
根据混音通道的权重按高到低,选择排序在前N个的混音通道参与混音,这是在首次启动时的选择方案。当出现成员变化时,连续X次不在前N方的退出混音,连续多次在前N方的替换加入混音,这是为了保持多人会议时混音语音的连续性,所以并不是一直都直接取前N方参与混音。
根据输入队列的语音信息设置通道状态;其中,通道状态包括不参与、持续参与、等待进入、等待退出、进入和退出。
作为上述方案的改进,在所述根据预设的混音算法,执行混音操作之前,还包括:
控制所述通道状态为进入的混音通道的语音音量按照预设的增强速率逐渐从静音增强到正常音量;
控制所述通道状态为退出的混音通道的语音音量按照预设的减弱速率逐渐从正常音量减弱到静音。
具体地,控制通道状态为进入的混音通道的语音音量按照预设的增强速率逐渐从静音增强到正常音量,即控制进入的语音音量逐渐增强到正常。
控制通道状态为退出的混音通道的语音音量按照预设的减弱速率逐渐从正常音量减弱到静音,即控制退出的语音逐渐减弱到静音。
以上两种切换机制称为淡入淡出切换,在某通道进入退出混音时,应进行淡入淡出处理,使得音质输出更加自然,提升感受到的音质。
至此,混音前的预处理的详细流程全部介绍完毕,参见图3,是本发明该实施例提供的一种混音前预处理的流程示意图。
作为上述方案的改进,所述将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端,具体包括:
将所述输出队列的语音数据的采样率转换为通道编码的采样率;
将转换采样率后的语音数据编码为预设的编码类型的数据;
将完成编码的数据封装为RTP数据包,发送至音频发送端。
具体地,将输出队列的语音数据的采样率转换为通道编码的采样率。在接收到RTP数据时,进行的处理有统一采样率,所以这里要将统一的采样率还原为通道编码所需要的采样率。
将转换采样率后的语音数据编码为预设的编码类型的数据。预设的编码类型一般为预先协商确定的。
将完成编码的数据封装为RTP数据包,发送至音频发送端,即RTP打包发送。参见图4,是本发明该实施例提供的一种混音后处理的流程示意图。
作为上述方案的改进,在所述接收待混音的RTP数据之前,还包括:
设置定时器的定时周期和触发周期;其中,所述触发周期为所述定时周期的1/K,K≥1;
将启动CPU至首次启动所述定时器的时间,加上所述定时周期,作为初始超时时间。
具体地,设置定时器的定时周期和触发周期;其中,触发周期为定时周期的1/K,K≥1。例如定时周期为20毫秒,可采用1毫秒的触发周期。定时周期指的是定时器对外展现的定时触发周期性业务的间隔,如混音。触发周期为定时器内部触发的请求执行周期性业务的间隔。
将启动CPU至首次启动定时器的时间,加上定时周期,作为初始超时时间。
需要说明的是,设置上述定时的方案是为了实现播放语音的长期定时的准确性。计算机上的软件定时器,一般是不精确的,这种定时器不能用于实时性要求高的应用场景。高精度定时器由于能够达到较高的定时精度,被广泛应用于各种实时场景。对于周期性的定时,通常的实际执行流程是周期定时触发后,再重启该周期定时。
虽然语音采样与播放,设备上采用的硬件定时器如通过晶振分频,精度远高于软件定时器。采用高精度定时器时,对于每一次定时,精度都会在允许的误差范围内。但是,受系统调度等因素的影响,从较长时间段来看,误差会不断累计,可能越来越偏离预期。
播放语音时,通常会在启动播放前设定缓冲,数据量达到预定值是才启动放音,用于平滑播放语音数据时的抖动。短期内,写数据速度和播放速度不匹配时,可依靠缓冲区缓存数据,实现平滑播放,不影响音质。从长期来看,写数据速度和播放速度必须严格匹配。写数据的速度慢于播放速度,则会周期性造成缓冲区无数据,无声音播放;写数据的速度快于播放速度,则写缓冲失败,会造成周期性的丢弃数据;两种情况都会导致音质下降。
由此可见,播放语音时,音质对单次定时的准确性要求不高,更依赖于长期定时的准确性。而传统的定时方案,用于会议混音的定时触发时,会造成一定程度的音质下降。所以要对定时方案进行改进。
作为上述方案的改进,所述方法,还包括:
启动所述定时器;
按照所述触发周期定时发起混音的请求;
获取当前时间,判断所述当前时间是否超过超时时间;
若超过,则将所述超时时间更新为所述当前时间加上所述定时周期,同时执行混音的操作;
若未超过,则继续按照所述触发周期定时发起混音的请求。
具体地,启动定时器。优选地,定时器采用高精度定时器或普通定时器,或者使用线程加延迟来实现。
按照触发周期定时发起混音的请求;
获取当前时间,判断当前时间是否超过超时时间。优选地,该当前时间为系统记录的当前时间,一般以CPU启动时刻为起点进行计时。
若超过,则将超时时间更新为当前时间加上定时周期,同时执行混音的操作。也就是说,在每次执行混音操作时,就将此时刻作为新的记录起点,避免直接使用当前时间,产生累计误差。
若未超过,则继续按照触发周期定时发起混音的请求。
参见图5,是本发明该实施例提供的一种定时处理的流程示意图。在图5中,等待定时触发指的是按照触发周期定时发起混音的请求,触发定时回调指的是执行混音的操作。如果定时处理的周期性业务是其他业务时,只需要调用对应的回调函数即可。
为了加深对上述概念的理解,下面以一个例子进行说明。例如定时周期为20毫秒,触发周期为1毫秒,启动CPU时刻为0:00:00,经过一段时间后,启动定时器后,在启动定时器后1毫秒,发起混音的请求,等待触发系统的定时回调即等待系统触发混音,在系统执行混音前,先获取当前时间,判断当前时间是否超过超时时间,初始超时时间为0:00:20,则未超过,则继续按照触发周期定时发起混音的请求。当时间继续流走,假若当前时间为0:00:20,则超过超时时间,此时将超时时间更新为0:00:40,同时执行混音的操作。
参见图6,是本发明提供的一种提高混音音质的控制装置的结构示意图,所述装置包括:
数据接收模块11,用于接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测和写入输入队列;其中,一个所述输入队列对应一个混音通道;
计算模块12,用于计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;
选择通道模块13,用于根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;
混音模块14,用于根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;
发送模块15,用于将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。
本发明实施例所提供的一种车辆的故障诊断装置能够实现上述任一实施例所述的车辆的故障诊断方法的所有流程,装置中的各个模块、单元的作用以及实现的技术效果分别与上述实施例所述的车辆的故障诊断方法的作用以及实现的技术效果对应相同,这里不再赘述。
参见图7,是本发明提供的使用提高混音音质的控制方法的装置的一个实施例的结构示意图,所述使用提高混音音质的控制方法的装置包括处理器10、存储器20以及存储在所述存储器20中且被配置为由所述处理器10执行的计算机程序,所述处理器10执行所述计算机程序时实现上述任一实施例所述的车辆的故障诊断方法。
示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器20中,并由处理器10执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在一种车辆的故障诊断中的执行过程。例如,计算机程序可以被分割成数据接收模块、计算模块、选择通道模块、混音模块和发送模块,各模块具体功能如下:
数据接收模块11,用于接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测和写入输入队列;其中,一个所述输入队列对应一个混音通道;
计算模块12,用于计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;
选择通道模块13,用于根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;
混音模块14,用于根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;
发送模块15,用于将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。
所述使用提高混音音质的控制方法的装置可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述使用提高混音音质的控制方法的装置可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,示意图7仅仅是一种使用提高混音音质的控制方法的装置的示例,并不构成对所述使用提高混音音质的控制方法的装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述使用提高混音音质的控制方法的装置还可以包括输入输出设备、网络接入设备、总线等。
处理器10可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者处理器10也可以是任何常规的处理器等,处理器10是所述使用提高混音音质的控制方法的装置的控制中心,利用各种接口和线路连接整个车辆的故障诊断的使用提高混音音质的控制方法的装置的各个部分。
存储器20可用于存储所述计算机程序和/或模块,处理器10通过运行或执行存储在存储器20内的计算机程序和/或模块,以及调用存储在存储器20内的数据,实现所述使用提高混音音质的控制方法的装置的各种功能。存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器20可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述使用提高混音音质的控制方法的装置集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任一实施例所述的提高混音音质的控制方法。
综上,本发明实施例所提供的一种提高混音音质的控制方法、装置及存储介质,结合权限控制、静音检测、音量权重等机制,减少参与混音的有效成员数,提升混音输出的音质,同时通过延迟切换、淡入淡出等机制,使输出语音更加连续自然,为了提高语音播放的长期定时的准确性,本发明还设置周期性定时器,采用在原始时间基准上的累加,替代在当前时间上的偏移,作为每次超时判定的判据,避免累计误差导致的音质降低。本发明使用的每一项技术,都简单成熟,通过将它们正确的组合使用,能有效降低对音质的损伤,提升对环境的适应能力,改善能感受到的音质。而且新增的处理操作,对CPU和内存资源占用极低,一般能直接替换当前的语音会议服务,不需要升级硬件设备。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (10)
1.一种提高混音音质的控制方法,其特征在于,包括以下步骤:
接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测、统一采样率和写入输入队列;其中,一个所述输入队列对应一个混音通道;
计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;
根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;
根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;
将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。
2.如权利要求1所述的提高混音音质的控制方法,其特征在于,在所述计算所述输入队列中语音数据的能量值之前,还包括:
检查所有混音通道的通道状态,排除静音或禁止说权限的混音通道;
检查每个混音通道对应的缓存长度,获取其中的累计语音数据长度和当前语音数据长度,若累计语音数据长度短于启动混音的数据长度,或者所述当前语音数据长度短于单次混音处理的数据长度,则禁止对应的混音通道参与混音。
3.如权利要求1所述的提高混音音质的控制方法,其特征在于,所述根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态,具体包括:
获取允许参与混音的总通道数量和指定必须参与混音的混音通道,计算得到剩余允许参与混音的通道数量N;其中,N≥1;
根据所述混音通道的权重按高到低,选择排序在前N个的混音通道参与混音;
根据所述输入队列的语音信息设置通道状态;其中,所述通道状态包括不参与、持续参与、等待进入、等待退出、进入和退出。
4.如权利要求3所述的提高混音音质的控制方法,其特征在于,在所述根据预设的混音算法,执行混音操作之前,还包括:
控制所述通道状态为进入的混音通道的语音音量按照预设的增强速率逐渐从静音增强到正常音量;
控制所述通道状态为退出的混音通道的语音音量按照预设的减弱速率逐渐从正常音量减弱到静音。
5.如权利要求1所述的提高混音音质的控制方法,其特征在于,所述将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端,具体包括:
将所述输出队列的语音数据的采样率转换为通道编码的采样率;
将转换采样率后的语音数据编码为预设的编码类型的数据;
将完成编码的数据封装为RTP数据包,发送至音频发送端。
6.如权利要求1-5任一项所述的提高混音音质的控制方法,其特征在于,在所述接收待混音的RTP数据之前,还包括:
设置定时器的定时周期和触发周期;其中,所述触发周期为所述定时周期的1/K,K≥1;
将启动CPU至首次启动所述定时器的时间,加上所述定时周期,作为初始超时时间。
7.如权利要求6所述的提高混音音质的控制方法,其特征在于,所述方法,还包括:
启动所述定时器;
按照所述触发周期定时发起混音的请求;
获取当前时间,判断所述当前时间是否超过超时时间;
若超过,则将所述超时时间更新为所述当前时间加上所述定时周期,同时执行混音的操作;
若未超过,则继续按照所述触发周期定时发起混音的请求。
8.一种提高混音音质的控制装置,其特征在于,包括:
数据接收模块,用于接收待混音的RTP数据,对所述RTP数据进行RTP重排序、数据解码、静音检测和写入输入队列;其中,一个所述输入队列对应一个混音通道;
计算模块,用于计算所述输入队列中语音数据的能量值,作为对应的混音通道的权重;
选择通道模块,用于根据所述混音通道的权重,选择参与混音的混音通道,并设置通道状态;
混音模块,用于根据预设的混音算法,执行混音操作,将参与混音的各通道的输出语音数据分别写入对应的混音通道的输出队列中;
发送模块,用于将所述输出队列的语音数据封装为RTP数据包,发送至音频发送端。
9.一种使用提高混音音质的控制方法的装置,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的提高混音音质的控制方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至7中任一项所述的提高混音音质的控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110150163.8A CN112885329B (zh) | 2021-02-02 | 2021-02-02 | 一种提高混音音质的控制方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110150163.8A CN112885329B (zh) | 2021-02-02 | 2021-02-02 | 一种提高混音音质的控制方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112885329A true CN112885329A (zh) | 2021-06-01 |
CN112885329B CN112885329B (zh) | 2023-10-31 |
Family
ID=76057008
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110150163.8A Active CN112885329B (zh) | 2021-02-02 | 2021-02-02 | 一种提高混音音质的控制方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112885329B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113658602A (zh) * | 2021-08-16 | 2021-11-16 | 广州大彩光电科技有限公司 | 一种实时混音方法及装置 |
CN114285830A (zh) * | 2021-12-21 | 2022-04-05 | 北京百度网讯科技有限公司 | 语音信号处理方法、装置、电子设备及可读存储介质 |
CN114512139A (zh) * | 2022-04-18 | 2022-05-17 | 杭州星犀科技有限公司 | 多路音频混音的处理方法、系统、混音处理器和存储介质 |
CN116471263A (zh) * | 2023-05-12 | 2023-07-21 | 杭州全能数字科技有限公司 | 一种视讯系统的实时音频择路方法 |
WO2024078296A1 (zh) * | 2022-10-09 | 2024-04-18 | 华为技术有限公司 | 一种混音方法及相关装置 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003102098A (ja) * | 2001-09-21 | 2003-04-04 | Yamaha Corp | 音声信号編集方法、音声信号編集装置およびプログラム |
CA2808226A1 (en) * | 2004-03-01 | 2005-09-15 | Dolby Laboratories Licensing Corporation | Multichannel audio coding |
US20060210097A1 (en) * | 2005-03-18 | 2006-09-21 | Microsoft Corporation | Audio submix management |
CN1859511A (zh) * | 2005-04-30 | 2006-11-08 | 华为技术有限公司 | 一种电话会议混音方法 |
CN101488870A (zh) * | 2009-02-25 | 2009-07-22 | 杭州华三通信技术有限公司 | 语音混音的实现方法、系统及设备 |
CN102226944A (zh) * | 2011-05-25 | 2011-10-26 | 贵阳朗玛信息技术股份有限公司 | 混音方法及设备 |
CN104219013A (zh) * | 2014-09-01 | 2014-12-17 | 厦门亿联网络技术股份有限公司 | 一种视频会议系统的多麦克风混音方法 |
CN106601264A (zh) * | 2016-11-30 | 2017-04-26 | 广州广哈通信股份有限公司 | 一种语音会议混音系统及方法 |
CN107800902A (zh) * | 2017-09-15 | 2018-03-13 | 北京容联易通信息技术有限公司 | 多路语音的混音方法及系统 |
CN111048119A (zh) * | 2020-03-12 | 2020-04-21 | 腾讯科技(深圳)有限公司 | 通话音频混音处理方法、装置、存储介质和计算机设备 |
CN111696515A (zh) * | 2020-06-15 | 2020-09-22 | 杭州艾力特数字科技有限公司 | 一种用于教学录播的音频混音方法 |
CN112118264A (zh) * | 2020-09-21 | 2020-12-22 | 苏州科达科技股份有限公司 | 会议混音方法以及系统 |
RU2791673C1 (ru) * | 2019-03-06 | 2023-03-13 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Устройство понижающего микширования и способ понижающего микширования |
-
2021
- 2021-02-02 CN CN202110150163.8A patent/CN112885329B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003102098A (ja) * | 2001-09-21 | 2003-04-04 | Yamaha Corp | 音声信号編集方法、音声信号編集装置およびプログラム |
CA2808226A1 (en) * | 2004-03-01 | 2005-09-15 | Dolby Laboratories Licensing Corporation | Multichannel audio coding |
US20060210097A1 (en) * | 2005-03-18 | 2006-09-21 | Microsoft Corporation | Audio submix management |
CN1859511A (zh) * | 2005-04-30 | 2006-11-08 | 华为技术有限公司 | 一种电话会议混音方法 |
CN101488870A (zh) * | 2009-02-25 | 2009-07-22 | 杭州华三通信技术有限公司 | 语音混音的实现方法、系统及设备 |
CN102226944A (zh) * | 2011-05-25 | 2011-10-26 | 贵阳朗玛信息技术股份有限公司 | 混音方法及设备 |
CN104219013A (zh) * | 2014-09-01 | 2014-12-17 | 厦门亿联网络技术股份有限公司 | 一种视频会议系统的多麦克风混音方法 |
CN106601264A (zh) * | 2016-11-30 | 2017-04-26 | 广州广哈通信股份有限公司 | 一种语音会议混音系统及方法 |
CN107800902A (zh) * | 2017-09-15 | 2018-03-13 | 北京容联易通信息技术有限公司 | 多路语音的混音方法及系统 |
RU2791673C1 (ru) * | 2019-03-06 | 2023-03-13 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Устройство понижающего микширования и способ понижающего микширования |
CN111048119A (zh) * | 2020-03-12 | 2020-04-21 | 腾讯科技(深圳)有限公司 | 通话音频混音处理方法、装置、存储介质和计算机设备 |
CN111696515A (zh) * | 2020-06-15 | 2020-09-22 | 杭州艾力特数字科技有限公司 | 一种用于教学录播的音频混音方法 |
CN112118264A (zh) * | 2020-09-21 | 2020-12-22 | 苏州科达科技股份有限公司 | 会议混音方法以及系统 |
Non-Patent Citations (2)
Title |
---|
韩钰: "\"网络电话会议中混音技术的研究\"", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
韩钰: ""网络电话会议中混音技术的研究"", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, pages 19 - 25 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113658602A (zh) * | 2021-08-16 | 2021-11-16 | 广州大彩光电科技有限公司 | 一种实时混音方法及装置 |
CN114285830A (zh) * | 2021-12-21 | 2022-04-05 | 北京百度网讯科技有限公司 | 语音信号处理方法、装置、电子设备及可读存储介质 |
CN114512139A (zh) * | 2022-04-18 | 2022-05-17 | 杭州星犀科技有限公司 | 多路音频混音的处理方法、系统、混音处理器和存储介质 |
WO2024078296A1 (zh) * | 2022-10-09 | 2024-04-18 | 华为技术有限公司 | 一种混音方法及相关装置 |
CN116471263A (zh) * | 2023-05-12 | 2023-07-21 | 杭州全能数字科技有限公司 | 一种视讯系统的实时音频择路方法 |
CN116471263B (zh) * | 2023-05-12 | 2024-02-13 | 杭州全能数字科技有限公司 | 一种视讯系统的实时音频择路方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112885329B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112885329B (zh) | 一种提高混音音质的控制方法、装置及存储介质 | |
US9237238B2 (en) | Speech-selective audio mixing for conference | |
CN112104836A (zh) | 一种音频服务器混音方法、系统、存储介质及设备 | |
US10432543B2 (en) | Dual jitter buffers | |
CN111755017B (zh) | 云会议的音频录制方法、装置、服务器及存储介质 | |
US11922972B2 (en) | Method and apparatus for video coding | |
US20170105141A1 (en) | Method for shortening a delay in real-time voice communication and electronic device | |
US9819429B2 (en) | Efficient load sharing and accelerating of audio post-processing | |
US10742817B1 (en) | Conference call notification and setup configuration | |
CN111352605A (zh) | 一种音频播放、发送的方法及装置 | |
US20120050451A1 (en) | Method and Terminal for Synchronously Recording Sounds and Images of Opposite Ends Based on Circuit Domain Video Telephone | |
CN108924665B (zh) | 降低视频播放延时的方法、装置、计算机设备和存储介质 | |
CN111683184B (zh) | 回声信号的处理方法、设备及计算机存储介质 | |
CN113572898B (zh) | 语音通话中的无声异常检测方法及对应的装置 | |
CN110445578B (zh) | 一种spi数据传输方法及装置 | |
US20040019491A1 (en) | Speed control playback of parametric speech encoded digital audio | |
US20020072902A1 (en) | Adoptive storage of audio signals | |
CN111866542B (zh) | 音频信号处理方法、多媒体信息处理方法、装置及电子设备 | |
US9936077B2 (en) | Methods for the encoding of participants in a conference | |
US9137051B2 (en) | Method and apparatus for reducing rendering latency for audio streaming applications using internet protocol communications networks | |
CN115831150A (zh) | 一种语音播放方法、装置、设备及存储介质 | |
CN111355996A (zh) | 一种音频播放方法及计算设备 | |
CN114974273B (zh) | 一种会议音频混音方法和装置 | |
CN114639389A (zh) | 语音通信回声消除的方法、设备及系统 | |
CN114938353B (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 |