ZHCAAX6 May   2021 DRA710 , DRA712 , DRA714 , DRA716 , DRA718 , DRA722 , DRA724 , DRA725 , DRA726 , DRA744 , 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

 

  1.   商标
  2. 1简介
    1. 1.1 标准 DRM 框架
    2. 1.2 基于 vDRM 的框架
  3. 2在 Linux 上基于 vDRM 显示内容
  4. 3Linux 上基于 vDRM 的多媒体支持
    1. 3.1 Gstreamer
    2. 3.2 viddec3test
    3. 3.3 modetest
    4. 3.4 kmscube
  5. 4显示基于 Weston 的应用
  6. 5显示基于 EGL 的应用程序
  7. 6跨 PSDKLA 和 VISION-SDK 的交互式显示
    1. 6.1 ALPHA 设置
    2. 6.2 ZORDER 设置:DISPC_xxx_ATTRIBUTES[26-27]
  8. 7双显示器演示
  9. 8构建 Linux Vision SDK 文件系统
  10. 9参考文献

简介

DRM/KMS 框架专用于管理显示、图形和合成子系统,如图 1-1 所示。

GUID-20210407-CA0I-MXPP-VSBL-HP9FQZ7D18QD-low.gif图 1-1 DRM/KMS 架构

借助其他 Linux 多媒体框架和应用程序,通常可使用 DRM/KMS 框架执行以下操作:

  • 利用硬件加速功能合成动画内容。
  • 控制显示界面和外部显示器,包括其设置(分辨率、频率、多屏幕等)。
  • 在显示面板或 HDMI 输出上显示此动画内容。

DRM 器件:负责聚合其他组件。向用户空间显示的器件(处理所有用户空间请求。)

DRM 帧缓冲区:此为标准对象,存储有关要显示的内容的信息。

CRTC:CRTC 表示 CRT 控制器,它将帧缓冲区内容扫描至一个或多个显示器,并更新帧缓冲区。

层面:一个层面就是一个图像层。

编码器:负责将帧转换为适当的格式,以便通过连接器传输。

连接器:表示显示器连接器(HDMI、DP、VGA、DVI 等),将信号传输至显示器。检测显示器的连接/拆卸。显示显示器支持的模式。

在 vision SDK Linux 中,DSS 由在 IPU 上运行的软件控制。因此,需要禁用 omapdrm,并且基于 Linux 的 DRM 应用程序会停止正常运行,因为没有能够进行模式设置(显示内容)的 DRM 器件。引入了一个虚拟 DRM 框架来创建多个能够进行模式设置的 DRM 器件,并将它们显示在用户空间中。

使用 vDRM 框架,一方面,vDRM 支持 Linux 显示。另一方面,M4 可以控制 DSS 硬件。因此,当 M4 启动时,它可以按 M4 显示内容。

表 1-1 显示 PSDKLA 和 VISION SDK 的 DRM 比较。

表 1-1 PSDKLA 与 VISION SDK 的 DRM 比较
类型 PSDKLA VISION SDK
DRM DRM 虚拟 DRM
DSS 由 A15 控制 (Linux) 由 M4 控制 (RTOS)
Omapdrm 支持
Fb0