按照说明,将Rules.make,CAPTURE_DISPLAY_MODE_ON := YES FRAMES_TO_A8 := YUV,然后执行make all。按道理应该是可以捕捉到YUV Frame的,但是没有实现,于是往代码端看发现。在ti_mcfw_ipcframes.h中发现有TI未写完整的一个用户操作//#define CUSTOM_SD_DEMO,认真看看对是帧进行文件保存的。但当往下看时,在ti_mcfw_ipcframes.c的App_ipcFramesFileWriteCreate()函数中,既然出现有几个从未定义的函数:
Void App_ipcFramesFileWriteCreate()
{
OSA_printf("\nEnable RAW Frame Write\n\n");
gApp_ipcFramesCtrl.fileFrameWriteChn = 0;
gApp_ipcFramesCtrl.fileFrameWriteEnable = Demo_getFileWriteEnable();
//gApp_ipcFramesCtrl.fileFrameWriteEnable = TRUE;
if(gApp_ipcFramesCtrl.fileFrameWriteEnable)
{
//char *path;
char path[256];
Demo_getFileWritePath(path, "/dev/shm");
//path="/dev/shm";
gApp_ipcFramesCtrl.fileFrameWriteChn = Demo_getChId("FRAME File Write", gDemo_info.maxVcamChannels);
//gApp_ipcFramesCtrl.fileFrameWriteChn =0;
sprintf(gApp_ipcFramesCtrl.fileFrameWriteName, "%s/VID_CH%02d.yuv", path, gApp_ipcFramesCtrl.fileFrameWriteChn);
}
}
未定义使用的函数有 Demo_getFileWriteEnable();Demo_getChId("FRAME File Write", gDemo_info.maxVcamChannels);
曾经试过找些等价的值进行替换,但发现保存下来的文件是空的,就是没有成功的存储到帧的信息。求解??????
真心想问问,这两个地方的C文件到底是怎么挂钩到一起用的啊??
Source/ipnc_rdk/ipnc_mcfw/demos/mcfw_api_demos/multich_usecase 目录1
/Source/ipnc_rdk/ipnc_mcfw/mcfw/src_linux/mcfw_api/usecases 目录2
TI的专家,恳望解答啊~
PKF:
up ! 今天我也发觉了 而且保存的时候在app_ipcframesendrecvfxn(void *prm)函数中被OSA_semwait(&throbj->framesinnotifysem,0)掐住了 下面的while()循环根本没执行?咋回事
PKF:
你的问题解决了吗?
shoulei ma:
您好,请问您现在知道上述那两个文件是怎么连接在一起的吗?
Harry:
我也发现这个问题了,想把视频帧保存到本地文件,请问你最后怎么解决这个问题????