System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,特别涉及一种音频中爆音的消除方法、电子设备及可读存储介质。
技术介绍
1、音频播放功能是电子设备的重要功能之一,但是,在进行音频播放的过程中,有时还会发生pop(爆)音的问题。其中,在电子设备的操作系统中,音频数据的传递涉及到应用层、应用框架层、硬件抽象层、内核层、硬件层五个部分,在音频传递过程中,若某一层对音频数据的调度不及时,则可能会导致pop音的出现,从而影响对音频播放的质量和流畅性。
2、因此,为了避免影响到对音频的播放,通常需要对音频中的pop音进行消除。
技术实现思路
1、本申请提供了一种音频中爆音的消除方法、电子设备及可读存储介质,可以用于解决相关技术pop音对音频播放的影响。所述技术方案如下:
2、第一方面,提供了一种音频中爆音的消除方法,应用于电子设备中,所述方法包括:
3、在播放音频的过程中,在第一检测时段,检测第一共享缓冲区中的数据量为第一数值,所述第一共享缓冲区是用于缓存第一音频数据传递线程传输的音频数据的缓冲区,在所述第一检测时段,所述第一音频数据传递线程的优先级为第一优先级,且运行在处理器的第一核;
4、在第二检测时段,所述第一音频数据传递线程的优先级为所述第一优先级,且运行在所述第一核中,所述第一共享缓冲区的数据量为第二数值,且所述第二数值小于所述第一数值的情况下,将所述第一音频数据传递线程的优先级由所述第一优先级调整为第二优先级,所述第二优先级高于所述第一优先级;
5、在第
6、在第四检测时段,所述第一音频数据传递线程的优先级为所述第二优先级,且运行在所述第二核,所述第一共享缓冲区中的数据量为第四数值,且所述第四数值大于所述第一数值的情况下,确定已完成本轮对所述音频中的爆pop音的消除;
7、其中,在所述第一检测时段、所述第二检测时段、所述第三检测时段和所述第四检测时段,第二共享缓冲区的数据量大于所述第一数值,所述第二共享缓冲区是用于缓存传输至所述第一音频数据传递线程的音频数据的缓冲区。
8、如此,在播放音频的过程中,在第一共享缓冲区的数据量较小的情况下,通过一系列的参数调整,降低了pop音出现的可能,消除了在第一共享缓冲区的数据量较小时出现的pop音,提高了音频播放效果。
9、作为本申请的一个示例,所述电子设备包括pop音预测模块;所述第一音频数据传递线程包括硬件抽象层线程;
10、所述在播放音频的过程中,在第一检测时段,检测第一共享缓冲区中的数据量为第一数值,包括:
11、在播放所述音频的过程中,在满足数据上报周期的情况下,所述第一共享缓冲区向所述硬件抽象层线程上报第一写入消息,所述第一写入消息中携带所述第一数值;
12、所述硬件抽象层线程在接收所述第一写入消息后,向所述pop音预测模块发送第一数据消息,所述第一数据消息中携带所述第一数值;
13、所述pop音预测模块从所述第一数据消息中获取所述第一数值。
14、如此,在音频播放过程中,通过获取第一共享缓冲区的数据量,从而能够预测音频中是否会产生pop音,进而能够及时对pop音进行消除,降低了pop音产生的可能性。
15、作为本申请的一个示例,所述在第二检测时段,所述第一音频数据传递线程的优先级为所述第一优先级,且运行在所述第一核中,所述第一共享缓冲区的数据量为第二数值,且所述第二数值小于所述第一数值的情况下,将所述第一音频数据传递线程的优先级由所述第一优先级调整为第二优先级,包括:
16、在第二检测时段,所述第一音频数据传递线程的优先级为所述第一优先级,且运行在所述第一核中,所述第一共享缓冲区的数据量为所述第二数值,且所述第二数值小于所述第一数值的情况下,将所述第一音频数据传递线程对应的优先值由第一优先值调整为第二优先值,所述第二优先值为小于所述第一优先值的一个数值,所述优先值与所述优先级呈负相关关系。
17、如此,通过调整优先值来调整优先级,使得优先级的调节有具体的数值支持,提高了调整优先级的准确性。
18、作为本申请的一个示例,所述电子设备包括pop音预测模块和pop音主动消除模块;所述第一音频数据传递线程包括硬件抽象层线程;
19、所述在第二检测时段,所述第一音频数据传递线程的优先级为所述第一优先级,且运行在所述第一核中,所述第一共享缓冲区的数据量为第二数值,且所述第二数值小于所述第一数值的情况下,将所述第一音频数据传递线程的优先级由所述第一优先级调整为第二优先级,包括:
20、在所述第二检测时段,所述第一音频数据传递线程的优先级为所述第一优先级,且运行在所述第一核的情况下,若满足数据上报周期,则所述第一共享缓冲区向所述硬件抽象层线程上报第二写入消息,所述第二写入消息中携带所述第二数值;
21、所述硬件抽象层线程在接收到所述第二写入消息的情况下,向所述pop音预测模块发送第二数据消息,所述第二数据消息中携带所述第二数值;
22、在所述第二数值小于所述第一数值的情况下,所述pop音预测模块向所述pop音主动消除模块发送第一调节消息,所述第一调节消息中携带所述第一共享缓冲区的缓冲区标识;
23、所述pop音频主动模块在接收所述第一调节消息后,确定对所述第一音频数据传递线程的优先级进行调整,并将所述第一音频数据传递线程对应的优先级由所述第一优先级调整为所述第二优先级。
24、如此,通过在第一调节消息中携带第一共享缓冲区的缓冲区标识,可以使pop音主动消除模块准确获知需要调节哪个音频数据传递线程的参数,使得参数调节更有针对性,提高了调节参数的准确性。
25、作为本申请的一个示例,所述在第三检测时段,所述第一音频数据传递线程的优先级为所述第二优先级,且运行在所述第一核,所述第一共享缓冲区中的数据量为第三数值,且所述第三数值小于所述第一数值的情况下,将所述第一音频数据传递线程调整至所述处理器的第二核中运行之后,还包括:
26、在所述第四检测时段,所述第一音频数据传递线程的优先级为所述第二优先级,且运行在所述第二核,所述第一共享缓冲区中的数据量为第五数值,且所述第五数值小于所述第一数值的情况下,则对所述处理器增加虚拟负载,以使所述处理器的最低运行频率由预设频率上升至第一频率;
27、在第五检测时段,所述第一音频数据传递线程的优先级为所述第二优先级,且运行在所述第二核,所述处理器的运行频率为第一频率,所述第一共享缓冲区中的数据量为第六数值,且所述第六数值大于所述第一数值的情况下,确定已完成本轮对所述音频中pop音的消除。
2本文档来自技高网...
【技术保护点】
1.一种音频中爆音的消除方法,其特征在于,应用于电子设备中,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述电子设备包括POP音预测模块;所述第一音频数据传递线程包括硬件抽象层线程;
3.如权利要求1所述的方法,其特征在于,所述在第二检测时段,所述第一音频数据传递线程的优先级为所述第一优先级,且运行在所述第一核中,所述第一共享缓冲区的数据量为第二数值,且所述第二数值小于所述第一数值的情况下,将所述第一音频数据传递线程的优先级由所述第一优先级调整为第二优先级,包括:
4.如权利要求1所述的方法,其特征在于,所述电子设备包括POP音预测模块和POP音主动消除模块;所述第一音频数据传递线程包括硬件抽象层线程;
5.如权利要求1-4中任一项所述的方法,其特征在于,所述在第三检测时段,所述第一音频数据传递线程的优先级为所述第二优先级,且运行在所述第一核,所述第一共享缓冲区中的数据量为第三数值,且所述第三数值小于所述第一数值的情况下,将所述第一音频数据传递线程调整至所述处理器的第二核中运行之后,还包括:
6.如权利要求1
7.如权利要求1-5中任一项所述的方法,其特征在于,所述在第四检测时段,所述第一音频数据传递线程的优先级为所述第二优先级,且运行在所述第二核,所述第一共享缓冲区中的数据量为第四数值,且所述第四数值大于所述第一数值的情况下,确定已完成本轮对所述音频中的爆POP音的消除之后,还包括:
8.如权利要求7所述的方法,其特征在于,所述电子设备中包括POP音预测模块和POP音主动消除模块;
9.一种电子设备,其特征在于,所述电子设备的结构中包括处理器和存储器;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如权利要求1-8任意一项所述的方法。
...【技术特征摘要】
1.一种音频中爆音的消除方法,其特征在于,应用于电子设备中,所述方法包括:
2.如权利要求1所述的方法,其特征在于,所述电子设备包括pop音预测模块;所述第一音频数据传递线程包括硬件抽象层线程;
3.如权利要求1所述的方法,其特征在于,所述在第二检测时段,所述第一音频数据传递线程的优先级为所述第一优先级,且运行在所述第一核中,所述第一共享缓冲区的数据量为第二数值,且所述第二数值小于所述第一数值的情况下,将所述第一音频数据传递线程的优先级由所述第一优先级调整为第二优先级,包括:
4.如权利要求1所述的方法,其特征在于,所述电子设备包括pop音预测模块和pop音主动消除模块;所述第一音频数据传递线程包括硬件抽象层线程;
5.如权利要求1-4中任一项所述的方法,其特征在于,所述在第三检测时段,所述第一音频数据传递线程的优先级为所述第二优先级,且运行在所述第一核,所述第一共享缓冲区中的数据量为第三数值,且所述第三数值小于所述第一数值的情况下,将所述第一音频数据传递线程调整至所述处理器的第二核中运行之后,...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。