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.

新人求解processLink



看到有的例子里

ipcFramesOutVpssPrm不仅有nextLink,还有processLink:

ipcFramesOutVpssPrm.baseCreateParams.processLink = gVcapModuleContext.ipcFramesInDspId[0];

ipcFramesOutVpssPrm.baseCreateParams.outQueParams[0].nextLink = gMultiCh_VcapVencVdisObj.ipcOutVpssId;

之前只知道link之间上下游的关系,这个processLink不解,求高手指点小白一二!多谢多谢!

  • Harry,

    建议你看看下面帖子的讨论:

    http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/t/80041.aspx

  • 我觉得ProcessLink不应该是算法相关的link吗,为什么ipcFramesOutVpss的processLink是ipcFramesInDsp(那ipcFramesOutVpss的nextLInk流向哪里?),而ipcFramesInDsp的nextlink才是dspAlgLink?

    是不是dsp相关的algLink就是这么用的,ipcFramesOutVpss --(processLink)----> ipcFramesInDsp --(nextLink)------> algLink

  • Harry,

    usecase里面的图,说明的比较好。VPSS的FRAMESOUT link 把数据交给了process link,process link在让alg linkn处理完以后,还会把数据还回来,由process link还给FRAMESOUT link,然后FRAMESOUT link再把这个处理好的数据送给FRAMESOUT link的next link,如下图是IPCM3OUT,然后给video M3去编码。

    在DVR RDK的培训资料里面,建议你看看ipcFrameOut Link的介绍。

                                                            
    FRAMESOUT(VPSS)---------------<<<processLink>>>----FramesInDSP--------ALG_LINK <OSD, SCD Algs>
            |
            |
            |
            |
         IPCM3OUT(VPSS)------IPCM3IN(VID)----ENC

  • Chris Meng,

               嗯!非常感谢您的耐心与细心解答!谢谢!

  • Chris Meng ,

         你好!再冒昧打扰你一下。如你所说,“FRAMESOUT link再把这个处理好的数据送给FRAMESOUT link的next link”,这个next link可以直接是displayLink吗,也就是把alg link处理好后的图像显示出来?


    FRAMESOUT(VPSS)---------------<<<processLink>>>----FramesInDSP--------ALG_LINK <OSD, SCD Algs>
            |
            |
            |
            |
     DISPLAY_HDMI(VPSSM3)

  • Harry,

    FRAMEOUT link是要把一个frame从一个core传给另外一个core,显示和采集是同一个core。

    如果你需要在显示的图像上加上OSD,你能否不使用process link,如下图。

    FRAMESOUT(VPSS)------->-----FramesInDSP---->----ALG_LINK <OSD, SCD Algs> -->----FramesoutDSP---->FRAMESIN(VPSS)----> DISPLAY_HDMI(VPSSM3)

  • Chris Meng,

          再次感谢你的耐心与细心解答!

          真的非常感谢!


          我正在按照你的上图尝试,尝试过程中有几个疑问:   

          FRAMESOUT(VPSS)------->-----FramesInDSP参数设置类型为: 

          IpcFramesOutLinkRTOS_CreateParams ipcFramesOutVpssPrm;
          IpcFramesInLinkRTOS_CreateParams ipcFramesInDspPrm;

         然后考虑FramesoutDSP---->FRAMESIN(VPSS)的参数设置

         由于我用的是DM8127 IPNC RDK 3.8,里面的usecase里没有用到类似的link,我就去看DVR RDK的代码,outDSP与inVpss,我看到有这个:

         IpcBitsOutLinkRTOS_CreateParams   ipcBitsOutDspPrm;

         我记得好像ipcOut/in 是M3两个核之间传递frame用的,ipcFramesOut/in是M3和DSP ARM之间传递frame用的,是这样吗?这里怎么用IpcBitsOut?


         那么FramesoutDSP---->FRAMESIN(VPSS)的两个link参数设置类型到底应是什么?各个核(M3 DSP ARM)之间传递frame参数设置各自到底是怎么个用法?是否有相关文档?

  • Chris Meng,

        你好!再打扰下!   

        我目前所做的,用的是DM8127 IPNC DRK 3.8,我是在multich_tristream_fullfeature.c上改,将VAlink改掉,改成algLink,algLink里有OSD和SCD两个,我是想algLink(osd scd)处理后,再回显到TV或者HDMI。疑问:如图:ALG_LINK <OSD, SCD Algs> -->----FramesoutDSP---->FRAMESIN(VPSS)----> DISPLAY_HDMI(VPSSM3)   请问dsp的link可以有next link吗? 我哪里看到好像说不可以?

        其实我是想:图像采集(M3VPSS)-->图像处理(DSP )-->显示(MSVPSS TV/HDMI)。DSP做图像处理算法,类似OSD SCD,打算在OSD SCD上改成自己的算法。

         请问该怎么做?目前我在做的正式打算在multich_tristream_fullfeature.c将VAlink改成algLink(OSD和SCD),回显到TV或者HDMI,走通后再把osd/scd改成自己的算法。请问是否可行?

        非常感谢你的解答!谢谢!