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.

Why the SWOSD can't work in my usecase?

Hi all,

   I want to read the YUV video frames from A8, and use the SWOSD to imprint the time information on the frame, and then encode the frame. I can read the frames from A8 and encode them normally, but the infromation can't be imprinted on the video, it looks that the SWOSD has no effort on the video frame. I have checked all the parameters, I can't find the error which may cause this issue. So, I wonder weather my link is wrong or not, my link flow is as below,

/**
            IPC Frames Out (A8) (1080p60 422I)
                                 |4CH
                                 |
                  IPC Frames IN (M3)
                                 |
                  IPC Frames Out0 (M3)--<<process link>>--IPC Frames In(DSP)--ALGLINK
                                 |
                       NSF 420SP
                                 |
                             DUP 
                                | | 
             +------------+ +------------+
             |                                        |
             |                                        |
             |                                        |
             |                                 MERGE
             |                                        |
             |                                        |
             |                             IPC OUT(M3)
             |                                        |
      SW Mosaic                  IPC IN(M3)
    (SC5 YUV422I)                       |
             |                                 Encode
             |                                        |
             |                          IPC Bits OUT (M3)
On-Chip HDMI                            |
  1080p60 422                 IPC Bits IN (A8)

*/

Is there any thing wrong?

  • Link configuration looks correct. Check if you are really enabling OSD and your osd window configuration is correct. Also check the Vsys_printDetailedStatistics logs to confirm algLink is receiving the frames.

  • Hi Badri,

       Thanks for your reply. In order to enable OSD, I set dspAlgPrm.enableOSDAlg = TRUE; And the osd window configuration is the same as the file "demo_osd.c" ; And when I call the function Vsys_printDetailedStatistics(), the information printed on the screen is as below,

     [m3vpss ]
     [m3vpss ]  *** [NSF0] NSF Statistics ***
     [m3vpss ]
     [m3vpss ]  Elasped Time           : 43 secs
     [m3vpss ]  Total Fields Processed : 156
     [m3vpss ]  Total Fields FPS       : 111 FPS
     [m3vpss ]
     [m3vpss ]
     [m3vpss ]  CH  | In Recv In Reject In Process Out User Out
     [m3vpss ]  Num | FPS     FPS       FPS        FPS Skip FPS
     [m3vpss ]  ------------------------------------------------
     [m3vpss ]    0 |       0         0          0   0        0
     [m3vpss ]    1 |       0         0          0   0        0
     [m3vpss ]    2 |       0         0          0   0        0
     [m3vpss ]    3 |       0         0          0   0        0
     [m3vpss ]
     [m3vpss ]
     [m3vpss ]  *** [SWMS0] Mosaic Statistics ***
     [m3vpss ]
     [m3vpss ]  Elasped Time: 44 secs
     [m3vpss ]
     [m3vpss ]  Output Request FPS   : 33 fps (1466 frames)
     [m3vpss ]  Output Actual  FPS   : 33 fps (1466 frames)
     [m3vpss ]  Output Drop    FPS   : 0 fps (0 frames)
     [m3vpss ]  Output Reject  FPS   : 0 fps (0 frames)
     [m3vpss ]  Scaling Internal     : 30 ms
     [m3vpss ]  Scaling Internal min : 30 ms
     [m3vpss ]  Scaling Internal max : 46 ms
     [m3vpss ]
     [m3vpss ]  Win | Window Repeat Drop Recv Que  FID Invlid Acc Event          Invalid   Que Reject Reject Latency
     [m3vpss ]  Num | FPS    FPS    FPS  FPS  FPS  FPS        Count (Max/Min)    CH Frames Frames     Frames Min / Max
     [m3vpss ]  ------------------------------------------------------------------------------------------------------
     [m3vpss ]    0 |      0     32    0    0    0          0        0 (  0/255)         0          0      0 255 / 58909
     [m3vpss ]    1 |      0     32    0    0    0          0        0 (  0/255)         0          0      0 255 / 58909
     [m3vpss ]    2 |      0     32    0    0    0          0        0 (  0/255)         0          0      0 255 / 58909
     [m3vpss ]    3 |      0     32    0    0    0          0        0 (  0/255)         0          0      0 255 / 58909
     [m3vpss ]
     [m3vpss ]
     [m3vpss ]  *** [SWMS0] Mosaic Parameters ***
     [m3vpss ]
     [m3vpss ]  Output FPS: 60
     [m3vpss ]
     [m3vpss ]  Win | Ch  | Input      | Input          | Input         | Input       | Output     |  Output         | Output        | Output      | Low Cost | SWMS | Data  |
     [m3vpss ]  Num | Num | Start X, Y | Width x Height | Pitch Y / C   | Memory Type | Start X, Y |  Width x Height | Pitch Y / C   | Memory Type | ON / OFF | Inst | Format|
     [m3vpss ]  --------------------------------------------------------------------------------------------------------------------------------------------------------------
     [m3vpss ]    0 |   0 |    0,    0 |  1920 x   1080 |  1920 /  1920 | NON-TILED   |    0,    0 |   960 x    540 |  3840 /      0 | NON-TILED   |      OFF |    0 |  420SP |
     [m3vpss ]    1 |   1 |    0,    0 |  1920 x   1080 |  1920 /  1920 | NON-TILED   |  960,    0 |   960 x    540 |  3840 /      0 | NON-TILED   |      OFF |    0 |  420SP |
     [m3vpss ]    2 |   2 |    0,    0 |  1920 x   1080 |  1920 /  1920 | NON-TILED   |    0,  540 |   960 x    540 |  3840 /      0 | NON-TILED   |      OFF |    0 |  420SP |
     [m3vpss ]    3 |   3 |    0,    0 |  1920 x   1080 |  1920 /  1920 | NON-TILED   |  960,  540 |   960 x    540 |  3840 /      0 | NON-TILED   |      OFF |    0 |  420SP |
     [m3vpss ]
     [m3vpss ]
     [m3vpss ]  59126: DISPLAY: HDDAC(BP0) : 59 fps, Latency (Min / Max) = ( 30 / 59 ), Callback Interval (Min / Max) = ( 16 / 17 ) !!!
     [m3vpss ]  59126: DISPLAY: UNDERFLOW COUNT: HDMI(BP0) 2681, HDDAC(BP0) 2684, DVO2(BP1) 2684, SDDAC(SEC1) 2684
     [m3vpss ]  59126: SYSTEM  : Heap Free Space (System = 21264 bytes, SR0 = 14274432 bytes, FrmBuf = 236080000 bytes,
     [m3vpss ]          BitBuf = 34832256 bytes, Mbx = 10239 msgs)
     [m3vpss ]
     [m3vpss ]  *** IpcFramesOutRTOS Statistics ***
     [m3vpss ]
     [m3vpss ]  Elasped Time           : 45 secs
     [m3vpss ]  Total Fields Processed : 164
     [m3vpss ]  Total Fields FPS       : 3 FPS
     [m3vpss ]
     [m3vpss ]
     [m3vpss ]  CH  | In Recv In Process In Skip
     [m3vpss ]  Num | FPS     FPS        FPS
     [m3vpss ]  --------------------------------
     [m3vpss ]    0 |       0          0       0
     [m3vpss ]    1 |       0          0       0
     [m3vpss ]    2 |       0          0       0
     [m3vpss ]    3 |       0          0       0
     [m3vpss ]
     [m3vpss ] DMTIMER_TEST:TotElapsed:14985:NumUpdates:999
     [c6xdsp ]
     [c6xdsp ]  *** SCD Statistics ***
     [c6xdsp ]
     [c6xdsp ]  Elasped Time           : 59 secs
     [c6xdsp ]  Total Fields Processed : 0
     [c6xdsp ]  Total Fields FPS       : 0 FPS
     [c6xdsp ]
     [c6xdsp ]
     [c6xdsp ]  CH  | In Recv In Process In Skip In Process Time
     [c6xdsp ]  Num | FPS     FPS        FPS     per frame (msec)
     [c6xdsp ]  -------------------------------------------------
     [c6xdsp ]
     [m3video]      61329: HDVICP-ID:0
     [m3video]              totalAcquire2wait in msec:      11
     [m3video]              totalWait2Isr in msec:     976
     [m3video]              totalIsr2Done in msec:       1
     [m3video]              totalWait2Done in msec:     977
     [m3video]              totalDone2Release in msec:       0
     [m3video]              totalAcquire2Release in msec:     990
     [m3video]              totalAcq2acqDelay in msec:   44273
     [m3video]              totalElapsedTime in msec:   45263
     [m3video]              numAccessCnt:      86
     [m3video]              IVA-FPS :       1
     [m3video]      61329: HDVICP-ID:1
     [m3video]              totalAcquire2wait in msec:      17
     [m3video]              totalWait2Isr in msec:     971
     [m3video]              totalIsr2Done in msec:       0
     [m3video]              totalWait2Done in msec:     971
     [m3video]              totalDone2Release in msec:       0
     [m3video]              totalAcquire2Release in msec:     988
     [m3video]              totalAcq2acqDelay in msec:   44275
     [m3video]              totalElapsedTime in msec:   45263
     [m3video]              numAccessCnt:      86
     [m3video]              IVA-FPS :       1
     [m3video]      61330: HDVICP-ID:2
     [m3video]              totalAcquire2wait in msec:       0
     [m3video]              totalWait2Isr in msec:       0
     [m3video]              totalIsr2Done in msec:       0
     [m3video]              totalWait2Done in msec:       0
     [m3video]              totalDone2Release in msec:       0
     [m3video]              totalAcquire2Release in msec:       0
     [m3video]              totalAcq2acqDelay in msec:       0
     [m3video]              totalElapsedTime in msec:       0
     [m3video]              numAccessCnt:       0
     [m3video]              IVA-FPS :       0
     [m3video]
     [m3video]  *** ENCODE Statistics ***
     [m3video]
     [m3video]  Elasped Time           : 42 secs
     [m3video]
     [m3video]
     [m3video]  CH  | In Recv In Skip In User  Out Latency
     [m3video]  Num | FPS     FPS     Skip FPS FPS Min / Max
     [m3video]  --------------------------------------------
     [m3video]    0 |       0       0        0   0 255 / 60673
     [m3video]    1 |       0       0        0   0 255 / 60673
     [m3video]    2 |       0       0        0   0 255 / 60685
     [m3video]    3 |       0       0        0   0 255 / 60685
     [m3video]
     [m3video] Multi Channel Encode Average Submit Batch Size
     [m3video] Max Submit Batch Size : 24
     [m3video] IVAHD_0 Average Batch Size : 1
     [m3video] IVAHD_0 Max achieved Batch Size : 1
     [m3video] IVAHD_1 Average Batch Size : 1
     [m3video] IVAHD_1 Max achieved Batch Size : 1
     [m3video] IVAHD_2 Average Batch Size : 0
     [m3video] IVAHD_2 Max achieved Batch Size : 0
     [m3vpss ]
     [m3vpss ]  63838: LOAD: CPU: 4% HWI: 0%, SWI:0%
     [m3vpss ]
     [m3vpss ]  63838: LOAD: TSK: SWMS0: 1%
     [m3vpss ]
     [m3video]
     [m3video]  64339: LOAD: CPU: 2% HWI: 0%, SWI:0%
     [m3video]
     [m3video]
     [c6xdsp ]
     [c6xdsp ]  63478: LOAD: CPU: 1% HWI: 0%, SWI:0%
     [c6xdsp ]
     [c6xdsp ]

    I don't  understand the information.

    My code files are attached here, I am looking forward for your help. 

    osd.tar.gz
  • Hi Badri,

      I know what the matter was. I use the function Vcap_setDynamicParamChn() in a wrong way, because I modified the RDK, so I can't use the function Vcap_setDynamicParamChn() directly.

    Thank you very much.