TI中文支持网
TI专业的中文技术问题搜集分享网站

dm8168 分辨率

你好,我先在做dm8168拼接,是这样的我采集四路视频同时创建以NULLSRC,我将拼接视频放在NULLSRC中并显示流程如下

Capture (YUV422I) 16CH D1 60fps
|
|
NULL SRC (YUV420SP) |
| | +————+ | | | | | MERGE
|
|
STITCH
|
|
| | | SW Mosaic SC5 YUV422I) |
OSD GRPX0 | | | On-Chip HDMI 1080p60

,部分代码如下

for(i=0; i<nullSrcPrm.inputInfo.numCh; i++)
{
System_LinkChInfo *pChInfo;

pChInfo = &nullSrcPrm.inputInfo.chInfo[i];

pChInfo->dataFormat = SYSTEM_DF_YUV420SP_UV;//SYSTEM_DF_YUV420P;//SYSTEM_DF_YUV422P;
pChInfo->memType = SYSTEM_MT_NONTILEDMEM;
pChInfo->startX = 0;//48;
pChInfo->startY = 0;//32;
pChInfo->width = 1920;//stitchSrcWide;
pChInfo->height = 1080;//stitchSrcHeight;
pChInfo->pitch[0] = SystemUtils_align(pChInfo->width+pChInfo->startX, SYSTEM_BUFFER_ALIGNMENT);
pChInfo->pitch[1] = pChInfo->pitch[0];
pChInfo->pitch[2] = 0;
pChInfo->scanFormat = SYSTEM_SF_PROGRESSIVE; }

当我存放两幅图像时正常,

但是我拼接的图像分辨率大于1920 ,大约是3680*720,所以修改如下时

for(i=0; i<nullSrcPrm.inputInfo.numCh; i++)
{
System_LinkChInfo *pChInfo;

pChInfo = &nullSrcPrm.inputInfo.chInfo[i];

pChInfo->dataFormat = SYSTEM_DF_YUV420SP_UV;//SYSTEM_DF_YUV420P;//SYSTEM_DF_YUV422P;
pChInfo->memType = SYSTEM_MT_NONTILEDMEM;
pChInfo->startX = 0;//48;
pChInfo->startY = 0;//32;
pChInfo->width = 3920;//stitchSrcWide;
pChInfo->height = 1080;//stitchSrcHeight;
pChInfo->pitch[0] = SystemUtils_align(pChInfo->width+pChInfo->startX, SYSTEM_BUFFER_ALIGNMENT);
pChInfo->pitch[1] = pChInfo->pitch[0];
pChInfo->pitch[2] = 0;
pChInfo->scanFormat = SYSTEM_SF_PROGRESSIVE; 
}

当代码初始化失败,这时还没有开始拼接,请NULLSRC创建空视频分辨率有限制吗,还是其他原因导致?

谢谢

Chris Meng:

你好,

SWMS输入不支持大于1080p的图像。你可以先使用MPscalar把大于1080p的图像缩小到1080p后在输入SWMS.

user4722282:

回复 Chris Meng:

你好

     我添加了mpscalar,视频出现色差问题。 代码如下

nullSrcPrm.outQueParams.nextLink = mergeId; nullSrcPrm.timerPeriod = 1; nullSrcPrm.inputInfo.numCh = 1;//16 for(i=0; i<nullSrcPrm.inputInfo.numCh; i++) { System_LinkChInfo *pChInfo;

pChInfo = &nullSrcPrm.inputInfo.chInfo[i];

pChInfo->dataFormat = SYSTEM_DF_YUV420SP_UV;//SYSTEM_DF_YUV420P;//SYSTEM_DF_YUV422P; pChInfo->memType = SYSTEM_MT_NONTILEDMEM; pChInfo->startX = 0;//48; pChInfo->startY = 0;//32; pChInfo->width = 3840;//1920;//stitchSrcWide; pChInfo->height = 1080*3/4;//stitchSrcHeight; pChInfo->pitch[0] = SystemUtils_align(pChInfo->width+pChInfo->startX, SYSTEM_BUFFER_ALIGNMENT); pChInfo->pitch[1] = pChInfo->pitch[0]; pChInfo->pitch[2] = 0; pChInfo->scanFormat = SYSTEM_SF_PROGRESSIVE; }

………

mpSclrPrm.inQueParams.prevLinkId = gVcapModuleContext.ipcFramesOutVpssId[1];//gMultiCh_VdecVdisObj.mergeId; mpSclrPrm.pathId = MP_SCLR_LINK_SC5;//P_SCLR_LINK_SEC1_SC4_VIP1; mpSclrPrm.numCh = 1; mpSclrPrm.enableLineSkip = FALSE;

mpSclrPrm.outQueParams.nextLink = gVdisModuleContext.swMsId[0];;

具体流程如下,我获取4个摄像头视频,同时申请一个3840*1080空视频,将拼接视频放入mpscalar,我发现控视频经过MPscalar处理后变绿色,无论我是否将拼接视频放入,下面是拼接视频放入后照片

user4722282:

回复 user4722282:

上图是没执行拼接照片,请问为什么大分辨率视频经过mpscalar处理后出现绿色

Chris Meng:

回复 user4722282:

你好,

DVR RDK 4.01如果解码大于1080p的video,显示的时候就会使用mpscalar。同样大小的video解码显示也有问题么?

如果是,你可以尝试调整 slice size,看是否有帮助?

另,新问题建议新起一个帖子。谢谢!

赞(0)
未经允许不得转载:TI中文支持网 » dm8168 分辨率
分享到: 更多 (0)