ZHCAB26 September 2020 DRA710 , DRA712 , DRA714 , DRA716 , DRA718 , DRA722 , DRA724 , DRA725 , DRA726 , DRA745 , DRA746 , DRA74P , DRA750 , DRA756 , DRA75P , DRA76P , DRA77P , DRA780 , DRA781 , DRA782 , DRA783 , DRA785 , DRA786 , DRA787 , DRA788 , DRA790 , DRA791 , DRA793 , DRA797 , TDA2EG-17 , TDA2HF , TDA2HG , TDA2HV , TDA2LF , TDA2P-ABZ , TDA2P-ACD , TDA2SA , TDA2SG , TDA2SX
越来越多的客户考虑使用在单个 Jacinto/TDA 中支持信息娱乐功能以及 RVC 或动画的系统。最近,需要实时解码 H264 流的系统引入了基于以太网的 RVC,同时,部分客户要求播放带有启动动画的标识视频。
只有 Jacinto/TDA 具有 IVA-HD 硬件实例,因此使用两种不同的软件框架和编解码器驱动器来控制 IVA-HD,但这会发生资源冲突。
假设有一个支持这些功能的系统,如图 1-1 所示:
考虑到快速启动的要求,大多数客户选择 VISION SDK 框架来开发 RVC 或动画。具有链接和链概念的 VISION SDK 设计用于实现任何用例。
当视频数据(通常为 h264)通过 NullSource 链接从引导分区读取为视频文件或从以太网帧中提取为原始流时,NullSource 链接或 Autosar 链接会将这些流发送到解码链接进行解码。如图 1-2 所示,解码链接会通过 VISION SDK 编解码器(它位于 M4 内核中,用于配置 IVA-HD 硬件模块来实现解码)调用驱动器,然后将解码帧发送到下一个链接。
默认情况下,TI PSDKLA 将开源 gstreamer 框架用于任何多媒体播放器用例。TI 提供了 gstreamer 插件:ducatiH264 和 ducaitiMJPEG。这些插件可以在 gstreamer 流水线中工作,以处理多媒体文件。如图 1-3 所示,gstreamer 会调用 ducatiH264 插件,以在 M4 内核上配置 IPUMM(编解码器),从而与 IVAHD 进行通信来解码 H.264 帧。解码插件会调用位于 M4 内核上的 TI IPUMM 驱动器,从而控制 IVA-HD 硬件模块,以实现解码/编码。然后,将帧发送到下一个插件。
如果 A 和 B 用例同时发生,则将有一个用例失败,因为单个 IVA-HD 硬件实例无法同时由 M4 上的解码链接和 IPUMM 控制。实际上,同时需要 M4 具有解码链接和 IPUMM 支持功能以在 A15 上解码的任何用例都将失败。