您的位置:华清远见教育科技集团 >> Android资料 >> 浅析Android多媒体元数据  
 
浅析Android多媒体元数据
分享到:

对于实际的数据而言,为了在单位内存或者单位带宽上传递更多的信息,必须对数据进行压缩,减小冗余,在媒体播放时,又必须将数据还原为元数据。在Android多媒体中,图像元数据包括RGB和YUV,音频元数据包括PCM。

1.RGB

RGB色彩模式是指通过对红(Red)、绿(Green)、蓝(Blue)3个颜色通道的变化,以及它们相互之间的叠加来得到颜色的一种标准。

目前在显示器领域多采用这种颜色方案,在CRT显示器上,是通过电子枪打在屏幕的红、绿、蓝三色发光极来产生色彩的。而在LED显示器上,则是利用了三合一点阵全彩技术,即在一个发光单元里有RGB三色晶片组成全彩像素。

RGB色彩模式在输出时需要3个独立的图像信号同时传输,带宽占用较高。

常见的RGB格式包括:RGB1、RGB4、RGB8、RGB565、RGB555、RGB24、RGB32、ARGB32等。在OpenCORE中,目前支持的RGB格式包括:RGB8、RGB12 、RGB16、RGB24等。RGB模式通常用于原始的视频数据和图像。

需要说明的是ARGB中的A表示的是Alpha通道,通常理解为透明度,这在软件开发者,是个比较重要的概念。

对于UI设计而言,还应注意安全色和透明色的概念,如何能够使自己的设计吸引人,能够将想要表达的信息完整、准确的传递给用户,是个很大的学问。

对于软件开发者而言,对RGB格式也应有基本的了解,特别是在进行多媒体相关的编程时,会时常需要这方面的知识,例如在开发Android照相机应用时,如果希望加入人脸检测的功能,目前Android仅对RGB565格式的图像提供了人脸检测支持。

2.YUV

YUV色彩模式在早期主要是PAL和SECAM模拟彩电制式采用的颜色空间,其中Y代表亮度即灰阶值,U、V代表色度即色调和饱和度,U和V是构成彩色的两个分量。如果只有Y信号分量而没有U、V信号分量,则图像显示为黑白灰度图像,基于YUV色彩空间可以有效解决彩电和黑白电视的相容问题。

在实际的编码中,色调用Cr表示,即反映了RGB输入信号红色部分和RGB信号亮度值之间的差异;饱和度用Cb表示,即反映了RGB输入信号蓝色部分和RGB信号亮度值之间的差异。

常见的YUV格式包括:YUY2、YUYV、YVYU、UYVY、AYUV、Y41P、Y411、Y211、IF09、IYUV、YV12、YVU9、YUV411、YUV420等。在OpenCORE中,目前支持的YUV格式包括:YUV420、YUV422等。YUV模式通常用于视频处理。

在多媒体开发中,尤其是驱动调试中,YUV的概念需要了解。

3. PCM

PCM编码调制数字音频格式是20世纪70年代末发展起来的,在80年代初由飞利浦和索尼公司共同推出。PCM的音频格式也被DVD-A所采用,它支持立体声和5.1环绕声,1999年由DVD讨论会发布和推出。

PCM编码必须经过3个过程,即抽样、量化和编码。PCM编码的主要过程是将话音、图像等模拟信号每隔一定时间进行取样,使其离散化,同时将抽样值按分层单位四舍五入取整量化,同时将抽样值按一组二进制码来表示抽样脉冲的幅值,以实现话音数字化。PCM编码的大的优点是音质好,大的缺点是体积大。我们常见的Audio CD就采用了PCM编码,一张光盘的容量只能容纳72分钟的音乐信息。

PCM的采样精度从14bit发展到16bit、18bit、20bit直到24bit;采样频率从44.1kHz发展到192kHz。到目前为止PCM这种单纯依赖提高采样规格的技术,其可改进的地方已经越来越来小。简单地增加PCM比特率和采样率,不能从底层改善它的根本问题。

在将其他音频格式转换为PCM并输出到硬件音频设备的过程中,采用的PCM采样精度通常是16bit。

另外,常见的WAV格式的音频文件的音频编码即PCM编码。

 更多相关文章

·Android Stagefright多媒体框架
·Android PVPlayer引擎A/V同步技术
·Android OSCL底层移植
·OpenCORE文件解析和组合处理
·Android OpenCORE多媒体引擎