C语言调用jpg-dec模块解码JPEG图像示例
#include <stdio.h> #include "jpgdec.h"
int main() { int ret; jpgdev_t *jpgdev = NULL; jpgdec_t *jpgdec = NULL; char *input_file = 'test.jpg'; char *output_file = 'output.bmp';
// 初始化jpgdec模块
ret = jpgdec_init();
if (ret != 0) {
printf("jpgdec_init failed, ret=%d\n", ret);
return -1;
}
// 打开jpgdev设备
jpgdev = jpgdev_open(input_file);
if (jpgdev == NULL) {
printf("jpgdev_open failed\n");
goto err_out;
}
// 创建jpgdec对象
jpgdec = jpgdec_create(jpgdev);
if (jpgdec == NULL) {
printf("jpgdec_create failed\n");
goto err_out;
}
// 解码jpg图像
ret = jpgdec_decode(jpgdec, output_file);
if (ret != 0) {
printf("jpgdec_decode failed, ret=%d\n", ret);
goto err_out;
}
// 关闭jpgdec对象
jpgdec_destroy(jpgdec);
jpgdec = NULL;
// 关闭jpgdev设备
jpgdev_close(jpgdev);
jpgdev = NULL;
// 反初始化jpgdec模块
jpgdec_deinit();
printf("Decode success\n");
return 0;
err_out: if (jpgdec != NULL) { jpgdec_destroy(jpgdec); } if (jpgdev != NULL) { jpgdev_close(jpgdev); } jpgdec_deinit(); return -1; }
原文地址: https://www.cveoy.top/t/topic/lfoH 著作权归作者所有。请勿转载和采集!