长得帅要挨打么

长得帅要挨打么

0个粉丝

1

问答

0

专栏

0

资料

长得帅要挨打么  发布于  2025-02-19 11:28:09
采纳率 100%
1个问答
229

Hi3536A从vpss获取1080分辨率的yuv数据异常

悬赏金¥ 5
已结题
     

我想在实现了H264=>vdec->vpss->vo的逻辑中增加从vpss获取到yuv数据的流程,实现一个抓拍的功能(使用的是hi_mpi_vpss_get_grp_frame接口)。
在做测试的时候发现如果输入的H264分辨率是1920x1080时,保存下来的yuv数据的颜色会整体下移,此时vo显示的画面是正常的。之后我测试了704x576和1280x720这两种分辨率是没问题的。三者获取yuv的函数流程都是同一个函数,目前不知道是啥原因,请大家帮忙看下。
现象图片如下:
有问题的图片:

vo显示正常图片:

出现的颜色问题在下图中框出来了,最明显的是最上面一条颜色,其次是工位挡板是蓝色的,可以看到蓝色往下移了:

环境信息:
产品:SS626V100R001C02SPC010
mpp版本:v5.0
sdk版本:SS626V100_SDK_V2.0.1.0
编译链:aarch64-mix410-linux

hi_mpi_vpss_get_grp_frame的获取代码:

grp通道的创建代码:

代码txt和写下来的yuv数据都已放在附件中。
希望大家帮忙看看咋解决!!!!谢谢~~

易百纳技术社区文件: 代码.txt
下载
我来回答
回答7个
时间排序
认可量排序

UncleRoderick

41个粉丝

16

问答

3

专栏

16

资料

UncleRoderick 2025-02-19 13:46:30
认可0

Hi3536A对内存对齐有严格要求,尤其是高分辨率数据。1920x1080分辨率的数据可能未按硬件要求对齐,导致颜色数据错位,可以排查一下。
同时也可以从YUV格式、VPSS配置等方面进行排查

邓晓

22个粉丝

1

问答

0

专栏

19

资料

邓晓 2025-02-19 14:15:02
认可3

估计高是16字节对齐,1920x1080要按照1920x1088这个分辨率申请内存和保存文件,yuv查看把高设置为1088,最前面的那行紫色数据,会跑到最后一行

长得帅要挨打么
长得帅要挨打么   回复   邓晓  2025-02-19 16:15:00
0

你好,我看了下mpp的源码,它会有16字节对齐的操作,不知道我有没有找对地方。
后续我修改了传参是1080的地方,改为1088,试了还是会有问题。可以麻烦详细说下代码里面修改的位置吗

长得帅要挨打么
长得帅要挨打么   回复   邓晓  2025-02-19 17:05:02
0

另外保存文件的地方我是用接口返回的frameInfo里面的宽高申请的内存

这部分代码打印的是1920x1080,不是对齐后的高度

邓晓

22个粉丝

1

问答

0

专栏

19

资料

邓晓 2025-02-19 19:22:23
认可1


查看工具,高设置为1088

邓晓

22个粉丝

1

问答

0

专栏

19

资料

邓晓 2025-02-19 19:29:16
认可2
易百纳技术社区该回答已被题主采纳为最佳答案

试下下面的代码,直接用mmap地址存文件,不需要拷贝,size=1920x10883/2
我这边刚好也碰到这个问题,就是这么解决的,查看yuv工具,高设置为1088
phySize=192010883/2,
hi_void userAddr = (hi_u8 )hi_mpi_sys_mmap_cached(phys_addr, phySize);
FILE file = fopen(“./yuv.yuv”, “wb”);
fwrite(userAddr, userAddr, 1, file);
fclose(file);

长得帅要挨打么
长得帅要挨打么   回复   邓晓  2025-02-20 10:31:57
0

这个方法可以的。直接从物理地址拷贝对齐后的高度,工具上设置也设置对齐后的高度可以拿到正确的数据~~
谢谢~~

或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区