|
发表于 2024-1-9 17:36:35
只看该作者
8#
- 我使用了fread来作拷贝,这样是有问题吗?
- src_buf = (char*)malloc(SRC_WIDTH * SRC_HEIGHT * get_bpp_from_format(SRC_FORMAT));
- dst_buf = (char*)malloc(DST_WIDTH * DST_HEIGHT * get_bpp_from_format(DST_FORMAT));
- // // 从文件中获取源缓冲区数据
- // ret = get_buf_from_file(src_buf, SRC_FORMAT, SRC_WIDTH, SRC_HEIGHT, 0);
- // if (!ret)
- // printf("打开文件1\n");
- // else
- // printf("无法打开文件2\n");
- // 如果是其他模式,将目标缓冲区清零
- memset(dst_buf, 0x00, DST_WIDTH * DST_HEIGHT * get_bpp_from_format(DST_FORMAT));
- // 包装源和目标缓冲区,创建相应的结构体
- src = wrapbuffer_virtualaddr(src_buf, SRC_WIDTH, SRC_HEIGHT, SRC_FORMAT);
- dst = wrapbuffer_virtualaddr(dst_buf, DST_WIDTH, DST_HEIGHT, DST_FORMAT);
- fseek(src_file, 0, 0);
- gettimeofday(&start, NULL);
- while(1){
- i++;
- printf("%d \n",i);
- if(fread(src_buf, SRC_WIDTH * SRC_HEIGHT * get_bpp_from_format(SRC_FORMAT), 1, src_file) == 0){
- break;
- }
- STATUS = imcvtcolor(src, dst, src.format, dst.format);
- }
复制代码 |
|