[发明专利]一种将Bitmap转成YUV格式的文件的方法有效
申请号: | 201310445610.8 | 申请日: | 2013-09-26 |
公开(公告)号: | CN103546731A | 公开(公告)日: | 2014-01-29 |
发明(设计)人: | 李小朋 | 申请(专利权)人: | 广东欧珀移动通信有限公司 |
主分类号: | H04N9/64 | 分类号: | H04N9/64 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 李盛洪 |
地址: | 523860 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 bitmap 转成 yuv 格式 文件 方法 | ||
1.一种将Bitmap转成YUV格式的文件的方法,其特征在于,包括下述步骤:
S1、将RGB格式的Bitmap读到内存中;
S2、申请一块内存,此块内存大小是该Bitmap经过无损压缩后再解码后的大小,这样Bitmap就相当于存到内存中了,并且设置YUV的格式,利用scalado库的caps_createImage创建一个内存大小的对象,此对象用于创建session,caps_newSessionWithRaw用于后面对此内存进行处理的关联对象;
S3、再创建一个Bitmap尺寸大小的BUF,此BUF用于保存转换YUV后的BUF的数据;
S4、caps_renderAsRawToBuffer通过扫描每行Session中的数据到步骤S3创建的BUF数据中,获得到转换YUV后的BUF数据;
S5、把此BUF写入到文件当中,得到转成YUV的数据。
2.根据权利要求1所述的将Bitmap转成YUV格式的文件的方法,其特征在于,步骤S2中,申请一个Bitmap读到内存中的BUF尺寸大小的内存处理方法如下:
先创建一个字节流os,再把Bitmap无损压缩到该字节流中,
再把此字节流通过os.toByteArray()转换成字节数组,从将Bitmap的数据读到字节数组中,此处的数据是RGBA8888格式的数据。
3.根据权利要求1所述的将Bitmap转成YUV格式的文件的方法,其特征在于,步骤S2中,所述设置YUV的格式具体为:在创建SESSION时设置CM_YUV422_UY1VY2,这样Scalado通过逐行扫描,并转换成YUV格式。
4.根据权利要求1所述的将Bitmap转成YUV格式的文件的方法,其特征在于,步骤S2中,Session是用于后续对该内存的操作,类似于获取到一个句柄的作用。
5.根据权利要求1所述的将Bitmap转成YUV格式的文件的方法,其特征在于,步骤S3中,将数据转换成YUV格式的方法如下:
通过每行扫描内存块,来对每行的数据逐行进行YUV的转换,通过借用Scalado的接口来实现,每行的数据中的像素进行YUV的转换。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东欧珀移动通信有限公司,未经广东欧珀移动通信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310445610.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种挤压式划线机
- 下一篇:低成本高性能耐腐蚀钢筋及其制造方法