Toybrick

标题: rga在android中使用问题 [打印本页]

作者: tianlj    时间: 2021-8-10 10:40
标题: rga在android中使用问题
下载linux-rga 并编译android使用.so成功。
将include文件夹放入android   jni目录。
代码中存在头文件无法找到问题。
[attach]2007[/attach][attach]2006[/attach]

作者: tianlj    时间: 2021-8-10 17:50
将include中所有 #ifdef #ifndef   ANDROID 改为 ANDROID_TEST
可运行,但只能运行一次。运行下方代码,log可输出11111   22222 然后就会重启。是我哪里用的不对么?求解答,感谢
  1. void rga_dms(char *img, char *result) {
  2.     RockchipRga &rkRga(RockchipRga::get());
  3.     rga_info_t src;
  4.     rga_info_t crop;
  5.     rga_info_t resize;

  6.     unsigned char buf_crop[360 * 480 * 3];
  7.     unsigned char buf_resize[320 * 320 * 3];


  8.     memset(&src, 0, sizeof(rga_info_t));
  9.     memset(&crop, 0, sizeof(rga_info_t));
  10.     memset(&resize, 0, sizeof(rga_info_t));

  11.     src.fd = -1;
  12.     src.virAddr = img;
  13.     src.mmuFlag = 1;
  14.     LOGE("11111");
  15.     crop.fd = -1;
  16.     crop.virAddr = buf_crop;
  17.     crop.mmuFlag = 1;
  18.     rga_set_rect(&src.rect, 0, 0, 360, 480, 640, 480, RK_FORMAT_RGB_888);
  19.     rga_set_rect(&crop.rect, 0, 0, 360, 480, 360, 480, RK_FORMAT_RGB_888);
  20.     rkRga.RkRgaBlit(&src, &crop, NULL);
  21.     LOGE("2222");
  22.     resize.fd = -1;
  23.     resize.virAddr = buf_resize;
  24.     resize.mmuFlag = 1;
  25.     rga_set_rect(&resize.rect, 0, 0, 320, 320, 320, 320, RK_FORMAT_RGB_888);
  26.     rkRga.RkRgaBlit(&crop, &resize, NULL);
  27.     LOGE("3333");
  28. }
复制代码






欢迎光临 Toybrick (https://t.rock-chips.com/) Powered by Discuz! X3.3