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.

[参考译文] 积分图像算法链接之后出现的 Null 链接问题

Guru**** 2940790 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/671425/problems-with-null-link-that-comes-after-integral-image-algorithm-link

大家好、

我有一个简单的用例 NullSrc (A15)->Alg_IntegralImage (DSP1)->Null (IPU1_0)。 我正在向 NullSrc 发送固定数量的视频帧(YUV420SP_UV)、计算积分图像(仅使用第一个视频帧缓冲区来处理灰度图像) 然后、我想使用 Null 链接的 NULL_LINK_COPY_TYP_NONE 模式来编写回调函数、以便将处理过的数据保存在某个位置。 我尚未实现回调函数、但我想将其放置在 NullLink_drvDumpFrames 函数内、就像其他情况一样。

运行它、但未实现回调函数、我获得"utils:MDMA 错误- DSP 中的无效内存访问!!!" 误差。

我怀疑 Null 链接可能不支持来自 Integral Image 算法的数据量、因此我的调试被指向 Null 链接。 我发现、如果 nullLink_tsk.c 中 NullLink_drvDumpFrames 函数的条件(pObj->createArgs.dumpDataType >0U)不满足、实际上它不会出现回调函数的其他情况。  

出现此问题的原因可能是什么? 在用例中、它是否可以与用于链路的输入/输出缓冲器的内存分配有关?

我不清楚积分图像的输出是什么类型的数据、如果它作为输入获得视频缓冲器?

我正在使用 TDA2x SoC VSDK 2.10开发平台。

BR、

Jho。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Jho、

    有许多主题与此类似:
    e2e.ti.com/.../598936
    e2e.ti.com/.../2415899
    e2e.ti.com/.../2352758
    e2e.ti.com/.../2102704
    您能仔细检查一下它们、看看您是否找到了解决方案。

    此致、
    Rishabh
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Jho 您好、

    有关 MDMA 错误、请参阅上述主题的 Rishabh。 您看到的错误与 NULL 链接无关、因为它没有在 DSP 上运行。

    我会向您推荐
    1.首先获取 NullSrc (A15)->空(IPU1_0)工作。 基本上确认您通过网络发送的内容已写入 SD 卡。 您可以在此处添加回调函数。
    2.第二个继续进行 NullSrc (A15)->Alg_IntegralImage (DSP1)->Null (IPU1_0),此处检查积分映像是否写入 SD。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rishabh、

    在发布问题之前、我查看了这些示例、它们对我没有帮助。
    我使用的是现有复杂用例的一部分。 因此、我从另一个用例中获取了 NullSrc 和算法积分映像(已经创建并正常工作)、而不是在原始用例中的 ALg_integralImage 之后的下一个链接、而是放置 Null 链接来结束我的用例。 这就是为什么我对此处的 Null 链接没有信心。

    BR、
    Jho。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Prasad、您好!

    我使用的是现有复杂用例的一部分。 因此、我从另一个用例中获取了 NullSrc 和算法积分映像(已经创建并正常工作)、而不是在原始用例中的 ALg_integralImage 之后的下一个链接、而是放置 Null 链接来结束我的用例。 这就是为什么我对此处的 Null 链接没有信心。

    我现在将尝试在这些步骤中执行它。

    BR、
    Jho。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Jho、

    您能不能告诉我们 Prasad 建议的实验结果。 谢谢。

    此致、
    Rishabh
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rishabh 和 Prasad、

    我已将 NullSrc (A15)-> Null (IPU1_0)用例设置为实现回调函数、以将接收到的文件写入 SD 卡。 它工作正常、SD 卡上写入的内容与 NullSrc 发送的内容完全相同。

    当我添加算法时、会返回此错误"无法获取空的输出缓冲区。"。 函数 AlgorithmLink_getEmptyOutputBuffer (在 algPlugin 文件中)首先返回两到三次 status system_link_status_Sok、但在该函数返回的状态发生变化后、我开始收到所述的错误。

    BR、
    Jho。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Jho、

    您的算法似乎需要更多时间来处理缓冲区。 您能不能检查算法所花费的时间以及调用 getEmptyBuffer API 所花费的时间。 这两个值都应该匹配。

    此致、
    Rishabh