【海思SS528 | VO】MPP媒体处理软件V5.0 | 视频输出模块——学习笔记

本文主要是介绍【海思SS528 | VO】MPP媒体处理软件V5.0 | 视频输出模块——学习笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀
🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C++、数据结构、音视频🍭
🤣本文内容🤣:🍭介绍🍭
😎金句分享😎:🍭你不能选择最好的,但最好的会来选择你——泰戈尔🍭

本文未经允许,不得转发!!!

目录

  • 🎄一、概述
  • 🎄二、显示设备
  • 🎄三、视频层
  • 🎄四、VO通道
  • 🎄五、总结


在这里插入图片描述

🎄一、概述

海思SS528的 VO( Video Output,视频输出)模块主动从内存相应位置读取视频和图形数据,并通过相应的显示设备输出视频和图形。

说明:本文介绍了主要的海思SS528平台的,如无特别说明,都是SS528平台的相关内容。

海思SS528的VO模块包含了三路显示设备:

  • 超高清显示设备DHD0(Device HD0,高清设备0)
    • 视频层VHD0(Video layer of DHD0)
    • 视频层VHD2(Video PIP layer)
    • 图形层G0(Graphic layer 0)
    • 图形层G2(Graphic layer 2)
    • 图形层G3(Graphic layer 3)
  • 高清显示设备DHD1(Device HD1,高清设备1)
    • 视频层VHD1(Video layer of DHD1)
    • 视频层VHD2(Video PIP layer)
    • 图形层G1(Graphic layer 1)
    • 图形层G2(Graphic layer 2)
    • 图形层G3(Graphic layer 3)
  • 标清显示设备DSD0(Device SD0,标清设备0)
    • 视频层VSD0(Video layer of DSD0)
    • 图形层G2(Graphic layer 2)
    • 图形层G3(Graphic layer 3)

分辨率主要有以下几种概念:

  • 设备分辨率指该设备的输出有效像素点数,由设备时序决定。
  • 显示分辨率指画面在显示设备上的有效显示区域,由视频层属性中的display_rect成员决定。
  • 画布分辨率指VGS拼接时使用的一块输出视频数据的内存区域,由视频层属性中的img_size决定。直通时无此定义。
  • 图像分辨率指图像本身的有效像素点数,由实际的显示图像分辨率决定。

在这里插入图片描述

🎄二、显示设备

SDK将高清和标清显示设备分别标示为 DHDx( Device High Definition x)和 DSDx( Device Standard Definition x),其中, x为索引号,从0开始取值,表示第几路高清/标清显示设备。例如第0路高清设备标示为DHD0,第0路标清显示设备标示为DSD0。所有高清和标清显示设备又可分别简称为HD和SD设备。由于DHD0能够支持到4K(3840x2160)的时序,因此DHD0也可以称之为超高清显示设备。

SS528V100各个显示设备支持的输出接口和最大输出时序如下图:
在这里插入图片描述

在这里插入图片描述

🎄三、视频层

视频层就是用来显示视频的,当我们将视频解码、处理后,最后可以将视频数据显示在视频层的某个通道上。

对于固定在每个显示设备上面对应的视频层, SDK也对应采取 VHDx( Video layer of HD x)和 VSDx( Video layer of SD x)来标示。

SS528V100平台有4个视频层,VHD0、VHD1、VSD0分别固定绑定在DHD0、DHD1、DSD0上面。而VHD2,也就是PIP层,支持动态绑定在DHD0或DHD1上。

在这里插入图片描述

SINGLE模式和MULTI模式
SINGLE模式和MULTI模式是对支持多区域的视频层而言的,即硬件支持多区域,为区别于软件上的通道概念,此处称为多区域。
SINGLE模式表示在硬件上配置一个显示区域, MULTI模式是在硬件上配置多个显示区域(大于等于1个区域)。
注意将多区域与通道区别开来,SINGLE模式和MULTI模式下都可以实现多通道显示,前者其所有通道被组织成一幅图像显示在一个区域内,后者其每个通道独立并独占一个显示区域。
另外,一个视频层只能工作在其中一种模式下。

视频层放大
SS528的视频层VHD0是在SINGLE模式下是支持放大的,在MUTIL模式,所有视频层不支持放大。

