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.

Failed to detect capture video standard

Other Parts Discussed in Thread: OMAPL138

Hi

   Using VPIF,I want to run loopback copy demo to capture camera data.

   And the device file: /dev/Video0 is existed.

  But after run command:

             ./video_loopback_copy_omapl138.x470MV -r 720x576

  I got error:

            Failed to detect capture video standard

   What problem about this?

   Thanks very much!

  • Hi Changsheng,

    Thanks for your post.

    Your video capture should be compatible to a PAL/NTSC standard camera and VPIF doesn't support ITU-BT.601 format function. Please check Table 36-1 & Table 36-2 for the supported formats on VPIF in Section 36.1.5 of OMAPL138 TRM as below:

    http://www.ti.com/lit/ug/spruh77a/spruh77a.pdf

    Kindly make sure, the above standard is met with your VPIF loopback demo setup to execute the same. You could refer the omapl138 starterware source code vpif_lcd_loopback.c to execute the vpif loopback demo in your application to capture camera data. Kindly use the below path to check VPIF loopback example after installing the omapl38 starterware package:

    ~\OMAPL138_StarterWare_1_10_03_03\examples\lcdkOMAPL138\vpif_lcd_loopback\vpif_lcd_loopback.c

    Thanks & regards,
    Sivaraj K

    -------------------------------------------------------------------------------------------------------
    Please click the Verify Answer button on this post if it answers your question.
    -------------------------------------------------------------------------------------------------------
  • Hi Sivaraj:

        Thanks very much!

        I will check and try it.

        I want to process raw data in dsp, and share to ARM, Using Startware, is it possible to do it? Can you give me some good idear?

        Thanks.

  • In function:Capture_detectVideoStd

    goto this:

    /* Display available video standards */
    Dmai_dbg0("Available video standard:\n");
    for (index=0;; index++) {

    std.frameperiod.numerator = 1;
    std.frameperiod.denominator = 0;
    std.index = index;

    if (ioctl(fd, VIDIOC_ENUMSTD, &std) < 0) {
    printf("Capture_detectVideoStd emum fail 0\n");
    if (errno == EINVAL || errno == ENOTTY)
    {
    printf("Capture_detectVideoStd emum fail\n");
    break;
    }
    }
    printf ("Current video standard: %d-%s\n", std.name, std.index);
    ...
    }

    ....

    /* Set the video standard */

    if (ioctl(fd, VIDIOC_S_STD, &id) < 0) {

    ...

    }

    will cause error:

    Failed to detect capture video standard

    VIDIOC_ENUMSTD VIDIOC_G_STD VIDIOC_S_STD for ioctl is FAIL!  Is these command is different with different CHIP(I using 9900)?

    Who can help me to resolv this problem?

    Thanks very much!