TI工程师,
你好,在开发过程中的
处理数据的时候YUV格式的Y分量为什么是大小为 1280*2048,而设置的分辨率为1920*1080,为什么不是1920*1080呢
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.
您好,你用的是哪套RDK里的哪个usecase,什么代码里面指定了这个分辨率,方便指一下吗?
您好,我使用的是RDK3.2的代码 里面multich_tristream_fullfeature.c文件的MultiCh_createTriStreamFullFtr函数中
pCameraOutPrm->scOutWidth = 1920;
pCameraOutPrm->scOutHeight = 1080; 设置了sensor的分辨率,烦请分析一下万分感谢
我没有找到你说的2048在哪里啊。请帮忙指一下。
而且,这句“而设置的分辨率为1920*1080,为什么不是1920*1080呢” 是笔误么》
我是在SwosdLink_processFrames函数中处理YUV数据,Y分量放在pFullFrame->addr[0][0]里面的紧接着后面跟着的是UV分量pFullFrame->addr[0][1],发现Y分量的大小不是1920*1080个字节,而是2048*1280个字节,我是这样样计算出来的用UV分量的地址减去Y分量的地址得到的差值就是2018*1280的大小,然后我在向前面追查一个LINK就是那个nsf Link,发现在这个Link初始化的时候NsfLink_drvInitCh在该函数中处理的
nsfDataFmt->outPitch[0] =
VpsUtils_align (pInChInfo->width, VPS_BUFFER_ALIGNMENT*2);
nsfDataFmt->outPitch[0]=
VpsUtils_align (pInChInfo->width, VPS_BUFFER_ALIGNMENT*2);
这两个变量穿出来的只就是outPitch[0] = 2048 outPitch[0] = 2048,
在下面的函数中进行申请空间
status = Utils_memFrameAlloc(&format, nsfChObj->frames,
numFrmsPerCh);在跟进该函数中的Utils_memFrameGetSize函数获取的存储空间大小就是Y分量2048*1280+UV(2048*1280/2)的大小
归根揭底我觉得问题就出在对数据格式不理解上、
我目前同样遇到这个问题 440*360的H264视频。解码后进入dsp得到 pitch=896 WIDTH=440 HEIGHT=360 ADDR[0][1]-ADDR[0][0]=602112;
请问我要处理这帧数据长宽该如何确定和解决
YUV420SP的数据格式究竟是如何存储的。得到frame之后该如何去数据。我知道数据起始指针是FRAME->addr[0][0]该如何使用呢。
例如width height
关于YUV420SP_UV的疑问
基于ipncrdk3.5版本三码流全功能做的修改
chain:cam->isp->dup->frameout(vpss)->framein(dsp)->dsp算法
isp出的YUV420SP_UV格式,进到dsp内做运算