视频层支持放大情况下:当视频层的 img_size<display_rect 时, img_size放大(最大放大15倍)到display_rect显示; img_size>display_rect 时,显示为 img_size 与 display_rect 的交集。

视频层不支持放大情况下:显示为 img_size 与 display_rect 的交集。

解压和压缩
解压功能是视频层的功能,支持输入源图像是压缩数据(格式为行压缩), VO会进行解压显示。
SINGLE模式下,若VO支持解压缩能力,则由VO进行解压缩,否则将调用VGS进行解压缩;
在MULTI模式下,所有视频层支持的压缩模式或压缩模式组合如下。
在这里插入图片描述

在这里插入图片描述

🎄四、VO通道

SDK将通道归属于视频层管理,一个视频层上可显示多个视频,每一个视频显示区域称为一个通道,视频被限制通道内,通道被限制在视频层内。对于一个视频层,其上面的通道都是独立的。同时,不同的视频层上的通道也是独立的。对于通道的排号上面不存在跨层的连续。

对于系统绑定,应该使用视频层号和通道号来进行绑定配置;

SINGLE模式下:源图像缩放到通道区域大小。
MULTI模式下:显示为源图像与通道显示区域交集。

SS528各个视频层通道数:

  • VHD0:支持64通道(SINGLE模式)、支持64通道(MULTI模式)
  • VHD1:支持64通道(SINGLE模式)、支持64通道(MULTI模式)
  • VHD2(PIP):支持64通道(SINGLE模式)、不支持通道(MULTI模式)
  • VSD0:支持64通道(SINGLE模式)、不支持通道(MULTI模式)

通道优先级
VO软件上支持多个通道同时输出显示,按照优先级顺序对输出图像进行叠加,当各个通道的画面有重叠区域时,优先级高的图像显示在上层,如果各个通道优先级一致,则通道号越大的默认优先级越高。

在这里插入图片描述

🎄五、总结

本文记录了一些VO模块相关的知识点,供日后学习、复习。

学习VO模块,我主要记录了设备、视频层、VO通道的一些知识点,除此之外,还有视频回写相关知识、通道图像局部放大视频层与图形层绑定单画面直通模式低功耗策略旋转输入和输出数据格式像素格式转换虚拟设备负载检测数据透传低延时角框功能等知识概念。这些可以参考《MPP媒体处理软件V5.0 》。

在这里插入图片描述
如果文章有帮助的话,点赞👍、收藏⭐,支持一波,谢谢 😁😁😁

这篇关于【海思SS528 | VO】MPP媒体处理软件V5.0 | 视频输出模块——学习笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/449624

相关文章

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

Java如何获取视频文件的视频时长

《Java如何获取视频文件的视频时长》文章介绍了如何使用Java获取视频文件的视频时长,包括导入maven依赖和代码案例,同时,也讨论了在运行过程中遇到的SLF4J加载问题,并给出了解决方案... 目录Java获取视频文件的视频时长1、导入maven依赖2、代码案例3、SLF4J: Failed to lo

Python实现多路视频多窗口播放功能

《Python实现多路视频多窗口播放功能》这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下... 目录一、python实现多路视频播放功能二、代码实现三、打包代码实现总结一、python实现多路视频播放功能服务端开

Python实现视频转换为音频的方法详解

《Python实现视频转换为音频的方法详解》这篇文章主要为大家详细Python如何将视频转换为音频并将音频文件保存到特定文件夹下,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. python需求的任务2. Python代码的实现3. 代码修改的位置4. 运行结果5. 注意事项

Python视频处理库VidGear使用小结

《Python视频处理库VidGear使用小结》VidGear是一个高性能的Python视频处理库,本文主要介绍了Python视频处理库VidGear使用小结,文中通过示例代码介绍的非常详细,对大家的... 目录一、VidGear的安装二、VidGear的主要功能三、VidGear的使用示例四、VidGea

java中VO PO DTO POJO BO DO对象的应用场景及使用方式

《java中VOPODTOPOJOBODO对象的应用场景及使用方式》文章介绍了Java开发中常用的几种对象类型及其应用场景,包括VO、PO、DTO、POJO、BO和DO等,并通过示例说明了它... 目录Java中VO PO DTO POJO BO DO对象的应用VO (View Object) - 视图对象

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06