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.

Line moving upward in the live video

Hi,

I developed the dual channel video driver for DM365 and I am facing the issue with the line moving upward.

I generated the transport stream and obsereved that when any kind of movement is there at that time I can see the line moving in upward direction. It looks like the video buffer is not switching at proper time but I configured the correct number of line and width and all the configuration of VPIF.

I do not understand why I am getting the upward moving line. Early response is appericiated.

Thanks in advance.

Thanks,

Dilip Patel

 

 

 

  • Dilip,

    There are to places in the processing pipe that can cause this type of issue.

    1) Video encoding stage

    2) Video display stage

    To check where the issue is really occurring are you able to slow down the captured video playback? If so, if the line still appears in the displayed video during the slowed down playback, but moves much slower then the issue is in the capture side. If the line becomes such that you have much more difficulty seeing it then the issue is on the display side.

    Let me know if you can do this test and what the results are and we can go forward from there.

    BR,

    Steve

  • Hi Steve,

    Thanks for the response.

    I did the playback of generated file with VLC player and I reduced the video playback speed to 0.25X and I am still able to observe the issue. I have attached the generated transport stream if you want to look .

     

     

     

    2.zip
  • OK, this certainly looks like the capture side is the issue.

    It also looks like either the codec is accessing the source buffer or that the input is writing to the wring buffer.

    I am not too familiar with the capture drivers so do not know exactly what to check now.

    My guess is that there are either not enough buffers allocated for the capture/codec, or the handshake between the two is not configured correctly.

    As I say though, this looks like there is an overlap between the input and output buffers.

    BR,

    Steve

  • Hi,

    One more thing that can cause the issue of moving line is the position of VDINTx in the capture driver. Can you check whether the position of VDINTx is very close to the number of lines in the frame. For example, if you capture 720x480 frame size, your VDINTx should be set around 460. At this interrupt the data buffers are switched for capture driver.

    Regards,

    Anshuman

  • Anshuman,

    We can try this but I don't think this is the cause. If so then the 'line' would effectively be in a fixed position and not rolling like it is.

    This really implies that the input and codec are running asynchronously to each other rather than the codec being locked to the input.

    It is almost as if the codec is using its own timebase rather than the input source for sync operations.

    Do you have any thoughts on configuration options for the codec to make it frame locked to the input? Once it is frame locked then the setting for VDINTx would potentially help, although it would still require the codec to basically complete encoding during the blanking period unless triple buffering is correctly implemented.

    Fundamentally the issue looks like a buffer management problem.

    BR,

    Steve

  • Hi Anshuman,

    I am capturing the video frame of 728x1050. I am getting two D1(728x480) muxed from FPGA, Davinci captures it as a single frame then demux and encode both the channel separately. I set the VDINTx to 1020 lines.

     

    Thanks,

    Dilip Patel