一种多系统的音频播放控制方法、系统和车载系统
技术领域
本发明涉音频控制技术领域,具体涉及一种多系统的音频播放控制方法、系统和车载系统。
背景技术
目前车载系统中的应用系统通常为基于Linux系统,但是,所述Linux系统应用具有局限性,同时Windows、Android等系统已经广泛应用于用户的生活中,因此为了迎合用户的使用需求,使得用户对车载系统的操作更加方便、舒适,因此急需研发一种基于Linux系统的多系统车载系统,其中,用户在使用所述车载系统时,使用频率最高的莫过于音频系统,因此如何实现多系统控制的Audio播放,成为本领域技术人员亟待解决的技术问题之一。
发明内容
有鉴于此,本发明实施例提供一种多系统的音频播放控制方法、系统和车载系统,以实现多系统控制的Audio播放。
为实现上述目的,本发明实施例提供如下技术方案:
一种多系统的音频播放控制方法,应用于车载系统中,所述车载系统包括Linux系统和多个预设系统,方法包括:
当所述多个预设系统中第一预设系统的服务器获取到音乐播放应用发送音乐播放指令时,向Linux系统中的服务器发送音乐播放请求;
获取所述Linux系统中的服务器依据所述音乐播放请求生成的反馈指令;
判断所述反馈指令的指令类型,当所述反馈指令为禁止指令时,通过抢占音频焦点的方式停止音乐播放,当所述反馈指令为允许指令时,所述第一预设系统中的音乐播放应用播放音乐。
优选的,上述多系统的音频播放控制方法中,所述通过抢占音频焦点的方式停止音乐播放,包括:
通过所述第一预设系统中的服务器启动一个假的播放器抢占音乐播放应用的音频焦点,停止音乐播放。
优选的,上述多系统的音频播放控制方法中,还包括:
所述第一预设系统在进行音乐播放时,判断是否获取到Linux系统中的服务器发送的禁止指令时,通过抢占音频焦点的方式停止音乐播放。
优选的,上述多系统的音频播放控制方法中,所述第一预设系统为安卓系统或Windows系统。
一种多系统的音频播放控制系统,应用于车载系统中,包括:
Linux系统和多个预设系统,所述Linux系统和每个所述预设系统内设置有一服务器;
当所述预设系统中的服务器,用于当获取到音乐播放应用发送音乐播放指令时,向Linux系统中的服务器发送音乐播放请求,当获取到所述Linux系统中的服务器依据所述音乐播放请求生成的反馈指令后,判断所述反馈指令的指令类型,当所述反馈指令为禁止指令时,通过抢占音频焦点的方式停止音乐播放,当所述反馈指令为允许指令时,所述预设系统中的音乐播放应用播放音乐;
所述Linux系统中的服务器,用于在获取到所述音乐播放请求后,生成并向所述预设系统中的服务器发送反馈指令。
优选的,上述多系统的音频播放控制系统中,所述预设系统中的服务器,包括:
音频焦点抢占/释放模块,用于当所述反馈指令为禁止指令时,通过所述预设系统中的服务器启动一个假的播放器抢占音乐播放应用的音频焦点,停止音乐播放。
优选的,上述多系统的音频播放控制系统中,当所述车载系统满足预设条件,或获取到用户输入的停止播放指令后,所述Linux系统中的服务器,还用于向当前播放音乐的应用所属的预设系统中的服务器发送禁止指令,通过抢占音频焦点的方式停止音乐播放。
优选的,上述多系统的音频播放控制系统中,所述多个预设系统包括:
安卓系统和/或Windows系统。
一种车载系统,用于有上述任意一项实施例公开的多系统的音频播放控制系统。
基于上述技术方案,本发明实施例提供的多系统的音频播放控制方法,通过当第一预设系统中的应用程序向所述第一预设系统中的服务器发送音乐播放指令后,所述第一预设系统中的服务器向所述Linux系统中的服务器发送音乐播放请求,所述Linux系统中的服务器对该请求进行分析,当当前状态下允许所述应用程序播放音频信息时,向所述第一预设系统中的服务器反馈允许指令,否则反馈禁止指令,所述第一预设系统中的服务器在获取到所述允许指令后,播放音乐,当获取到所述禁止指令后,通过抢占音频焦点的方式停止音乐播放。因此,实现了多系统控制的音频信息的播放。并且,在该过程中不会大量更改车载系统中的Audio系统的逻辑,因此控制方式更加安全高效。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的一种多系统的音频播放控制方法的流程示意图;
图2为本申请实施例公开的一种多系统的音频播放控制系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
虚拟化技术:虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。
采用所述虚拟化技术,用户可以动态启用虚拟服务器(又叫虚拟机),每个服务器实际上可以让操作系统(以及在上面运行的任何应用程序)误以为虚拟机就是实际硬件。运行多个虚拟机还可以充分发挥物理服务器的计算潜能,迅速应对数据中心不断变化的需求。例如hypervisor,它运行在裸硬件上,充当主机操作系统,而由hypervisor管理的虚拟服务器运行客户端操作系统(guest OS)。
Socket:通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。
Audio Focus机制:Android系统在处理音频播放时分了多个“音频流”的,如音乐流、音效流、电话声音流等,使控制音量时可以互不干涉。多数情况下我们播放音乐都是使用STREAM_MUSIC音频流。另外,系统中可能会有多个应用程序会播放音频,所以需要考虑他们之间该如何协调,为了避免同时播放音乐,Android系统使用音频焦点来进行统一管理,即只有获得了音频焦点的应用程序才可以播放音乐。
针对于上述虚拟化技术、Audio Focus机制,本申请公开了一种多系统的音频播放控制方法、系统和车载系统,所述方法应用于车载系统中,所述车载系统包括Linux系统和多个预设系统参见图1,所述方法可以包括:
步骤S101:当所述多个预设系统中第一预设系统的服务器获取到音乐播放应用发送音乐播放指令时,向Linux系统中的服务器发送音乐播放请求;
步骤S102:获取所述Linux系统中的服务器依据所述音乐播放请求生成的禁止指令的反馈指令;
步骤S103:判断所述反馈指令的指令类型,当所述反馈指令为禁止指令时,执行步骤S104,所述反馈指令为允许指令时,执行步骤S105;
步骤S104:通过抢占音频焦点的方式停止音乐播放;
步骤S105:所述第一预设系统中的音乐播放应用播放音乐。
参见本申请上述实施例公开的上述方法可见,当所述第一预设系统中的应用程序向所述第一预设系统中的服务器发送音乐播放指令后,所述第一预设系统中的服务器向所述Linux系统中的服务器发送音乐播放请求,所述Linux系统中的服务器对该请求进行分析,当当前状态下允许所述应用程序播放音频信息时,向所述第一预设系统中的服务器反馈允许指令,否则反馈禁止指令,所述第一预设系统中的服务器在获取到所述允许指令后,通过释放音频焦点的方式播放音乐,当获取到所述禁止指令后,所述第一预设系统中的音乐播放应用播放音乐。因此,实现了多系统控制的音频信息的播放。并且,在该过程中不会大量更改车载系统中的Audio系统的逻辑,因此控制方式更加安全高效。
可以理解的是,本申请上述实施例公开的各个预设系统与所述Linux系统之间的通讯方式可采用socket通信。
其中,上述方法中,所述通过抢占音频焦点的方式停止音乐播放,可以包括:
通过所述第一预设系统中的服务器启动一个假的播放器抢占音乐播放应用的音频焦点,停止音乐播放。
可以理解的是,本申请上述实施例公开的方法中,所述Linux系统中的服务器向所述一预设系统发送的允许或禁止指令,可以是依据所述一预设系统的服务器发送的音乐播放请求生成的,当然也可以是依据其他预设条件主动生成的,因此本申请上述实施例公开的方法中,还可以包括:
当所述第一预设系统在进行音乐播放时,判断是否获取到Linux系统中的服务器发送的禁止指令时,通过抢占音频焦点的方式停止音乐播放。
其中,本申请上述实施例公开的所述多个预设系统,可以为现有技术中常用的操作系统,例如,其可以包括安卓系统和Windows系统等,因此所述第一预设系统为安卓系统或Windows系统。
对应于本申请上述实施例公开的方法,本申请还公开了一种多系统的音频播放控制系统,该系统应用于车载系统中,参见图2,可以包括:
Linux系统10和多个预设系统20,所述Linux系统10和每个所述预设系统20内设置有一服务器,其中,所述Linux系统10中的服务器记为a,所述预设系统20中的服务器记为b;
当所述预设系统20中的服务器b,用于当获取到音乐播放应用发送音乐播放指令时,向Linux系统10中的服务器a发送音乐播放请求,当获取到所述Linux系统10中的服务器a依据所述音乐播放请求生成的反馈指令后,判断所述反馈指令的指令类型,当所述反馈指令为禁止指令时,通过抢占音频焦点的方式停止音乐播放,当所述反馈指令为允许指令时,所述预设系统20中的音乐播放应用播放音乐;
所述Linux系统10中的服务器a,用于在获取到所述音乐播放请求后,生成并向所述预设系统20中的服务器b发送反馈指令。
与上述方法相对应,所述预设系统20中的服务器b,包括:
音频焦点抢占/释放模块21,用于当所述反馈指令为禁止指令时,通过所述预设系统中的服务器启动一个假的播放器抢占音乐播放应用的音频焦点。
与上述方法相对应,当所述车载系统满足预设条件,或获取到用户输入的停止播放指令后,所述Linux系统10中的服务器a,还用于向当前播放音乐的应用所属的预设系统20中的服务器b发送禁止指令,通过抢占音频焦点的方式停止音乐播放。
与上述方法相对应,所述多个预设系统包括:安卓系统和/或Windows系统。
可以理解的是,针对于上述多系统的音频播放控制系统,本申请还公开了一种车载系统,该车载系统可以应用有上述任意一项实施例公开的多系统的音频播放控制系统。当然,针对于所述车载系统,本申请还公开了一种应用上述车载系统的汽车。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。