本发明涉及车机音频播放管理的,更具体地,涉及一种车机音频播放管理方法和系统。
背景技术:
1、近年来车机娱乐系统接入的应用越来越多,音频方面的应用逐渐增加,车机系统对声音的管理就变得越来越重要,安卓的焦点机制应运而生,但是焦点机制是一种合作模式,只是建议应用遵循此项规则,不做强制遵循处理;因此,如果应用在未获取到焦点的情况下,直接播放音频导致系统出现异常混音的场景,进而带来不好的用户体验。
2、现有技术提供了一种基于android的音频焦点实现方法,包括在android系统提供的默认音频焦点策略的基础上注入自定义的外部音频焦点策略;定义音频焦点策略的规则为当音源获得焦点后才能接入;定义音源类型的优先级;定义两个音源类型同时申请焦点时的组合类型;申请音源申请焦点;当申请音源使用完焦点后,释放焦点;根据当前音源的优先级和组合类型自动将释放的焦点恢复至当前音源,并返回当前音源获得焦点通知和申请音源释放焦点成功通知。但该申请在应用不遵循音频焦点机制时,就会造成策略里不期望出现的混音场景,导致出现异常混音的情况。
技术实现思路
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、本发明将安卓上层定义的不同音源与音频使用场景映射为一对多关系,获得第一映射关系表;同时将不同音源与设置的音频通道映射为多对一关系,获得第二映射关系表;匹配所述第一映射关系表和所述第二映射关系表,基于与不同音源的映射关系,将音频使用场景和音频通道对应起来;当车机系统通过任意音频使用场景播放音频数据时,音频数据最终均会根据对应关系路由到对应的音频通道,进而传递至数字信号处理器进行播放;所以将音频使用场景申请/释放焦点的结果与对应的音频通道的打开/关闭状态关联起来,音频使用场景向预设的管理策略申请音频焦点,当确定为所述音频使用场景配置音频焦点,即音频使用场景成功获取到焦点时,对应的音频通道打开,正常处理音频数据后播放;当拒绝为所述音频使用场景配置音频焦点或音频使用场景不遵守焦点机制,试图直接播放音频数据时,即使接收到音频数据下发,对应的音频通道也不会开启,不会传递给数字信号处理器进行播放,达成强制应用遵循焦点机制的目的,避免了车机系统出现异常混音的情况。