【问题描述】
因需多次调用摄像头,在除第一次外调用摄像头时报错,疑似未释放设备。
【过程描述】
https://gitee.com/ascend/samples/tree/master/cplusplus/level1_single_api/5_200dk_peripheral/ascendcamera
根据以上样例进行测试图片保存至本地的方式成功。
但是我修改代码后,测试失败

我将main函数的argc<2部分删除,也就是视频部分删除,仅留下了图片保存部分,且图片保存部分的参数已在程序内写入,然后封装成part函数。
在仅运行一次part函数
int num = 7;
char* var1[7] = { ".main","-i","-c","1","-o","0.jpg","--overwrite" };
part(num, var1);
时能够实现原有图片拍摄并保存的目的。

但是在增加了
char* var2[7] = { ".main","-i","-c","1","-o","1.jpg","--overwrite" };
后第二次调用part时便产生了错误

此时是能够读取var1的参数并拍照保存,但是var2无法运行。
【寻求帮助】
看输出日志,疑似是摄像头被占用,但官方样例中也有释放的操作,但在这种情况下却无效,请问这种情况应该如何解决设备占用问题。
【问题描述】
因需多次调用摄像头,在除第一次外调用摄像头时报错,疑似未释放设备。
【过程描述】
https://gitee.com/ascend/samples/tree/master/cplusplus/level1_single_api/5_200dk_peripheral/ascendcamera
根据以上样例进行测试图片保存至本地的方式成功。
但是我修改代码后,测试失败
我将main函数的argc<2部分删除,也就是视频部分删除,仅留下了图片保存部分,且图片保存部分的参数已在程序内写入,然后封装成part函数。
在仅运行一次part函数
int num = 7;
char* var1[7] = { ".main","-i","-c","1","-o","0.jpg","--overwrite" };
part(num, var1);
时能够实现原有图片拍摄并保存的目的。
但是在增加了
char* var2[7] = { ".main","-i","-c","1","-o","1.jpg","--overwrite" };
后第二次调用part时便产生了错误
此时是能够读取var1的参数并拍照保存,但是var2无法运行。
【寻求帮助】
看输出日志,疑似是摄像头被占用,但官方样例中也有释放的操作,但在这种情况下却无效,请问这种情况应该如何解决设备占用问题。