一种UAC设备静音状态的检测方法、装置和电子设备制造方法及图纸

技术编号:37964196 阅读:14 留言:0更新日期:2023-06-30 09:39
本申请实施例公开了一种UAC设备静音状态的检测方法、装置和电子设备,其方法包括:对通过UAC设备采集的音频数据按照预设方式进行分帧处理,得到对应的每帧音频数据;将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非静音计数值,第一阈值用于确定每一个采用点对应的当前帧是否为静音帧;以及根据静音计数值、非静音计数值和预设的第二阈值,确定当前帧处于静音状态或者处于非静音状态,第二阈值用于确定当前帧是否为静音状态。用于确定当前帧是否为静音状态。用于确定当前帧是否为静音状态。

【技术实现步骤摘要】
一种UAC设备静音状态的检测方法、装置和电子设备


[0001]本专利技术涉及音频
,具体涉及一种UAC设备静音状态的检测方法、装置、存储介质、电子设备和计算机程序产品。

技术介绍

[0002]在实时音视频通讯会议中,用户发言时需要使用麦克风设备。现有的绝大多数麦克风设备上均会设置有控制按钮,通过该控制按钮可以执行控制静音、取消静音、增加音量、减小音量、开关机等操作。现有最常见的麦克风设备是USB接口的全向麦克风设备。全向麦克风设备是一种常见的UAC(USB Audio Class,USB音频类)设备。在实时音视频通讯会议中,最常见的操作就是执行静音的操作和执行解除静音的操作。例如,用户发言时,需要解除静音;而用户不需要发言时,可以关闭静音,上述过程均需要对应用和设备之前的静音状态进行同步处理。
[0003]当用户从界面上执行静音/解除静音操作时,可以通过调用系统的接口直接进行操作,此时,麦克风设备会同步执行静音/解除静音操作,此时,应用的状态和设备的状态是同步的。但是,从设备上进行静音/解除静音操作时,需要应用去适配获取设备的静音/解除静音状态,然后将设备的静音/解除静音状态同步到应用界面上。
[0004]在实际应用场景中,需要提供一种静音检测方法,该方法能够同步设备和应用之前的静音状态。
[0005]针对UAC设备,所采用的静音状态的同步方法,目前主要有两种方式。一种方式是使用HID(Human Interface Device,人体学接口设备)规范,调用HidApi库,通过抓取报告描述符的方式以获取当前UAC设备的静音状态。使用HID规范的方式需要去查阅相关的报表描述符,由于不同设备的描述符所采用的格式可能不一致,需要调用并加载HidApi库,对各个设备逐一进行适配处理,这将使得获取当前UAC设备的静音状态的过程变得繁琐且耗时。
[0006]另一种方式是根据使用的麦克风设备厂商所提供的SDK(Software Development Kit,软件开发工具包)去适配设备,以获取当前UAC设备的静音状态。该方法需要不仅需要对各个设备依次进行适配处理,并且需要加载第三方库。当使用厂商提供的SDK进行适配处理时,需要逐个对厂商设备进行适配。在这个适配过程中,若存在多个不同的SDK,需要依次加载不同的SDK,并逐个对厂商设备进行适配,上述整个操作过程极其繁琐。

技术实现思路

