超声波通路与耳机通路的冲突解决方法及相关装置与流程

文档序号:37286992发布日期:2024-03-13 20:35阅读:25来源:国知局
超声波通路与耳机通路的冲突解决方法及相关装置与流程

本技术涉及音频领域,尤其涉及超声波通路与耳机通路的冲突解决方法及相关装置。


背景技术:

1、为了节省电子设备的功耗,以及为了防止靠近耳部后对电子设备的误触。在触发接近事件的情况下,电子设备可以控制电子设备的显示屏灭屏,从而达到节省电子设备的功耗以及防止误触的目的。其中,电子设备靠近用户的耳部的事件可以称为接近事件。

2、接近事件的判定方法通常为,打开电子设备中具备接近光功能的应用程序后,触发接近光业务,电子设备通过听筒发送超声波数据,通过麦克风接收超声波数据。电子设备对发送的超声波数据和接收的超声波数据进行计算,得到接近结果。电子设备结合接近结果来控制显示屏灭屏。

3、超声波数据需要在电子设备的芯片的硬件通路中进行模数转换后发送。受限于现有芯片的功能,在某些型号的芯片上,硬件通路存在公共部分,比如说传输超声波数据的超声波通路和传输音频数据的耳机通路。当关闭应用程序,从而结束接近光业务时,会关闭超声波数据和超声波通路,而通路的公共部分也随之关闭。所以,会造成音频数据级通路工作的异常,导致耳机的左右声道无声,影响用户体验。


技术实现思路

1、本技术实施例提供的一种超声波通路与耳机通路的冲突解决方法及相关装置,通过多线程来分别管理耳机通路和超声波通路,避免了耳机通路和超声波通路的冲突,提高了耳机通路和/或超声波通路的工作效率。

2、第一方面,本技术实施例提供了一种超声波通路与耳机通路的冲突解决方法,应用于电子设备,所述电子设备包含超声波通路和耳机通路,所述超声波通路用于传输超声波数据,所述耳机通路用于传输音频数据,所述方法包括:

3、触发第一事件,将耳机线程设置为阻塞状态,其中,所述阻塞状态下的所述耳机线程不可以用于处理与所述耳机通路相关的事务;

4、调用所述耳机线程向超声波线程发送第一通知消息,其中,所述第一通知消息包含与所述第一事件有关的消息;

5、调用所述超声波线程向所述耳机线程发送第二通知消息,其中,所述第二通知消息包括根据所述第一通知消息对所述超声波通路进行处理后的处理结果;

6、根据所述第二通知消息将所述耳机线程设置为非阻塞状态,其中,所述非阻塞状态下的所述耳机线程可以用于处理与所述耳机通路相关的事务。

7、可以看出,通过两个线程来管理不同的通道,耳机线程用于管理耳机通路,比如说打开或者关闭耳机通路。超声波线程用于管理超声通路,比如说打开或者关闭超声波通路。在调用耳机线程向超声波线程发送第一通知消息时,对耳机线程进行加锁保护。这样,防止关闭超声波通路过程中,超声波通路的状态影响耳机通路的状态;或者,防止关闭耳机通路的过程中,耳机通路的状态影响超声波通路的状态。

8、在一种可能的实施方式中,所述将所述耳机线程设置为阻塞状态,包括:

9、通过条件变量阻塞所述耳机线程,使得所述耳机线程在预设时间内为所述阻塞状态。

10、可以看出,通过条件变量来对耳机线程进行加锁保护,可以避免关闭或者打开超声笔通路的过程中,对耳机通路造成影响。

11、在一种可能的实施方式中,所述触发第一事件,将耳机线程设置为阻塞状态,包括:

12、在打开所述耳机通路之前,将耳机线程设置为阻塞状态。

13、可以看出,在耳机通路打开前,对耳机线程进行加锁保护,避免对耳机通路的状态造成影响。

14、在一种可能的实施方式中,所述根据所述第二通知消息将所述耳机线程设置为非阻塞状态,包括:

15、根据所述第二通知消息确定所述超声波通路已经关闭,满足所述耳机线程的条件变量;

16、在满足所述条件变量的情况下,将所述耳机线程设置为非阻塞状态;

17、调用所述非阻塞状态的所述耳机线程打开所述耳机通路。

18、可以看出,在打开耳机通路之前,在关闭超声波通路时,因为耳机线程处于阻塞状态,所以不会对耳机通路造成影响。在得知超声波通路已经关闭后,再打开耳机通路,从而可以避免超声波通路和耳机通路的冲突。其中,条件变量是一种线程同步机制,允许线程以无竞争的方式等待特定条件,条件不满足时线程挂起并等待。

19、在一种可能的实施方式中,所述调用所述耳机线程向所述超声波线程发送第一通知消息之后,所述调用所述超声波线程向所述耳机线程发送第二通知消息或之前,还包括:

