Android 多媒体系统集成的复杂性
。
●ARM Mali-V550视频处理器是下一代低带宽、多核、多重编解码的编码器/解码器,提供IP业界首个适用于HEVC(高效率视频编码)编解码器(包含8位和10位HEVC解码和8位HEVC编码)的单核视频编码/解码解决方案。它可以在单核上集成编码和解码功能,并且能够在多个编解码器上最大程度地重复使用,确保设备交付高级别的硅晶片面积效率。
●ARM Mali-DP550显示处理器是最新一代的ARM显示技术,其增强功能可以将合成、缩放、旋转以及图像后处理等任务从GPU或CPU卸载到专用处理器,省去了写出到内存的必要,进而节省功率。该设备的硅片面积非常小、能耗低,额外支持多达七层的合成,同时还集成了ARM的节能技术。
系统级优化技术
与此同时,有数项系统级优化技术可供系统集成商使用,并且能够为ARM的多媒体处理器组合提供补充。这些技术包括ARM帧缓冲压缩(ARM Frame Buffer Compression, AFBC)、智能消除(Transaction Elimination)、智能合成(Smart Composition)以及动作搜索消除技术(Motion Search Elimination)。
●ARM帧缓冲压缩(AFBC)是一项无损图像压缩协议和格式,可以解决在移动设备的散热限制内,构建愈加复杂的设计时所面临的困难。基本上,它最大限度地减少了SoC内不同IP块之间的数据传输量,并且可以降低在整个系统内传输空间协调图像数据所产生的整体系统级带宽和电力成本。其无损压缩率在业界处于领先地位,典型情况下可高出50%,而算上限制性的最坏情况比率,通常情况下高出80%.AFBC提供低至4x4块级别的细粒度随机访问,该随机访问支持在SoC设计内的其他IP块中应用AFBC.在Android多媒体系统环境中,AFBC通过集成至显示、视频和GPU驱动程序的私有接口在ARM Gralloc驱动程序中启用。
AFBC可用于所有ARM Mali视频处理器、显示处理器、以及Mali-T760及更高版本的图形处理器,并且还作为可授权的单独IP块与SoC中的其他多媒体块一同使用。
●智能消除(TE)是ARM Mali GPU架构一项重要的带宽节约功能,可在SoC系统级别上显著节省能源。在执行TE时,GPU将当前帧缓冲与之前渲染的帧相比较,仅对改动过的部分进行局部更新,因而大大减少了每一帧需要传输到外部内存的数据量。这一比较是在每区块基础上执行的,运用循环冗余检查(CRC)签名来判断区块的改动情况。CRC签名一致的区块完全相同,因此消除它们对生成的图像没有任何影响。无论帧缓冲的精度要求是什么,TE都可以供各应用程序用于GPU支持的所有帧缓冲格式。TE是一项非常有效的技术,即便对于“第一人称射击游戏”而言也是如此。然而,由于在用户界面和休闲游戏等许多其他常用图形应用程序中,两个连续帧之间的帧缓冲大部分保持不变,因此TE带来的帧缓冲带宽节约最高可达99%.和Android多媒体系统集成中的AFBC一样,“智能消除”可通过ARM Gralloc驱动程序启用,并且与GPU驱动程序集成。
●智能合成(SC)是另一项旨在降低带宽的技术,同时可以在帧合成期间读入纹理。该技术可以将标准Android用户界面纹理读取带宽降低50%以上。通过在最后帧合成之前分析帧,SC将确定是否存在要渲染帧的给定部分原因,或者它是否可以重复使用之前渲染和合成的部分。如果可以重复使用这一部分的帧,则无需重新从内存中读取并重新进行合成,因此将节约更多读取带宽和计算量。在Android多媒体系统环境中,“智能合成”将显示为EGL扩展(EGL_KHR_partial_update),供Android内的‘SurfaceFlinger’和‘HWUI’组件使用(见图2)。
●动作搜索消除技术(MSE)既是智能消除的扩展,也是一项可在Mali-DP550显示处理器和Mali-V550视频处理器中实施的新功能。该技术旨在解决一种不断增长的需求:将音频/视频数据从移动电话、平板电脑和其他消费者设备无线传输至电视屏等大屏幕。发送和接收设备均必须支持使用诸如H.264视频编解码器等算法执行视频流压缩。在典型用例下,显示处理器并不会将帧缓冲传输至显示面板,而是将其写入内存,随后视频编解码器将读取该内存以对帧进行编码,并通过Wi-Fi网络发送压缩的郑显示处理器和视频处理器均维护每个区块的CRC签名,当显示处理器写出帧缓冲时,视频处理器可以为签名匹配的区块消除运作搜索。运作估算是视频管线中最消耗资源的部分,因此跳过所选区块的搜索将降低Wi-Fi传输的延迟以及带宽消耗,进而降低SoC的整体功耗。同AFBC和智能消除一样,动作搜索消除技术也通过ARM Gralloc启用,这有利于将CRC数据从Mali-V550视频处理器的Android视频驱动程序传输至Mali-DP550显
- Android开发技巧:软硬件的巧妙整合(01-16)
- 基于Android的VoIP系统的设计与实现(03-28)
- 基于Android系统的影音播放器开发(03-25)
- Android的阿喀琉斯之踵(07-08)
- Android开发之“hello World”的实现 (07-23)
- 基于Android平台的即时通信系统客户端设计(09-24)