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.

Video Capture problem with DM642

I am using a custom board with DM642 and 3 video ports exposed as sockets where we can insert video digitizer boards using Philips SA7115 decoder chip. We can insert one or more digitizer boards into the sockets. When more that one card is installed we can initialize and use any one or more of them to capture video through software configuration.

When only ONE board is inserted to either VP0 or VP1 we can get stable video from that port. When we insert TWO digitizer boards in VP0 and VP1, and software configure to capture from VP0 only, the video is still stable. But when  we software configure to capture from VP1 (instead of VP0) the video starts to shift downwards by a few pixels every frame. It appears that there is an overrun on VP1 when a card in inserted in VP) (whether it is used or not) and we have to call FVID_control(fp->handle, VPORT_CMD_COVR_RECOVER, NULL) on every frame to minimize and correct the shifting. Even with this call the frames still moves slightly giving an unstable and almost unusable image.

Can anyone explain why it happens on VP1 and not VP0? And only happen on VP1 when there is a board in VP0 (used or not)?

  • Usually a downward shift like this would be due to a driver misconfiguration, a bad count/offset in the EDMA servicing the video port (which you reset with COVR_RECOVER), so the first thing I would is look through the driver software to ensure your EDMAs are being handled properly. My suspicion would be that there is some software issue where the VP0 card is detected causing the VP1 driver configuration to no longer be the same.

    I am assuming that the three sockets in this case are the same for each video port, and that the SAA7115 cards are interchangable between the sockets and that this happens regardless of which particular SAA7115 card is used in VP1.

  • I agree with Bernie's assessment that this looks like an invalid EDMA configuration. If the EDMA is attempting to capture too much or too little data (most likely too little in this scenario) you start to see a slow shift of data as pieces of other frames fill in the gaps. Double-check all of your configuration for the VP1 including VP registers as well as the EDMA PaRAM sets used to service this port.