处理Camera的时候需要了解的东东
来源:互联网 发布:星达软件 编辑:程序博客网 时间:2024/04/30 22:19
转:http://blog.csdn.net/hhygcy/article/details/3339214
用videoCapture和IAMStreamConfig拿到的支持的格式列表。
发现支持2中图像格式,YV12和NV12。具体是怎么样的内存分布不知道。查了些文档。自己修改了几个图。看出了点端倪
YV12
先看看 http://www.fourcc.org/yuv.php 上比较标准的定义:
YV12
This is the format of choice for many software MPEG codecs. It comprises an NxM Y plane followed by (N/2)x(M/2) V and U planes.
HorizontalVerticalY Sample Period11V Sample Period22U Sample Period22Positive biHeight implies top-down image (top line first)
这种图片其实不是很清楚的, 搞了一个非常明白的
这个wiki上面的图片示例非常明了,第一个图标识了图片真正像素的表示。
可以看到Y1, Y2, Y7,Y8这些物理上相近的4个像素公用了同样的U1和V1,相似的Y3,Y4,Y9,Y10用的就是U2和V2。这里不同的颜色把这个特性刻画的非常形象,一目了然。Impressive!!一直觉得教育,或者说基础的教育一定要以这样的模式来阐述这样才能知其所以然,那种盲目的抄了一本国外的教材或者合并了几本破书的教材不是教人是毁人。说远了,言归正传。之前说的是物理像素的表示,在内存中的分布则是一个数组,顺序就是YUV。所以如果知道所要表现的取悦的大小的话很容易查找到具体的YUV在数组中的位置。NV12
NV12和YV12稍有不同,区别就在UV的位置。再看一张图就很明了了!
在YV12中U和V都是连续排布的,而在NV12中,U和V就交错排布的。看到内存中的排布很清楚,先开始都是Y,之后的都是U1V1U2V2的交错式排布。对于像素的压缩的效果是一样的。但是可能是硬件加速的支持与否。
- 处理Camera的时候需要了解的东东
- 处理Camera的时候需要了解的东东
- phper需要了解的东东
- phper需要了解的东东
- phper需要了解的东东
- 解析BroadcastReceiver之你需要了解的一些东东
- 学习Linux之前你需要了解的东东
- 偶需要学习的东东
- Java需要学习的东东
- 我需要学习的东东
- 钻石的基本知识(买钻戒的时候需要了解)
- java面试的时候需要关注和了解的
- Typo中新了解的一些东东
- 想了解的模型基础东东
- 需要放下的8样东东~
- 返回引用类型需要注意的东东
- SQL语句偶尔需要用的东东
- 电子类需要学习的东东【转】
- 在子类释放时,先释放子类资源,然后调用父类的释放函数释放父类资源
- windows PE Image 文件分析(5)--- .rsrc 节与 resource table
- 修改mini hook,使其支持vc6.0,x64系统
- nyoj 90 176 整数划分一 二 和 nyoj 279 队花的烦恼二
- 上传控件美化
- 处理Camera的时候需要了解的东东
- 数据泵 impdp/expdp
- 1.我的奋斗史 之<走远了丶就在也回不来了>
- [转]鸭子-策略模式(Strategy)
- 代码解释(初级)
- ssh 整合需要的类
- PCI转接卡系列
- vim 配置
- 一个监控CPU使用情况的脚本