Android automotive 车载开发笔记
文章平均质量分 91
车载开发资料学习笔记,资料整理不易,且看且珍惜。
丨一念丨
心中有丘壑,眉目作山河。
展开
-
Android automotive车载开发(5)-----系统架构
硬件抽象层主要是提供了一个native服务[email protected],负责处理车辆相关的业务。系统框架层提供了多个模块,来对Android Automotive 进行支持,最重要的有一个服务CarService (com.android.car)。CarService中CarService只作为服务的入口,具体的业务逻辑都在内部的子服务中处理,CarService的子服务如下。它由一个服务启动,而里面又控制着数十个子模块服务。原创 2022-11-03 18:08:38 · 1460 阅读 · 3 评论 -
Android automotive车载开发(4)-----Volume management音量管理
`AAOS `在`CarAudioService` 内拥有自己的音量管理。该操作系统使用固定音量,并且音量应该通过硬件放大器(而不是软件)在` HAL `之下应用。此外,它还会将输出设备划分到不同的音量组,以便对与相应音量组关联的所有设备应用相同的增益。原创 2022-10-31 11:07:46 · 1640 阅读 · 0 评论 -
Android automotive车载开发(3)-----Audio routing音频路由
虽然应用程序的基于 UID 的路由允许对每个应用程序的音频路由进行精细控制,但它还要求在应用程序实际请求音频焦点和播放音频之前定义每个应用程序的音频路由。有了这个信号,所有音频区域的音频焦点管理和路由都会自动配置。这意味着如果定义了乘员区域到汽车音频区域的映射,则基于 UID 的路由将被禁用,并且尝试调用。在新的配置文件中,定义了一个区域列表。每个区域都有一个或多个卷组及其关联的设备,并且每个设备都有应该在该区域内路由的上下文。通常,占用区域和音频区域之间的任何映射都可以配置,但映射必须是一对一的。原创 2022-10-28 10:55:06 · 2120 阅读 · 0 评论 -
Android automotive车载开发(2)-----Audio Focus音频焦点
因此,在传入的焦点请求被授予焦点的同时,现有的焦点持有者会失去焦点。在这个例子中,如果拨号器正为某个通话持有音频焦点,而另一个应用要请求焦点来播放音乐,则音乐应用发出的请求会收到 AUDIOFOCUS_REQUEST_FAILED 响应。因此,对一个音频区的请求不会考虑其他音频区中的焦点持有者,也不会导致其他音频区中的焦点持有者失去焦点。因此,无论 HAL 是否被授予音频焦点,都应播放紧急声音和对保障安全至关重要的声音,即使 HAL 失去音频焦点,也应继续在适当的情况下播放这些声音。原创 2022-10-27 11:22:18 · 1232 阅读 · 0 评论 -
Android automotive车载开发(1)-----Automotive audio
如果外部声音流是应与 Android 正在生成的声音环境交互的媒体源(例如,当外部调谐器处于开启状态时,停止 MP3 播放),则那些外部声音流应由 Android 应用表示。系统实现可以针对所有 Android 声音使用一个总线端口,在这种情况下,Android 会将所有声音混合在一起,并将混音结果作为一个声音流进行传输。系统实现者必须提供一个混音器,用于接受来自 Android 的一个或多个声音输入流,然后以合适的方式将这些声音流与车辆所需的外部声源组合起来。每个音频区的焦点也是单独维护的。原创 2022-10-27 11:03:40 · 1983 阅读 · 0 评论