Android HDMI CEC控制服务
2016-02-23 17:39
1641 查看
HDMI-CEC标准允许多媒体消费产品之间沟通和交换信息,HDMI-CEC支持许多功能,比如遥控器直通,系统音频控制,一键播放等等。Android通过HdmiControlService这个系统服务来管理所有的HDMI-CEC设备,下面这张图展示了HDMI控制服务的架构:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202010/18/463024c0362db4051fa6e80eeded1090)
下面是Android HDMI-CEC实现的关键部分:
管理类HdmiControlManager向有权限的应用提供API,系统服务比如TV Input Manager服务和音频服务可以直接使用这个类。
这个服务被设计成允许管理多种类型的逻辑设备。
HDMI-CEC通过一个硬件抽象层(HAL)与硬件连接,这样简化了设备之间协议和信号机制差异的处理。设备厂商可以利用HAL的定义来实现HAL层。
Android HDMI-CEC相关的代码位于
下面看一下各个类之间的关系:
下面是Android HDMI-CEC实现的关键部分:
管理类HdmiControlManager向有权限的应用提供API,系统服务比如TV Input Manager服务和音频服务可以直接使用这个类。
这个服务被设计成允许管理多种类型的逻辑设备。
HDMI-CEC通过一个硬件抽象层(HAL)与硬件连接,这样简化了设备之间协议和信号机制差异的处理。设备厂商可以利用HAL的定义来实现HAL层。
Android HDMI-CEC相关的代码位于
frameworks/base/services/core/java/com/android/server/hdmi目录下:
ActiveSourceHandler.java Constants.java DelayedMessageBuffer.java DeviceDiscoveryAction.java DevicePowerStatusAction.java DeviceSelectAction.java HdmiAnnotations.java HdmiCecController.java HdmiCecFeatureAction.java HdmiCecKeycode.java HdmiCecLocalDevice.java HdmiCecLocalDevicePlayback.java HdmiCecLocalDeviceTv.java HdmiCecMessageBuilder.java HdmiCecMessageCache.java HdmiCecMessage.java HdmiCecMessageValidator.java HdmiCecStandbyModeHandler.java HdmiConfig.java HdmiControlService.java HdmiLogger.java HdmiMhlController.java HdmiMhlControllerStub.java HdmiMhlFeatureAction.java HdmiMhlKeycode.java HdmiMhlLocalDevice.java HdmiMhlLocalDeviceStub.java HdmiMhlSubcommand.java HdmiUtils.java HotplugDetectionAction.java MhlConstants.java MhlSendKeyAction.java MhlSendRapAction.java NewDeviceAction.java OneTouchPlayAction.java OneTouchRecordAction.java PowerStatusMonitorAction.java RequestArcAction.java RequestArcInitiationAction.java RequestArcTerminationAction.java RoutingControlAction.java SendKeyAction.java SetArcTransmissionStateAction.java SystemAudioActionFromAvr.java SystemAudioActionFromTv.java SystemAudioAction.java SystemAudioAutoInitiationAction.java SystemAudioStatusAction.java TimerRecordingAction.java UnmodifiableSparseArray.java UnmodifiableSparseIntArray.java VolumeControlAction.java
下面看一下各个类之间的关系:
相关文章推荐
- Android 大牛开发者博客列表
- Android.mk详解
- android高速上手(二)android开发环境搭建及hello world
- android 聊天中 textview的气泡内容过多不换行导致出屏幕的解决办法
- Android NDK 往控制台打印Log
- Android状态栏颜色修改
- android中ImageView、ImageButton、Button之间的区别
- android 依赖包间传递数据
- Android中使EditText失去焦点,edittext禁止弹出键盘
- Android性能优化一些方法
- android 中9patch图片的制作
- 从 Android 静音看正确的查bug的姿势?
- Android开发中的多线程
- Android开发工具下载及Android开源代码整理下载地址
- 使用android nfc api写NFC tag信息
- Android 单字阅读
- Android APK反编译就这么简单 详解(附图)
- Android Fragment 真正的完全解析(上)——张鸿洋老师
- Android dex分包方案 (多dex)
- Android之利用Viewpager实现图片的轮播效果