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.

TDA4VM: dsi superframe

Part Number: TDA4VM

Dear TI experts,

We want to output the super frame of two video ports at the same time through DSI. We don’t have a camera. We now use demos such as TIDL/DOF to achieve this.

How should we modify the demo to output a superframe side by side?

My software version is:
  PDK-RTOS :processor-sdk-rtos-j721e-evm-08_06_00_12
  PDK-LINUX:processor-sdk-linux-08_06_00

Looking forward for your reply, thank you

Regards,

Barry

  • Hi,

    Are you using vision apps demos for this ?

  • Hi Pratik,

    My data flow is: TDA4VM-DSI->MAX96789->MAX96752->lvds->LCD

    I successfully displayed 1280*800 via DSI using vision apps demo run_app_tidl.sh .

    Now I want to output a 2580*800 superframe side by side through DSI. The superframe consists of two video pipes.

    Can you tell us how to make this modification?

    Regards,

    Barry

  • Sure, let me assign this to our vision apps expert.

    He will get back to you on this

  • Hi,

    You could use 2 pipelines to output each.

    You could refer the display implementation in the below FAQ for the same

    (+) [FAQ] TDA4VM: Stream camera of 2 datatypes using 2 Capture nodes and 2 Graphs on the same csi-rx instance - Processors forum - Processors - TI E2E support forums

    Regards,

    Nikhil

  • Hi Ti experts,

    Thanks for your quick reply.

     We don’t have a camera available now, so we use the TIDL/DOF demo in vision apps to implement it.

    I now need to output a 2560*800 superframe to the serializer through DSI. A single superframe consists of 2 pipes, each pipe is a 1280*800

    How should I implement it in the demo?

    I look forward to your reply. Thank you.

    Regards,

    Barry

  • Hi Brijesh,

    Thanks for your reply, your replies are always helpful.

    But can you complete side by side superframe modification based on TIDL/DOF demo?

    We currently don’t have a camera available.how can we achieve superframe results?

    this will be very helpful to me. thank you

    Regards,

    Barry

  • Hi Barry,

    The intent of sharing the above 2 FAQs were to refer the implementation of 2 displays.

    I understand that you don't have a camera available, but the FAQ was shared to refer the display node implementation from that app and modify your application the same way.

    The main summary from the 2 FAQs are 

    1. Use 2 display nodes

    2. Use different pipeIDs for each display as shown below

    3. Set posX and posY such that they don't overlap as shown below.

    Display node 1

    displayObj->disp_params.pipeId = 0; /* pipe ID = 0 */
    displayObj->disp_params.outWidth = 960;
    displayObj->disp_params.outHeight = 1080;
    displayObj->disp_params.posX = 0;
    displayObj->disp_params.posY = 0;

    Display node 2

    displayObj1->disp_params.pipeId = 2; /* pipe ID = 2 */
    displayObj1->disp_params.outWidth = 960;
    displayObj1->disp_params.outHeight = 1080;
    displayObj1->disp_params.posX = 960;
    displayObj1->disp_params.posY = 0;

    Pass each input to individual display node and you should get a combined output on the display at the set posX and posY 

    Please try this at your end on your application.

    Regards,

    Nikhil

  • Hi Ti experts,

    thanks for your reply.

    But I don't understand. Are you replying to the superframe configuration?

    We want to know how to configure superframe in DOF demo. Can you tell me what the parameters mean in the patch similar FAQ?

    obj->displayObj1.disp_params.posX = 0;

    obj->displayObj1.disp_params.posY = 1080;

    and

     obj->displayObj2.disp_params.posX = 960;
     obj->displayObj2.disp_params.posY = 1080;

    We are not sure about the configuration here, can you help confirm it?

    Please help us understand, thank you

    Regards,

    Barry

  • Hi,

    In the DOF demo (i.e. app_dof in vision_apps/apps/basic_demos), in dof_display_module.c, you could see display1 and display2 present here, which is used in the demo as shown in the below diagram

    Vision Apps User Guide: Dense Optical Flow Application

    Here, display 2 is configured to pipe 2 and display 1 is configured to pipe 0 and the final display would be something as shown in the link above

    Where you get display 1 and display 2 output on the same display at their respective offsets programmed.

    This is the superframe that I was mentioning about.

    Regards,

    Nikhil

  • Hi experts,

    thank you for your reply.

    As in the patch you provided, we don't understand what the function of disp_params before the app_init_display call in the patch is?

    What is the role of disp_params setting in calling app_init_display function? It would be clearer if you could explain them separately.

    (99+) [FAQ] PROCESSOR-SDK-J721E: How to enable multiple displays by sending bigger size frames from DSS? - Processors forum - Processors - TI E2E support forums

    We want DSI to output a side by side superframe (2560*800), so that it can be split into two 1280*800 in the serializer.

    We are not sure what is the correct way to create a side by side superframe in TDA4?

    Please help confirm, thank you

    Regards,

    Barry

  • Hi Barry,

    Let us take an example of DOF application as you mentioned.

    In the SDK, there are 2 outputs being displayed as shown below

    Here, the grayscale "camera input" is from one display node and the DOF output is from the second display node

    -> Each display node has it's own disp_params.

    -> For the "camera input", display node is configured with pipe 0 with a specific outWidth and outHeight, and posX - posY specifies the location of the image on the display.(towards left)

    -> For the "DOF output", display node is configured with pipe 2 with a specific outWidth and outHeight, and posX - posY specifies the location of the image on the display. (towards right)

    -> Now 2 pipes in the Display Sub System (DSS) outputs each frames with the disp_param configuration specified for that pipe (node)

    -> Inside the DSS, the overlay manager combines the output from 2 pipes and puts it on the DSI (if you trying to output via DSI) and sends out of the DSS.

    -> Hence you see a superframe as attached above on the Display.

    Regards,

    Nikhil