[0007]基于此,有必要针对基于现有的UAC设备静音状态的检测方法需要依赖第三方库或者需要逐一适配设的问题,提供一种UAC设备静音状态的检测方法、装置、存储介质、电子设备和计算机程序产品。
[0008]第一方面,本申请实施例提供了一种UAC设备静音状态的检测方法,所述方法包括:对通过UAC设备采集的音频数据按照预设方式进行分帧处理,得到对应的每帧音
频数据;将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非静音计数值,所述第一阈值用于确定每一个采用点对应的当前帧是否为静音帧;根据所述静音计数值、所述非静音计数值和预设的第二阈值,确定当前帧处于静音状态或者处于非静音状态,所述第二阈值用于确定当前帧是否为静音状态。
[0009]在一种实施方式中,所述对通过UAC设备采集的音频数据按照预设方式进行分帧处理,得到对应的每帧音频数据,包括:对通过UAC设备采集的音频数据,每间隔第一预设时间间隔,回调对应的音频数据;对所述音频数据进行分帧处理,将每间隔第二预设时间间隔的每一个音频数据作为一帧音频数据。
[0010]在一种实施方式中,所述将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非静音计数值,包括:从所述预设数量的每一个采样点中随机选取任一采样点作为当前采样点;获取当前采样点的第一幅值;响应于当前采样点的所述第一幅值小于或等于所述第一阈值,确定当前采样点为静音帧,以统计静音计数值。
[0011]在一种实施方式中,所述统计静音计数值,包括:静音计数值在当前数值的基础上累加1,并将非静音计数对应的数值重置为0。
[0012]在一种实施方式中,所述将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非静音计数值,包括:从所述预设数量的每一个采样点中随机选取任一采样点作为当前采样点;获取当前采样点的第二幅值;响应于当前采样点的所述第二幅值大于所述第一阈值,确定当前采样点为非静音帧,以统计非静音计数值。
[0013]在一种实施方式中,所述统计非静音计数值,包括:非静音计数值在当前数值的基础上累加1,并将静音计数对应的数值重置为0。
[0014]在一种实施方式中,所述根据所述静音计数值、所述非静音计数值和预设的第二阈值,确定当前帧处于静音状态或者处于非静音状态,包括:响应于所述静音计数值等于所述第二阈值,确定当前帧处于静音状态。
[0015]在一种实施方式中,在所述确定当前帧处于静音状态之后,还包括:响应于确定当前帧处于静音状态,将当前帧的静音状态同步至待同步的应用。
[0016]在一种实施方式中,所述根据所述静音计数值、所述非静音计数值和预设的第二阈值,确定当前帧处于静音状态或者处于非静音状态,包括:响应于所述非静音计数值等于所述第二阈值,确定当前帧处于非静音状态。
[0017]第二方面,本申请实施例提供了一种UAC设备静音状态的检测装置,所述装置包
括:分帧处理模块,用于对通过UAC设备采集的音频数据按照预设方式进行分帧处理,得到对应的每帧音频数据;第一确定模块,用于将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非静音计数值,所述第一阈值用于确定每一个采用点对应的当前帧是否为静音帧;第二确定模块,用于根据所述静音计数值、所述非静音计数值和预设的第二阈值,确定当前帧处于静音状态或者处于非静音状态,所述第二阈值用于确定当前帧是否为静音状态。
[0018]第三方面,本申请实施例提供一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实现上述的方法步骤。
[0019]第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于执行上述的方法步骤。
[0020]第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述的方法步骤。
[0021]在本申请实施例中,对通过UAC设备采集的音频数据按照预设方式进行分帧处理,得到对应的每帧音频数据;将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种UAC设备静音状态的检测方法,包括:对通过UAC设备采集的音频数据按照预设方式进行分帧处理,得到对应的每帧音频数据;将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非静音计数值,所述第一阈值用于确定每一个采用点对应的当前帧是否为静音帧;根据所述静音计数值、所述非静音计数值和预设的第二阈值,确定当前帧处于静音状态或者处于非静音状态,所述第二阈值用于确定当前帧是否为静音状态。2.根据权利要求1所述的方法,其中,所述对通过UAC设备采集的音频数据按照预设方式进行分帧处理,得到对应的每帧音频数据,包括:对通过UAC设备采集的音频数据,每间隔第一预设时间间隔,回调对应的音频数据;对所述音频数据进行分帧处理,将每间隔第二预设时间间隔的每一个音频数据作为一帧音频数据。3.根据权利要求1所述的方法,其中,所述将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非静音计数值,包括:从所述预设数量的每一个采样点中随机选取任一采样点作为当前采样点;获取当前采样点的第一幅值;响应于当前采样点的所述第一幅值小于或等于所述第一阈值,确定当前采样点为静音帧,以统计静音计数值。4.根据权利要求3所述的方法,其中,所述统计静音计数值,包括:静音计数值在当前数值的基础上累加1,并将非静音计数对应的数值重置为0。5.根据权利要求1所述的方法,其中,所述将每帧数据设置的预设数量的每一个采样点的幅值和预设的第一阈值依次进行比对,确定每一个采样点对应的当前帧是否为静音帧,以统计静音计数值或非...

【专利技术属性】
技术研发人员:李明远
申请(专利权)人:全时云商务服务股份有限公司
类型:发明
国别省市:

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

1