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.

[参考译文] Linux/TDA2EVM5777:如何使用"cmem"缓冲区来执行编码器?

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/671955/linux-tda2evm5777-how-to-use-the-cmem-buffer-to-do-encoder

器件型号:TDA2EVM5777

工具/软件:Linux

您好,

   我想在 PSDK 3.03中为编码器分配连续物理地址,并使用 cmem 作为 编码的输入缓冲区,我 在 videnc2test.c 中添加以下代码:

ENC->buf.ybuff = CMEM_alloc2 (CMEM_CMABLOCKID、enc_>buf.SizeY、&params);
ENC->buf.FDY = CMEM_export_dmabuf (enc_>buf.ybuff);

   当我重建并运行 videnc2test 时,从内核中获取一些错误跟踪:

"

./git/libdce.c:965:进程错误:失败 eError == dce_eok 错误 val -5videnc2test.c:1467:主错误:非致命错误=0、h264enc_outArgs->videnc2OutArgs.extendedError=00000000
[39.528607] rpmsg_RPC rpmsg-DCE:rproc_pa_TO_da 错误、rproc = f68d8c00、pA = 0x0000bc200000 ret =-22
[39.556534] rpmsg_RPC rpmsg-DCE:将 UVA 解压到 RDA 转换! 转换= 0
[39.564259] rpmsg_RPC rpmsg-DCE:无法转换远程内核的所有指针!
MmRpc_call:错误:写入失败

"

 编码器(IPU)是否支持 从 MPU 侧分配的连续物理测量?

 此致、

 SID

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sid、
    对于 IPUMM、应用程序不能使用 cmem。
    IPUMM 被设计成对其输入/输出缓冲器使用平铺器、并对创建编解码器传递所有参数。

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

    您好 RAM、

       感谢您的回复。

       我发现如果使用 OSA memroy 作为输入缓冲器(来自 VSDK),IPUMM 仍然可以处理编码器。

       是否仍有使 IPUMM 使用 cmem 存储器的方法。

       

       谢谢、此致。

      SID

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sid、
    在 VISION-SDK 中、它还映射到 IPUMM 缓冲器被映射到平铺器。
    cmem 似乎也不能在那里工作。 您能否详细介绍一下这一编码器使用 cmem 的要求?

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

    您好 RAM、

      感谢您的快速响应。

       我想 管理编码器的输入缓冲器。  需要 memcpy 捕获的缓冲区,然后执行编码器。 cmem bufferes  对 memcpy 更有效。

       如果 cmem 不适合编码器、那么我将使用 OSA SR1帧缓冲器作为输入缓冲器。

        谢谢、此致。

      SID