在多系统中对音频进行控制的方法及装置的制造方法_3

文档序号:9452821阅读:来源:国知局
模块)卡;当“系统X”处于前台状态,“系统Y”处于后台状态时,处于前台的操作系统“系统X”使用声卡设备与终端设备B进行通话,即通过控制声卡设备输出16k码率的通话音频,终端设备A接收到来自终端设备C的通话呼叫建立请求,首先判断该通话呼叫建立请求为发送至“系统Y”的请求,则终端设备A将该通话呼叫建立请求分发至“系统Y”,处于后台的作系统“系统Y”接收到该通话呼叫建立请求,基于“系统Y”中预先配置的与通话呼叫建立请求相对应的音频控制处理方式,如通过扬声器及听筒同时硬件设备输出铃音为“铃铃铃”的呼叫通知铃音,来生成8k码率的第二音频,以用于提示来电,终端设备A通过调用系统内核的混音器将16k码率的音乐转换处理成8k码率的通话音频,接着将8k码率的呼叫通知铃音和8k码率的通话音频混合叠加成8k码率的音频,即混音后通话音频及呼叫通知铃音混合的第三音频数据,“系统X”控制声卡设备通过扬声器及听筒播放第三音频数据,用户可在前台“系统X”的通话过程中听到用于提示后台“系统Y”接收到通话呼叫建立请求的呼叫通知铃音。当用户通过终端设备的人机交互界面,如滑屏、点击切换按键等,将操作系统“系统X”切换至后台,操作系统“系统Y”切换为前台,同时,响应于该通话呼叫建立请求发送通话建立应答消息,终端设备A与终端设备C建立通话连接后,此时处于前台的操作系统“系统Y”可通过控制声卡设备将接收到的来自终端设备C的通话音频数据通过听筒输出。
[0066]图3为本发明另一优选实施例的在多系统中对音频进行控制的装置的结构框架示意图。
[0067]当处于前台的第一操作系统通过控制声卡设备输出第一音频数据时,请求接收模块310通过处于后台的第二操作系统接收到音频数据输出请求;音频生成模块320根据音频数据输出请求生成第二音频;混音模块330将第一音频数据及第二音频数据进行混合叠加处理,以生成混音后的第三音频数据;第一音频控制模块340控制处于前台的第一操作系统通过控制声卡设备输出第三音频数据。
[0068]本发明的技术方案中,提出了在多系统中对音频进行控制的方案,可将处于前台的第一操作系统的第一音频数据及处于后台的第二操作系统的第二音频数据进行混合叠加处理,以生成混音后的第三音频数据,随后处于前台的第一操作系统通过控制声卡设备输出第三音频数据,从而填补了现有技术没有针对多操作系统中多路音频数据的控制管理解决方案的空白。本发明可确保在终端设备的各个操作系统同时运行且共用一套声卡设备的情况下,各系统能够独立实现音频控制处理逻辑,通过混音处理对多操作系统中的多路音频数据进行控制管理;进一步地,通过多操作系统间的无缝切换可以实现操作系统对声卡设备的快速切换控制,以保证在系统切换过程中音频的无卡顿输出。
[0069]在本发明的实施例中,终端设备至少包括第一操作系统及第二操作系统,第一操作系统及第二操作系统同时保持运行状态,处于前台的操作系统通过声卡设备提供的接口对声卡设备进行控制。
[0070]当处于前台的第一操作系统通过控制声卡设备输出第一音频数据时,请求接收模块310通过处于后台的第二操作系统接收到音频数据输出请求。
[0071]例如,当处于前台的第一操作系统通过控制声卡设备输出音乐时,处于后台的第二操作系统接收到用于提示即时通信应用接收到新消息的提示音的音频数据输出请求。
[0072]音频生成模块320根据音频数据输出请求生成第二音频;
[0073]其中,根据音频数据输出请求生成第二音频,具体包括:根据音频数据输出请求,基于第二操作系统中预先配置的音频控制处理方式生成第二音频;
[0074]其中,预先配置的音频控制处理方式包括但不限于:
[0075]音频输出方式;音频输出设备;音频类型;音量增益;音效控制。
[0076]音频输出方式包括:硬件设备输出、短程无线设备输出以及硬件设备和短程无线设备同时输出三种方式中的一种或多种;
[0077]输出设备包括:扬声器、听筒以及有线耳机和/或无线耳机,如蓝牙耳机;
[0078]音频类型包括:铃音、音乐以及提示音中的一种或多种;
[0079]音效包括:数字音效、环境音效等。
[0080]例如,接收到用于提示即时通信应用接收到新消息的提示音的音频数据输出请求,根据该提示音的音频数据输出请求,查询确定与该提示音相对应的预先配置的提示音为“嘟嘟嘟”三声响铃、音频输出方式及音频输出设备为通过扬声器及听筒同时硬件设备输出,随后根据上述配置信息生成第二音频。
[0081]混音模块330将第一音频数据及第二音频数据进行混合叠加处理,以生成混音后的第三音频数据;
[0082]第一音频控制模块340控制处于前台的第一操作系统通过控制声卡设备输出第三音频数据。
[0083]例如,终端设备包括“容器X”及“容器Y”,各个容器分别包括相应的操作系统“系统X”及“系统Y” ;当处于前台的操作系统“系统X”通过控制声卡设备输出8k码率的音乐时,处于后台的作系统“系统Y”接收到16k码率的铃音的音频数据输出请求,根据该音频数据输出请求,基于操作系统“系统Y”中预先配置的通过扬声器及听筒同时硬件设备输出、铃音为“嘟嘟嘟”三声响铃的音频控制处理方式生成第二音频,随后终端设备通过调用Linux系统内核的混音器将16k码率的铃音转换处理为8k码率的铃音,接着将8k码率的铃音和8k码率的音乐混合叠加成8k码率的音频,即混音后音乐及响铃混合后的第三音频数据,操作系统“系统X”通过控制声卡设备通过扬声器及听筒播放第三音频数据。
[0084]在声卡设备中,混音器执行将多个音频文件、线路输入音频信号混音后,合成单独的音频文件的功能。
[0085]优选地,该装置还包括系统切换模块和第二音频控制模块;当接收到用户输入的系统切换命令后,系统切换模块将第一操作系统切换至后台,且将第二操作系统切换为前台;第二音频控制模块控制处于前台的第二操作系统通过控制声卡设备控制音频输出。
[0086]具体地,第一操作系统和第二操作系统共用同Linux系统内核,在Linux系统内核中建立一个控制前后台切换的线程,且Linux系统中记录包括第一操作系统的容器和包括第二操作系统的容器的前后台状态信息;当接收到用户输入的系统切换命令后,首先从包括各容器的前后台状态信息的数据记录中读取到包括第一操作系统的容器处于前台状态,包括第二操作系统的容器处于后台状态;随后,调用控制前后台切换的线程提供的接口将包括第一操作系统的容器切换为后台状态,将包括第二操作系统的容器切换为前台状态,同时修改更新包括各容器的前后台状态信息的数据记录;随后,释放切换后处于后台的第一操作系统对声卡设备提供的控制接口的控制,将声卡设备提供的控制接口提供至切换后处于前台的第二操作系统,第二操作系统通过该控制接口对声卡设备进行控制,以实现音频输出。
[0087]在一个优选实例中,如图4所示,音频数据输出请求包括处于后台的第二操作系统接收到的通话呼叫建立请求,其中,根据音频数据输出请求生成第二音频数据,具体包括:响应于接收到的通话呼叫建立请求,基于第二操作系统中预先配置的音频控制处理方式,生成用以提示通话建立的第二音频。
[0088]当处于前台的第一操作系统通过控制声卡设备输出第一音频数据时,请求接收模块410通过处于后台的第二操作系统接收到通话呼叫建立请求;音频生成模块320响应于接收到的通话呼叫建立请求,基于第二操作系统中预先配置的音频控制处理方式,生成用以提示通话建立的第二音频;混音模块330将第一音频数据及第二音频数据进行混合叠加处理,以生成混音后的第三音频数据;当接收到用户输入的系统切换命令后,系统切换模块440将第一操作系统切换至后台,且将第二操作系统切换为前台;第二音频控制模块450控制处于前台的第二操作系统通过控制声卡设备控制音频输出。
[0089]例如,终端设备A包括“容器X”、“容器Y”,各个容器分别包括相应的操作系统“系统X”、“系统Y”,每个操作系统对应其各自的S頂(Subscriber Identity Module,客户识别模
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1