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/processor-SDK-AM57X:使用 IVA-HD 子系统

Guru**** 2604225 points
Other Parts Discussed in Thread: AM5728

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/586042/linux-processor-sdk-am57x-working-with-the-iva-hd-subsystem

器件型号:PROCESSOR-SDK-AM57X
主题中讨论的其他器件:AM5728

工具/软件:Linux

您好!

我一直在尝试安装必要的工具、以便在 EVM 上进行 IVA-HD 开发。  我最好能够在运行 Code Composer 的主机 PC 上构建和调试编解码器应用。  关于在主机上构建和运行 IPUMM 软件、我一直遵循 Wiki 页面的指南:

但是、我注意到有几个因素阻止了我的编译:

1) 1)可用的构建目标平台没有提及 AM 系列。  考虑到 OMAP54XX 可能是 AM5728中 SGX54XX GPU 的引用、我一直在假设这一点无关紧要的情况下运行。  是这样吗?

2) 2)假设 IVA-HD 软件未与 Linux 软件 SDK 一起预安装、我可能已经不正确。 标准安装中是否包含它?

3) 3)如果不是、则在主机上构建 IPC 系统时遇到一些问题。  尝试安装 Linux 和 BIOS 会导致一些与 makefile 中的编译器调用相关的编译错误。  由于缺少 pthread.h 相关函数的几个错误、它正在尝试查找 pthread.h 并失败。  但是、由于我的计算机正在运行 Ubuntu 14.04 LTS、我知道由于 POSIX (半)合规性、我有 pthread.h 可用。

如果这些问题毫无意义、那么我希望获得一些非正式指南、了解如何在安装了处理器 SDK 的 Ubuntu 主机上为 AM57x EVM 开发编解码器应用。

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

    软件团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    有关编解码器应用的开发、请参阅下面的 viddec3test 和 videnc2示例编解码器应用。
    git.ti.com/.../master

    最好在主机上使用 Makefile 来构建应用程序,而不是通过 code composer 和使用 printf 进行调试。 如果您有兴趣了解编解码器进程调用失败的原因、请解析进程调用返回的错误代码。 检查如何在 viddec3test 和 videnc2test 应用程序中提取错误代码。 您可以参考编解码器用户指南文档来了解编解码器错误处理。 例如、可以参考 H.264用户指南"错误处理"部分来解码解码解码器返回的错误代码。

    您可以从以下 git repo 下载编解码器文档-
    git.ti.com/.../codecs

    文档位于相应编解码器的 doc 文件夹中。
    git.ti.com/.../H264_Decoder_HDVICP2_UserGuide.pdf
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    听起来不错、但是我之前已经看过这些介绍和手册。  这让我先发布这篇帖子。

    我是否重新制作 IPUMM 项目?  omapdrmtest 项目?  两者都是?  需要注意的是、由于软件包 libdrm_OMAP 仅为 armhf、因此 omapdrmtest 不会在主机上构建、至少在我能够找到的范围内。  即使在将 armhf epos 添加到 x86主机的软件包存储库后、libdrm_OMAP 也不会安装。  不过、正如我所发现的、该软件包本身已安装在 EVM 上。

    那么、这就引出了一个问题:我是否只需将 omapdrmtest 项目克隆到我的 EVM、然后在该目录中编辑 viddec3程序、然后再创建它?  或者是否有方法将 IVA-HD 程序从 x86主机交叉编译到 EVM?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您不需要重建 IPUMM 项目。 viddec3test 和 videnc2test 预构建的二进制文件是 PLSDK 文件系统的一部分。 如果要重建这些应用程序,则需要重建 omapdrmtest。 您可以通过 Yocto 构建设置来重建 omapdrmtest 项目。 查看此 wiki 链接-

    processors.wiki.ti.com/.../Processor_SDK_Building_The_SDK
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果我想创建自己的程序来利用解码器系统吗? 我希望创建一个利用 MJPEG 解码器固定长度解码的低延迟解码器
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    第二个注释:omapdrmtest 不会在运行 Processor SDK v 3.02.00.05的 EVM 上编译、有关 libavcodec 的信息未找到、但该软件包确实已安装。  我尝试使用./autogen.sh --prefix=/usr && make && make install 来构建 omapdrmtest

    错误是在尝试编译 fl翻转 测试.c 时未找到 avcodec 库

    /usr/lib/gcc/arm-linux-gnueabi/5.3.1/../../../../arm-linux-gnueabi/bin/ld:找不到-lavcodec。 

    我还注意到最近提交的 omapdrmtest 对该软件包进行了检查、也许它不能正常工作?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如建议的那样、请使用 Yocto 项目来构建 omapdrmtest。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    啊、是的、我似乎错过了这个。 我是否还需要使用 Yocto 重建使用 IVA-HD 解码器的我自己的项目?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果能够处理 Makefile 中的依赖项,则不会出现问题。 但如果遇到问题、最好使用 Yocto 构建。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因此、如果我想在 C 语言中创建一个使用 IVA-HD 解码器以自定义设置(即切片级)解码的应用、我是否必须始终使用 Yocto 来构建它? 或者、如果我可以在 Makefile 文件中管理依赖项、那么我应该清除? 如果需要、我希望避免使用 Yocto 重建处理器 SDK。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Yocto 不是必需的。 如果可以管理依赖项,则可以使用独立 Makefile。 PLSDK 包中示例应用文件夹中的所有应用都可以单独构建。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    非常好,非常感谢。