yuv420的图像怎么纵向拉伸,不转换成其它格式
Android camera yuv420的图像怎么实现纵向拉伸,不转换成其它格式?新手提问,有源码贴出来感激不尽. --------------------编程问答-------------------- 大侠们,出来救救我,帮忙解决这个问题 --------------------编程问答-------------------- 只需要实现成整数倍拉伸就行了 --------------------编程问答-------------------- 网上找不到相关的,自已写了一段代码,欢迎指正:
private byte[] YuvScaledH(byte[] yuvdata, int sourceWidth, int sourceHeight, int times){
byte[] scaledYuv=new byte[sourceHeight*sourceWidth*times*3/2]; //仅拉伸H,W不变
for(int i=0;i<sourceHeight;i+=2){
int inOffset=i*sourceWidth;
int outOffset=(i*times*sourceWidth);
for(int t=0;t<times;t++){
System.arraycopy(yuvdata, inOffset, scaledYuv, outOffset, sourceWidth*2);
outOffset+=sourceWidth*2;
}
}
int baseUV=sourceWidth*sourceHeight; //源图UV分量起始点
for(int i=0;i<sourceHeight/2;i++){
int inOffset=baseUV+i*sourceWidth;
int outOffset=(baseUV+i*sourceWidth)*times;
for(int t=0;t<times;t++){
System.arraycopy(yuvdata, inOffset, scaledYuv, outOffset, sourceWidth);
outOffset+=sourceWidth;
}
}
return scaledYuv;
}
补充:移动开发 , Android