20、在确定要关闭所述超声波通路的情况下,调用所述超声波线程关闭所述超声波通路;

21、在确定所述超声波通路关闭之后,生成所述第二通知消息。

22、可以看出,在超声波线程中需要对超声波通路进行处理,为了不影响耳机通路的打开,若超声波通路在位,则关闭超声波通路。

23、在一种可能的实施方式中,在关闭所述耳机通路时,超声波通路处于关闭状态,所述触发第一事件,将耳机线程设置为阻塞状态,包括:

24、在关闭所述耳机通路之后,将所述耳机线程设置为阻塞状态。

25、可以看出,在关闭耳机通路时,超声波通路处于关闭状态,所以耳机通路的关闭对超声波通路的状态不会造成影响。在耳机通路关闭之后,对耳机线程进行加锁保护,避免因为耳机通路的状态会超声波通路造成影响。比如说避免耳机通路可以重新打开对超声波通路造成影响。

26、在一种可能的实施方式中,所述根据所述第二通知消息将所述耳机线程设置为非阻塞状态,包括:

27、根据所述第二通知消息确定在所述超声线程中已经执行完毕关于所述超声通道的事务,满足用于阻塞所述耳机线程的条件变量;

28、在满足所述条件变量的情况下,将所述耳机线程设置为非阻塞状态。

29、可以看出,在关闭超声波通路时,因为耳机线程处于阻塞状态,所以不会对耳机通路造成影响。因此,可以调用超声波线程对超声波通路进行处理,在对超声波通路处理完毕后,可以解锁耳机线程。这样,耳机线程可以接着处理其他事务。

30、在一种可能的实施方式中,所述调用所述耳机线程向所述超声波线程发送第一通知消息之后,所述调用所述超声波线程向所述耳机线程发送第二通知消息之前,还包括:

31、在所述超声波线程中确定要打开超声波通路的情况下,调用所述超声波线程打开所述超声波通路;

32、在所述超声波线程中确定不打开超声波通路的情况下,则不调用所述超声波线程;

33、在所述超声波线程执行完毕之后,生成所述第二通知消息。

34、可以看出,在关闭耳机通路之后,调用耳机线程向超声波线程发送消息。因为耳机通路已经关闭,且耳机线程处于阻塞状态,所以耳机通路不会对超声波通路造成影响,因此调用超声波线程对超声波通路进行处理,比如说打开超声波通路。

35、在一种可能的实施方式中,所述调用所述超声波线程打开所述超声波通路,包括:

36、调用所述超声波线程判断所述耳机通路的状态;

37、若所述耳机通路处于关闭状态,则调用所述超声波线程打开所述超声波通路;

38、若所述耳机通路处于打开状态,则不打开所述超声波通路。

39、可以看出,超声波线程维护耳机通路的打开或者关闭的状态位,用来判断是否打开或者关闭超声波通路。

40、第二方面,本技术实施例提供的一种电子设备,所述电子设备包括:一个或多个处理器,存储器;其中,所述存储器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行第一方面或第一方面的任一种可能的实现方式中描述的方法。

41、第三方面,本技术提供一种芯片或者芯片系统,该芯片或者芯片系统包括至少一个处理器和通信接口,通信接口和至少一个处理器通过线路互联,至少一个处理器用于运行计算机程序或指令,以执行第一方面或第一方面的任意一种可能的实现方式中描述的方法。其中,芯片中的通信接口可以为输入/输出接口、管脚或电路等。

42、在一种可能的实现中,本技术实施例中上述描述的芯片或者芯片系统还包括至少一个存储器,该至少一个存储器中存储有指令。该存储器可以为芯片内部的存储单元,例如,寄存器、缓存等,也可以是该芯片的存储单元(例如,只读存储器、随机存取存储器等)。

43、第四方面,本技术实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,该计算机程序被处理器执行时,使得计算机执行如第一方面或第一方面的任一种可能的实现方式中描述的方法。

44、第五方面,本技术实施例提供了一种计算机程序产品,当该计算机程序产品在通信装置上运行时,使得该通信装置执行如第一方面或第一方面的任一种可能的实现方式中描述的方法。

45、应当理解的是,本技术中对技术特征、技术方案、有益效果或类似语言的描述并不是暗示在任意的单个实施例中可以实现所有的特点和优点。相反,可以理解的是对于特征或有益效果的描述意味着在至少一个实施例中包括特定的技术特征、技术方案或有益效果。因此,本说明书中对于技术特征、技术方案或有益效果的描述并不一定是指相同的实施例。进而,还可以任何适当的方式组合本实施例中所描述的技术特征、技术方案和有益效果。本领域技术人员将会理解,无需特定实施例的一个或多个特定的技术特征、技术方案或有益效果即可实现实施例。在其他实施例中,还可在没有体现所有实施例的特定实施例中识别出额外的技术特征和有益效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1