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.

Horizontal stripes on DM3730, sammaploopback, NTSC, CVBS

Other Parts Discussed in Thread: DM3730, TVP5150

Hi,

I am working with Mistral EVM on DM3730, i am using ti-dvsdk_dm3730-evm_4_02_00_06, when i am running the example saMmapLoopback with NTSC input via CVBS or S-VIdeo connectors, my output is via DVI to LCD. On the LCD display i see horizontal stripes looks like interlacing effect. Is there is a way to avoid this problem?

Thanks,
Gabi

  • Hi Gabi,

    Could you give more details about the horizontal stripes? Is the issue appear only using saMmapLoopback example? 

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin,

    Thanks for your quick respond.
    I have tested only with saMmapLoopback example, is there any other psp example for video loop that i can test with?

    Thanks,
    Gabi

  • Gabi,

    The video_loopback_dm3730.x470MV example application is part of the DVSDK psp. It does video loopback from composite input to LCD or DVI output. There is an example for video_loopback_dm3730.x470MV usage:

    target # ./video_loopback_copy_dm3730.x470MV -O lcd -I composite

    You can find description about loopback examples in the TMS320DM3730 Software Developers Guide at the link:

    http://downloads.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/dvsdk/DVSDK_4_00/latest/exports/TMS320DM3730_Software_Developers_Guide.pdf

    or int the docs folder of the DVSDK.

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin,

    Thanks for your link, i have tested with the command line you have suggested

     ./video_loopback_copy_dm3730.x470MV -O lcd -I composite

    i think that there are no stripes there but i am not sure because it is a small LCD i think it is 4"
    i have also tested with the following command line:

    ./video_loopback_copy_dm3730.x470MV -O dvi -I composite

    The same stripes i saw before appear, usually they appear when there is a lot of movement on the video flow.
    Please advice.

    Thanks,
    Gabi

  • Hi Gabi,

    I have checked the video output via DVI and LCD with composite input using the video_loopback_dm3730.x470MV test but I didn't see any artifacts or horizontal stripes. I only could guess the when you see horizontal stripes at the output screen this due to some noise in the input composite line. It should be helpful if you make a photo to the screen with these horizontal stripes and that I could see what you observe.

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin,

    Please see the stripes in the photo from the screen. This is with CVBS input of NTSC video with the command

    ./video_loopback_copy_dm3730.x470MV -O dvi -I composite

    Gabi

  • Gabi,

    Now when I see the photo I understood the issue. These stripes due to interlaced input video signal. The issue is more noticeable when playing video with fast moving objects. This explain why I didn't observed the issue in my previous test playing static pictures with PAL.

    This is some kind of disadvantage of the current implementation of the TVPxxxx driver but I'm wondering that this effect is appeared so strongly or the posted image is zoomed.

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin,

    Thanks for your quick respond, the photo is a little zoomed but the stripes are very noticeable even without zooming.
    Is there anything i can do to avoid these stripes? My product will be unacceptable this way.

    Thanks,
    Gabi

  • Hi Gabi,

    It is possible to make some improvement of the video output if you implement some deinterlacing algorithm in the TVP5xxx driver but it seem very complicated work. This is the main disadvantage of the current implementation.

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin,

    I am very confused now, if this phenomena is well known to TI and TI has a known solution/workaround for it, why doesn't TI publish a patch or a new TVP5xxx driver to customer who are interested in it?
    Can you please elaborate more about this deinterlacing algorithm? where does this algorithm is implemented? is it implemented on ARM or on special HW? does it require heavy computational load?
    Can you please help me in getting this solution?

    Thanks,
    Gabi

  • Dear Tsvetolin,

    Can you please refer to my questions?

    Thanks,
    Gabi

  • Hi Gabi,

    Sorry for the delay but I have searched for information about an workaround. I'm not familiar with the interlaces algorithm but at the link below there is an attempt for some kind of workaround which minimize the effect of the issue.

    http://git.linuxtv.org/media_tree.git

    This is not TI's release but as far as I know the issue is due to incorrect synchronization of the odd and even sub frames.

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin,

    I have downloaded the v4l-dvd files from the git repository you have sent me and found out that the following files that match the string tvp5** are:

    tvp514x.c  and   tvp5150.c

    I also have observed the differences in the v4l-dvd files compared to those of the dvsdk of the dm 3730 and saw that there are too many differences for me to handle with.
    Can you please guide me which file is relevant? Maybe both are? And which functions in those files should I merge.

    Thanks,
    Gabi

  • The right file for the Mistral's EVM-DM3730 board is tvp514x.c but I suggest you to search for an object file tvp514x.o in the ..linux/drivers/media/video after kernel compilation to be sure that this is the right file. Also look at the v4l-dvd files differences with your sources.

    BR

    Tsvetolin Shulev

  • OK, thanks a lot for your help, the object file is called tvp514x-int.o and there is a source file called tvp514x-int.c which is a modification of TI for the tvp514x.c file and the merge should be done with this file.
    I will try to perform the merge and will update you when i am done.

    BR,
    Gabi

  • Hi Tsvetolin,

    I have been looking very carefully at the two files tvp514x.c that came from the git repository and tvp514x-int.c that came from dvsdk psp files, and i find out that the differences are two big for me to perform a merge in these conditions, I need some more help here please. I am using ti-dvsdk_dm3730-evm_4_02_00_06, can you please tell me what was the git version of the file tvp514x.c that TI used for that dvsdk? Maybe I will be able to compare the latest git version with the version used by TI and understand what differences should be made to tvp514x-int.c?
    Do you have any idea that might help?

    Thanks,
    Gabi

  • Hi Tsvetolin,

    I have succeeded in compiling my new tvp514x-int.c in the kernel, i did as follows: i took the file tvp514x.c as it came from v4l-dvd git and renamed it to tvp514x-int.c I also needed to add the files v4l2-async.c v4l2-ctrls.c v4l2-event.c needed by the new tvp514x-int.c these files were also taken from the same v4l-dvd git.
    Now i have a new kernel which loads successfully, the problem now is that the video example is not running at all, when trying to run it i get the following error:

    Cannot open = /dev/video0 device
    Error in opening capture device for channel 0

    Can you please advice?

    Thanks,
    Gabi