财位放了柜机如何化解:博客聚合 - MSDK格式转化篇(五)从IMC2到NV12 : sokerspace.com
来源:百度文库 编辑:九乡新闻网 时间:2024/04/27 15:15:36
MSDK格式转化篇(五)从IMC2到NV12
作者: Yanqing Wang (Intel) |英特尔® 软件网络博客 - 中文
日期: 2010/8/2 17:05
点击: 7
IMC2是另外一种视频的流行格式,它相识于IMC1。本篇博客主要讨论如何它的格式如何,以及如何转成为NV12格式。
IMC2的格式如图1所示。
图1 IMC2格式
参考图2所示:
图2 IMC1格式
IMC1和IMC2的主要不同点是:
- IMC1的UV是按照Y的Stride对齐的,但是IMC2的UV是按照Y的Stride/2对齐的。
- IMC2的格式更加的紧密,对于空间利用率比较高。
NV12格式如图3所示:
图3 NV12格式
对于IMC2转化为NV12,方法也比较简单,如下:
1. 拷贝Y数据
memcpy( NV12->Y, IMC1->Y, Height * Stride );
2. 拷贝UV数据
while ( 有数据 )
{
NV12->U[ index ] = IMC2->U[ index ];
NV12->V[ index ] = IMC2->V[ index ];
++ NV12->U;
++ NV12->V;
++ IMC2->U;
++ IMC2->V;
++ index
}
【小结】
- IMC2和YV12比较接近,这个有利于将IMC1、IMC2和YV12做成统一的转化函数。
- 相比与NV12格式,NV12更加流行,转化为NV12是非常有价值的。
<< MeeGo Bug Tracking系统简介我在google code上建了一个项目。 >>
URL:http://www.sokerspace.com/modules/planet/view.article.php/836
Trackback:http://www.sokerspace.com/modules/planet/trackback.php/836