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.

TDA3XEVM: Vision SDK 3.2: Why can I not set the resizer's output size higher than 992x469 pixels in the rearview sample?

Part Number: TDA3XEVM

Hi,

I've been playing with the sample chain "issMultCaptIspDeWarpRearView3dSv" to understand the resizer. Before I removed all surroundview stuff from then code.
I saw, that it is not possible to set an output size of more than 992x469 pixels.
Otherwise the software crashes with the following assertion in vpscore_simcop.c @ line 2512:

GT_assert(VpsIssCoreTrace, (FALSE != pInstObj->isRequestActive));

 

What I originally wanted to do is to switch between a fullsize video and the resized (smaller) video what I tried to do by using the following chain definition:

UseCase: chains_issMultCaptIspDeWarpRearView3dSv
IssCapture -> IssM2mIsp -> Select -> IssM2mSimcop -> IssM2mResizer -> Dup
Dup -> Gate_RVSMALL -> Alg_drawRearview (DSP2) -> Merge_RV
Dup -> Gate_RVBIG -> Merge_RV
Merge_RV -> Display_VideoRszB
IssM2mIsp -> Alg_IssAewb


The input-selection using the select link works fine and also the gate RVSMALL workes well, but RVBIG did not deliver any video output. I would have expected, that I would see a fullsize video without the tracking lines drawn by drawRearview.
As this does not work (why???) I thought I could solve the problem by resizing the video up to fullscreen or at least near the full screensize. But even this does not work.
Also the origin OV10640's resolution of 1280x720 pixel does not work. The screen keeps black.

So, why can I not go ahead 992x469 pixels? And why can I not bypass the resizer by switching to gate RVBIG?

Thank you in advance for your help!

Regards, Guenter




  • PS. I setup the rearview's size by changing the parameters below:

    // works fine:
    #define REARVIEW_WIDTH (992u) 
    #define REARVIEW_HEIGHT (496u)

    // Does NOT work:
    //#define REARVIEW_WIDTH (1920u) 
    //#define REARVIEW_HEIGHT (1080u) 

    #define REARVIEW_STARTX (0u)
    #define REARVIEW_STARTY (0u) 

    /* Display parameters */
    #define OUTPUT_FRAME_WIDTH (REARVIEW_WIDTH)
    #define OUTPUT_FRAME_HEIGHT (REARVIEW_HEIGHT)
    #define REARVIEW_LDC_STARTX (0U)
    #define REARVIEW_LDC_STARTY (0U) //(558U - OUTPUT_FRAME_HEIGHT)

  • Hi Guenter,

    I have forwarded your question to ISS expert.

    Regards,
    Yordan
  • Hi Guenter,

    There seems to 2 issues that you facing.

    • Un Able to resize: From the log, it seems like SIMCOP is asserting. Please ensure the output frame height is multiple of block height and output frame width is multiple of block width. The usecase would configure the block width and height of SIMCOP/LDC

    • The display shows black screen: Since the usecase is providing 2 channels of video to display, the display link will require an update when to switch between these channels. i.e. when switching to RVBIG, ensure to set display to switch to channel 1. You could refer usecase “csi2_cal_multi_cam_view” and in file chains_csi2CalMultiCam.c refer function switchDisplayChannel ()

    Regards, Sujith

  • Hi Sujith,

    thanks, the blocksize has been the reason. As I did set it this way, it didn't crash again. But now I have the problem, that the resizer does not really make the image bigger. It shows stripes at the right and lower boarder instead of maiking the image bigger. But this will become another thread and seams have to do something with the simcop.

    Regards,
    Guenter
  • Hi Sujith,

    now I also tried your solution whith switching the displays to avoid black screens. That also works well now. Thank you for your advice. That has been something which caused increasing the number of my gray hairs drastically. I did not know, that every sub chain in my case did create a new display channel automatically. I thought, that the merge link itself took care about that.

    Regards, Guenter

  • Hi Guenter,

    Thanks for confirming.

    The Merge link could get multiple frames with its channel number as 0. In order for the down-stream modules to be able to differentiate, the channel number is re-mapped.

    Please note that IssM2mIsp can provide 2 separate outputs. Each of these is independently configurable. Please check if this could be exploited to realize your usecase (reducing extra scaling operation)

    Regards, Sujith