This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

请教:DM8127 IPNC 视频帧保存本地文件问题



首先,我用的是IPNC RDK 3.8版本。

在采集-显示的直通usecase(即multich_capturedisplay.c),在Rules.make里设置CAPTURE_DISPLAY_MODE_ON := YES FRAMES_TO_A8 := YUV,最后成功编译运行,按道理应该是可以捕捉到YUV Frame的,但是没有实现(至少在本地没看到有什么文件生成),于是往代码端细看发现,在ti_mcfw_ipcframes.h中发现有一个注释掉的宏//#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();

  if(gApp_ipcFramesCtrl.fileFrameWriteEnable)
  {
    char path[256];

    Demo_getFileWritePath(path, "/dev/shm");

    gApp_ipcFramesCtrl.fileFrameWriteChn = Demo_getChId("FRAME File Write", gDemo_info.maxVcamChannels);

    sprintf(gApp_ipcFramesCtrl.fileFrameWriteName, "%s/VID_CH%02d.yuv", path, gApp_ipcFramesCtrl.fileFrameWriteChn);
  }
}

就是Demo_getFileWriteEnable(),Demo_getChIdg ,Demo_info这3个没有定义!!!!我试着找过,没找到有哪个文件有对他们的定义。

请问:这是怎么回事?是TI工作人员没写完这部分吗?还是落了几个文件?求解??????

最后那么现在,DM8127 IPNC 想把视频帧保存到本地文件,我该怎么做??

  • 你好;

             1、Demo_getFileWriteEnable(),Demo_getChIdg ,Demo_info 这个是在DVRRDK 的开发包中的代码( 主要针对DM8168 、DM81xx 平台),这部分代码是直接从DVRRDK中直接拿过来的。

             2、你想保存视频帧数据到本地,可以通过ipcframe 或者是jpg编码后保存都是可以的;里面的部分demo 是提供参考的,无法直接运行起来,需要参考demo按自己的需求进行修改;


  • 嗯,你好,谢谢你的解答,我往这个方向努力试试!