下面是将网上的一个yuv2rgb的汇编进行修改后的代码,修改了图片转换方向颠倒的问题,而且c调用函数采用6个参数传递
我只贴出汇编部分的代码,详细的代码可以点击最下面的链接下载
.text
.global ImgYUV2RGB24_neon
//void ImgYUV2RGB24_neon(unsigned char *pu8RgbBuffer, unsigned char *pu8SrcYUV, int l32Width, int l32Height, unsigned char* u ,unsigned char* v);
ImgYUV2RGB24_neon:
//push {r4, r5, r6, r7, r8, r9, r10, lr}
stmfd sp!, {r4-r10,lr}
add r4, r2, r2
add r4, r4, r2 //r4 : l32DstStride = 3 * width
mul r5, r4, r3 //r5 = 3* width * height
sub r5, r5, r4 //r5 = r5 - 3 * width = 3* width * height - 3 * width = width * (height -1) * 3
//add r0, r0, r5 //r0: pu8Dst =