CN116225362A - 多系统播放音频的方法、装置、存储介质及电子设备 - Google Patents
多系统播放音频的方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN116225362A CN116225362A CN202310187655.3A CN202310187655A CN116225362A CN 116225362 A CN116225362 A CN 116225362A CN 202310187655 A CN202310187655 A CN 202310187655A CN 116225362 A CN116225362 A CN 116225362A
- Authority
- CN
- China
- Prior art keywords
- audio
- stack
- central control
- auxiliary
- application program
- 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
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000008569 process Effects 0.000 claims abstract description 15
- 238000012545 processing Methods 0.000 claims description 16
- 230000009471 action Effects 0.000 claims description 7
- 238000011217 control strategy Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 230000001603 reducing effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/165—Management of the audio stream, e.g. setting of volume, audio stream path
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
Abstract
本申请公开了一种多系统播放音频的方法、装置、存储介质及电子设备。其中,该方法包括:检测针对系统中的中控端的应用程序的操作指令;在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令;在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点。本申请解决了由于多操作系统造成的同时播放音视频时,声音互相干扰的的技术问题。
Description
技术领域
本申请涉及车载领域,具体而言,涉及一种多系统播放音频的方法、装置、存储介质及电子设备。
背景技术
随着汽车电子技术的逐步发展,车载电子设备越来越多,其功能也越来越丰富,车载系统集成了导航、蓝牙连接、播放音视频以及通话等多种功能,车载信息娱乐功能在车载系统中占据着重要的地位。传统的车载系统分为:只存在一个单屏系统,或存在多个多屏系统。
只存在一个单屏系统造成除主驾屏的位置,副驾和后排乘客无法操作车载系统;存在多个多屏系统,副驾和后排乘客可以在各自对应的操作屏上播放音视频,但多屏系统之间是相互独立的,导致多用户在不同位置的操作屏同时播放音视频时,声音混杂,影响视听体验。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种多系统播放音频的方法、装置、存储介质及电子设备,以至少解决由于多操作系统造成的同时播放音视频时,声音互相干扰的的技术问题。
根据本申请实施例的一个方面,提供了一种多系统播放音频的方法,其特征在于,包括:检测针对多系统中的中控端的应用程序的操作指令;在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令,其中,指令用于指示辅助端停止当前时刻正在播放的音频,其中,在音频焦点申请成功后,控制音频硬件设备播放中控端的应用程序对应的多媒体数据,中控端与辅助端上的应用程序共用一套音频硬件设备播放音频数据;在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,其中,第一预设栈的封装有第一类型请求对应的任务与第二类型请求对应的任务,第一类型请求对应的任务封装在第一预设栈的栈底,第二类型请求对应的任务封装在第一预设栈的栈顶,栈底的处理优先级小于栈顶的处理优先级。
可选地,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,包括:在第一预设栈不为空的情况下,确定第一预设栈的栈顶元素的优先级;比较栈顶元素的优先级和第一类型请求的优先级,根据比较结果确定是否允许辅助端抢占音频焦点。
可选地,根据比较结果确定是否允许辅助端抢占音频焦点,包括:在栈顶元素的优先级大于第一类型请求的优先级的情况下,生成第一标志,其中,第一标志用于指示辅助端申请播放音频时无法抢占音频焦点;在栈顶元素的优先级等于第一类型请求的优先级的情况下,生成第二标志,第二标志用于指示辅助端申请播放音频时可抢占音频焦点。
可选地,在生成第二标志之后,方法还包括:将第二标志发送至辅助端。
可选地,方法还包括:在第一预设栈为空栈的情况下,确定允许辅助端抢占音频焦点。
可选地,向辅助端发送指令后,方法还包括:根据指令对应的第三标志生成对辅助端的控制策略,其中,控制策略用于指示辅助端对应的第二预设栈的栈顶元素丢失音频焦点,并清空第二预设栈中的元素。
可选地,方法还包括:在检测到第二预设栈中待清空的元素对应的应用程序存在降音动作的情况下,取消降音动作。
可选地,中控端与辅助端通过套接字Socket的方式进行通信。
根据本申请实施例的另一个方面,提供了一种多系统播放音频的方法,包括:检测针对多系统中的辅助端的应用程序的操作指令;在检测到操作指令的情况下,向中控端发送用于申请音频焦点的请求信息,接收中控端返回的响应结果;在响应结果指示成功获取音频焦点的情况下,确定播放目标时段待播放的音频数据,并向中控端发送指令,其中,指令用于指示中控端停止播放音频。
根据本申请实施例的另一方面,还提供了一种多系统播放音频的装置,包括:检测模块,用于检测针对多系统中的中控端的应用程序的操作指令;发送模块,用于在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令,其中,指令用于指示辅助端停止当前时刻正在播放的音频,其中,在音频焦点申请成功后,控制音频硬件设备播放中控端的应用程序对应的多媒体数据,中控端与辅助端上的应用程序共用一套音频硬件设备播放音频数据;确定模块,用于在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,其中,第一预设栈的封装有第一类型请求对应的任务与第二类型请求对应的任务,第一类型请求对应的任务封装在第一预设栈的栈底,第二类型请求对应的任务封装在第一预设栈的栈顶,栈底的处理优先级小于栈顶的处理优先级。
根据本申请实施例的另一方面,还提供了一种非易失性存储介质,包括:存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行任意一项多系统播放音频的方法。
根据本申请实施例的另一方面,还提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现任意一项多系统播放音频的方法。
在本申请实施例中,采用辅助端申请播放音视频时,获取中控端的仲裁结果,根据仲裁结果确定是否允许播放音视频的方式,通过检测针对多系统中的中控端的应用程序的操作指令;在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令;在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,达到了在多操作系统中,有序播放音视频以及通话等内容的目的,从而实现了多操作系统之间播放音视频或通话时不再相互影响的技术效果,进而解决了由于多操作系统造成的同时播放音视频时,声音互相干扰的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种多系统播放音频方法的流程示意图;
图2是根据本申请实施例的一种中控端申请播放时的交互流程图;
图3是根据本申请实施例的另一种多系统播放音频方法的流程示意图;
图4是根据本申请实施例的一种辅助端申请播放时的交互流程图;
图5是根据本申请实施例的一种多系统播放音频的架构图;
图6是根据本申请实施例的一种多系统播放音频的装置结构示意图;
图7是根据本申请实施例的一种示例电子设备700的示意性框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例,提供了一种多系统播放音频的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的一种多系统播放音频的方法,如图1所示,该方法包括如下步骤:
步骤S102,检测针对多系统中的中控端的应用程序的操作指令;
需要说明的是,本申请中的技术方案可在车载系统中应用。
步骤S104,在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令,其中,指令用于指示辅助端停止当前时刻正在播放的音频,其中,在音频焦点申请成功后,控制音频硬件设备播放中控端的应用程序对应的多媒体数据,中控端与辅助端上的应用程序共用一套音频硬件设备播放音频数据;
可以理解的是,应用于车载系统时,该辅助段即为乘客端。
步骤S106,在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,其中,第一预设栈的封装有第一类型请求对应的任务与第二类型请求对应的任务,第一类型请求对应的任务封装在第一预设栈的栈底,第二类型请求对应的任务封装在第一预设栈的栈顶,栈底的处理优先级小于栈顶的处理优先级。
需要说明的是,应用于车载系统时,中控端可以作为支持全功能的中控屏,其一般可搭载的是多媒体、导航、TTS语音合成技术以及语音等音视频软件;辅助端可作为第二娱乐屏,其主要可搭载多媒体类的音视频软件,例如,音乐播放器,视频播放软件等。
需要说明的是,应用于车载系统时,第一类型请求可以为多媒体以及导航类的请求,第二类型请求为语音合成技术TTS以及语音通话等高优先级音频。
在本申请实施例中,采用辅助端申请播放音视频时,获取中控端的仲裁结果,根据仲裁结果确定是否允许播放音视频的方式,通过检测针对多系统中的中控端的应用程序的操作指令;在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令;在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,达到了在多操作系统中,有序播放音视频以及通话等内容的目的,从而实现了多操作系统之间播放音视频或通话时不再相互影响的技术效果,进而解决了由于多操作系统造成的同时播放音视频时,声音互相干扰的技术问题。
本申请一示例性实施例中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,包括:在第一预设栈不为空的情况下,确定第一预设栈的栈顶元素的优先级;比较栈顶元素的优先级和第一类型请求的优先级,根据比较结果确定是否允许辅助端抢占音频焦点。
本申请一些可选的实施例中,根据比较结果确定是否允许辅助端抢占音频焦点,包括:在栈顶元素的优先级大于第一类型请求的优先级的情况下,生成第一标志,其中,第一标志用于指示辅助端申请播放音频时无法抢占音频焦点;在栈顶元素的优先级等于第一类型请求的优先级的情况下,生成第二标志,第二标志用于指示辅助端申请播放音频时可抢占音频焦点。
需要说明的是,在本申请一些实施例中,第一标志可以用CanPlay表示,其值为true,第二标志可以用CanPlay表示,其值为false。
作为一种可选的实施方式,在生成第二标志之后,方法还包括:将第二标志发送至辅助端。
作为一种可选的实施方式,方法还包括:在第一预设栈为空栈的情况下,确定允许辅助端抢占音频焦点。
本申请一些可选的实施例中,向辅助端发送指令后,方法还包括:根据指令对应的第三标志生成对辅助端的控制策略,其中,控制策略用于指示辅助端对应的第二预设栈的栈顶元素丢失音频焦点,并清空第二预设栈中的元素。
需要说明的是,在本申请一些实施例中,第三标志可以用needStop表示,其值为true。
作为一种可选的实施方式,方法还包括:在检测到第二预设栈中待清空的元素对应的应用程序存在降音动作的情况下,取消降音动作。
本申请一示例性实施例中,中控端与辅助端通过套接字Socket的方式进行通信。
需要说明的是,在中控端的音频焦点状态发生改变时,都需要将needStop和CanPlay的标志通过Socket的通信方式同步到辅助端;在辅助端申请音频焦点状态结果确定后,都需要将needStop通过Socket通信方式同步到中控端,且辅助端停止播放释放焦点时,无需发送到中控端。
为了便于本领域技术人员更好的理解本申请的技术方案,现结合一具体实施例进行说明。
图2是根据本申请实施例的一种中控端申请播放时的交互流程图,如图2所示,该流程主要包括如下步骤:
(1)当用户在中控端操作应用程序进行音视频功能时,应用程序调用requestAudioFocus接口,向应用框架Framework层申请音频焦点;
(2)将音频焦点的请求信息封装到MixRequest(上述第一类型请求)和SingleRequest(上述第二类型请求)中,其中,将多媒体类请求和导航请求归纳为MixRequest,TTS和语音等高优先级音频归纳为SingleRequest;
需要说明的是,以栈的形式来维护着MixRequest和SingleRequest元素,MixRequest位于栈的栈底。在MixRequest内部存在着一个媒体类小栈MediaFocusStack,维护所有Media音频的焦点请求信息。
(3)检测到中控端准备播放音频的请求信号后,设定needStop的标志,该标志通过Socket发送至辅助端,其中,needStop=true(即第三标志),用于指示辅助端停止当前的多媒体播放;
(4)判断中控端的栈中的元素是否为空,在栈不为空的情况下,确定栈顶元素与多媒体类请求的优先级,根据优先级确定是否允许辅助端抢占所示音频焦点;
需要说明的是,在栈为空的情况下,辅助端可以播放音视频,设定CanPlay的标志为true(即第一标志)。
(5)判断栈顶元素的优先级是否大于多媒体类请求的优先级;
在栈顶元素的优先级大于多媒体类请求的优先级的情况下,设定CanPlay的标志为false(即第二标志);
可以理解的是,此时中控端正在播放高优先级的音频,因此辅助端申请播放音频时,仲裁结果为不允许播放。
在栈顶元素的优先级等于多媒体类请求的优先级的情况下,设定CanPlay的标志为true。
可以理解的是,此时中控端也正在播放多媒体类的音频,则辅助端可以抢占中控端的音频焦点。
(6)辅助端获取到needStop和CanPlay的标志,根据needStop的标志确定是否丢失音频焦点以及清空栈中元素,其中,若辅助端待清空的元素对应的应用程序存在降音动作,则取消降音动作。
图3是根据本申请实施例的另一种多系统播放音频的方法,如图3所示,该方法包括如下步骤:
步骤S302,检测针对多系统中的辅助端的应用程序的操作指令;
步骤S304,在检测到操作指令的情况下,向中控端发送用于申请音频焦点的请求信息,接收中控端返回的响应结果;
步骤S306,在响应结果指示成功获取音频焦点的情况下,确定播放目标时段待播放的音频数据,并向中控端发送指令,其中,指令用于指示中控端停止播放音频。
为了便于本领域技术人员更好的理解本申请的技术方案,现结合一具体实施例进行说明。
图4是根据本申请实施例的一种辅助端申请播放时的交互流程图,如图4所示,该流程主要包括如下步骤:
(1)当用户在辅助端操作应用程序进行音视频功能时,应用程序调用requestAudioFocus接口,向Framework层申请音频焦点;
(2)确定中控端发送的CanPlay的标志是否为true,在CanPlay的标志为true的情况下,仲裁结果为允许辅助端播放音视频;在CanPlay的标志为false的情况下,仲裁结果为不允许辅助端播放音视频;
(3)检测到辅助端准备播放音视频的请求信号后,设定needStop的标志,将该标志发送到中控端,其中,该标志用于指示中控端停止当前的多媒体播放;
(4)中控端获取到needStop的标志,根据needStop的标志确定是否丢失音频焦点以及清空栈中元素,其中,若中控端待清空的元素对应的应用程序存在降音动作,则取消降音动作。
容易注意到的是,在中控端播放高优先级音频时,且辅助端申请播放音频的情况下,确定仲裁结果为:辅助端申请播放音频失败;在中控端播放多媒体音频时,且辅助端申请播放多媒体音频的情况下,确定仲裁结果为:辅助端申请播放音频成功,抢占中控端的音频焦点;在辅助端播放多媒体音频时,且中控端申请播放音频的情况下,确定仲裁结果为:中控端申请播放音频成功,抢占辅助端的音频焦点,其中,中控端的音频包括多媒体音频以及高优先级音频。
图5是根据本申请实施例的一种多系统播放音频的架构图,如图5所示,该架构包括:
当中控端播放多媒体音频或高优先级音频时,确定中控端的定制音频焦点策略,中控端根据定制音频焦点策略播放音频;
当辅助端申请播放音频时,中控端进行仲裁;
在仲裁结果允许辅助端播放的情况下,确定辅助端的原生焦点策略,辅助端根据原生焦点策略播放音频,其中,中控端的Audio Server音频访问接口与辅助端的AudioServer音频访问接口以套接字Socket的方式进行通信,将所要播放的音频信号通过数字音频处理器DSP进行处理,最终由扬声器Speaker播放音频。
图6是根据本申请实施例的一种多系统播放音频的装置结构示意图,如图6所示,该装置包括:
检测模块60,用于检测针对多系统中的中控端的应用程序的操作指令;
发送模块62,用于在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令,其中,指令用于指示辅助端停止当前时刻正在播放的音频,其中,在音频焦点申请成功后,控制音频硬件设备播放中控端的应用程序对应的多媒体数据,中控端与辅助端上的应用程序共用一套音频硬件设备播放音频数据;
确定模块64,用于在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,其中,第一预设栈的封装有第一类型请求对应的任务与第二类型请求对应的任务,第一类型请求对应的任务封装在第一预设栈的栈底,第二类型请求对应的任务封装在第一预设栈的栈顶,栈底的处理优先级小于栈顶的处理优先级。
该装置中,检测模块60,用于检测针对多系统中的中控端的应用程序的操作指令;发送模块62,用于在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令,其中,指令用于指示辅助端停止当前时刻正在播放的音频,其中,在音频焦点申请成功后,控制音频硬件设备播放中控端的应用程序对应的多媒体数据,中控端与辅助端上的应用程序共用一套音频硬件设备播放音频数据;确定模块64,用于在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点,其中,第一预设栈的封装有第一类型请求对应的任务与第二类型请求对应的任务,第一类型请求对应的任务封装在第一预设栈的栈底,第二类型请求对应的任务封装在第一预设栈的栈顶,栈底的处理优先级小于栈顶的处理优先级,达到了在多操作系统中,有序播放音视频以及通话等内容的目的,从而实现了多操作系统之间播放音视频或通话时不再相互影响的技术效果,进而解决了由于多操作系统造成的同时播放音视频时,声音互相干扰的技术问题。
根据本申请实施例的另一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行任意一项多系统播放音频的方法。
具体地,上述存储介质用于存储以下功能的程序指令,实现以下功能:
检测针对多系统中的中控端的应用程序的操作指令;在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令;在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点。
可选地,在本实施例中,上述存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。上述存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
在本申请一示例性实施例中,还提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述任一项多系统播放音频的方法。
可选地,该计算机程序在被处理器执行时可实现如下步骤:
检测针对多系统中的中控端的应用程序的操作指令;在检测到操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令;在音频焦点申请成功后,在中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许辅助端抢占所示音频焦点。
根据本申请的实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述任一项多系统播放音频的方法。
可选地,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入设备输出设备和上述处理器连接。
图7是根据本申请实施例的一种示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如多系统播放音频的方法。例如,在一些实施例中,多系统播放音频的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的多系统播放音频的方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行多系统播放音频的方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (12)
1.一种多系统播放音频的方法,其特征在于,包括:
检测针对多系统中的中控端的应用程序的操作指令;
在检测到所述操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令,其中,所述指令用于指示所述辅助端停止当前时刻正在播放的音频,其中,在音频焦点申请成功后,控制所述音频硬件设备播放所述中控端的应用程序对应的多媒体数据,所述中控端与所述辅助端上的应用程序共用一套音频硬件设备播放音频数据;
在音频焦点申请成功后,在所述中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许所述辅助端抢占所示音频焦点,其中,所述第一预设栈的封装有第一类型请求对应的任务与第二类型请求对应的任务,所述第一类型请求对应的任务封装在所述第一预设栈的栈底,所述第二类型请求对应的任务封装在所述第一预设栈的栈顶,所述栈底的处理优先级小于所述栈顶的处理优先级。
2.根据权利要求1所述的方法,其特征在于,根据第一预设栈与第一类型请求的优先级确定是否允许所述辅助端抢占所示音频焦点,包括:
在所述第一预设栈不为空的情况下,确定所述第一预设栈的栈顶元素的优先级;
比较所述栈顶元素的优先级和第一类型请求的优先级,根据所述比较结果确定是否允许所述辅助端抢占所述音频焦点。
3.根据权利要求2所述的方法,其特征在于,根据所述比较结果确定是否允许所述辅助端抢占音频焦点,包括:
在所述栈顶元素的优先级大于所述第一类型请求的优先级的情况下,生成第一标志,其中,所述第一标志用于指示所述辅助端申请播放音频时无法抢占所述音频焦点;
在所述栈顶元素的优先级等于所述第一类型请求的优先级的情况下,生成第二标志,所述第二标志用于指示所述辅助端申请播放音频时可抢占所述音频焦点。
4.根据权利要求3所述的方法,其特征在于,在生成第二标志之后,所述方法还包括:
将所述第二标志发送至所述辅助端。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述第一预设栈为空栈的情况下,确定允许所述辅助端抢占所述音频焦点。
6.根据权利要求1所述的方法,其特征在于,向所述辅助端发送指令后,所述方法还包括:
根据所述指令对应的第三标志生成对所述辅助端的控制策略,其中,所述控制策略用于指示所述辅助端对应的第二预设栈的栈顶元素丢失所述音频焦点,并清空所述第二预设栈中的元素。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在检测到所述第二预设栈中待清空的元素对应的应用程序存在降音动作的情况下,取消所述降音动作。
8.根据权利要求1至权利要求7中任意一项所述的方法,其特征在于,所述中控端与所述辅助端通过套接字Socket的方式进行通信。
9.一种多系统播放音频的方法,其特征在于,包括:
检测针对多系统中的辅助端的应用程序的操作指令;
在检测到所述操作指令的情况下,向中控端发送用于申请音频焦点的请求信息,接收所述中控端返回的响应结果;
在所述响应结果指示成功获取所述音频焦点的情况下,确定播放目标时段待播放的音频数据,并向所述中控端发送指令,其中,所述指令用于指示所述中控端停止播放音频。
10.一种多系统播放音频的装置,其特征在于,包括:
检测模块,用于检测针对多系统中的中控端的应用程序的操作指令;
发送模块,用于在检测到所述操作指令的情况下申请音频焦点,并向辅助端的应用程序发送指令,其中,所述指令用于指示所述辅助端停止当前时刻正在播放的音频,其中,在音频焦点申请成功后,控制所述音频硬件设备播放所述中控端的应用程序对应的多媒体数据,所述中控端与所述辅助端上的应用程序共用一套音频硬件设备播放音频数据;
确定模块,用于在音频焦点申请成功后,在所述中控端的应用程序播放音频数据的过程中,根据第一预设栈与第一类型请求的优先级确定是否允许所述辅助端抢占所示音频焦点,其中,所述第一预设栈的封装有第一类型请求对应的任务与第二类型请求对应的任务,所述第一类型请求对应的任务封装在所述第一预设栈的栈底,所述第二类型请求对应的任务封装在所述第一预设栈的栈顶,所述栈底的处理优先级小于所述栈顶的处理优先级。
11.一种非易失性存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至9中任意一项所述多系统播放音频的方法。
12.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至9中任一项所述多系统播放音频的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310187655.3A CN116225362A (zh) | 2023-02-27 | 2023-02-27 | 多系统播放音频的方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310187655.3A CN116225362A (zh) | 2023-02-27 | 2023-02-27 | 多系统播放音频的方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116225362A true CN116225362A (zh) | 2023-06-06 |
Family
ID=86580224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310187655.3A Pending CN116225362A (zh) | 2023-02-27 | 2023-02-27 | 多系统播放音频的方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116225362A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116974508A (zh) * | 2023-06-30 | 2023-10-31 | 荣耀终端有限公司 | 音频焦点控制方法及装置 |
CN117032620A (zh) * | 2023-06-30 | 2023-11-10 | 荣耀终端有限公司 | 音频焦点控制方法及装置 |
-
2023
- 2023-02-27 CN CN202310187655.3A patent/CN116225362A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116974508A (zh) * | 2023-06-30 | 2023-10-31 | 荣耀终端有限公司 | 音频焦点控制方法及装置 |
CN117032620A (zh) * | 2023-06-30 | 2023-11-10 | 荣耀终端有限公司 | 音频焦点控制方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7681201B2 (en) | Method and system for integrating and controlling components and subsystems | |
US7880602B2 (en) | Image display control apparatus | |
CN110673964A (zh) | 一种车载系统的音频播放控制方法和装置 | |
US10479201B2 (en) | In-vehicle display system and control method for in-vehicle display system | |
CN114070880B (zh) | 车辆自定义模式实现方法、装置、电子设备及存储介质 | |
CN116225362A (zh) | 多系统播放音频的方法、装置、存储介质及电子设备 | |
CN110401877B (zh) | 视频播放的控制方法、装置、电子设备、及存储介质 | |
CN112203130B (zh) | 一种车载信息娱乐终端及其多屏交互显示方法、汽车 | |
CN113050910B (zh) | 语音交互方法、装置、设备及存储介质 | |
CN110781014B (zh) | 基于Android设备的录音数据的多进程分发方法与系统 | |
CN115794725B (zh) | 获得播放决策的方法、决策系统、相关设备及存储介质 | |
CN110147283B (zh) | 一种显示内容切换显示方法、装置、设备及介质 | |
CN115268821B (zh) | 音频播放方法及装置、设备和介质 | |
CN110400582A (zh) | 一种音频管理方法、音频管理系统和车载系统 | |
CN115079993A (zh) | 一种跨系统的音频播放控制方法、装置、车辆及存储介质 | |
CN114153542A (zh) | 投屏方法、装置、电子设备及计算机可读存储介质 | |
US20120320082A1 (en) | Information display system, information display device, and information providing device | |
CN114579222A (zh) | 屏幕控制方法、行车记录仪及存储介质 | |
CN116931866B (zh) | 车载多屏显示控制方法及车载装置 | |
US20090131176A1 (en) | Game processing device | |
US8462165B1 (en) | System, method, and computer program product for voice control of a graphics hardware processor | |
CN113778371B (zh) | 针对车机系统实现多模块声音管理控制的系统、方法、装置、处理器及其计算机存储介质 | |
CN114339446B (zh) | 音视频编辑方法、装置、设备、存储介质及程序产品 | |
CN116540901A (zh) | 电子设备的页面显示方法、电子设备和可读存储介质 | |
US10950203B2 (en) | Method and display system for displaying sensor data from a sensor device on a display device, and motor vehicle having a display system |
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 |