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 Decoder TVP5146 component video input standard not detected

Expert 1130 points
Other Parts Discussed in Thread: TVP5146

I modified the video inputs to the DVEVM6446 to accept component video inputs. I'm getting the message "VIDIOC_QUERYSTD failed on /dev/video0  Video Input connected?" I'm running the encoded (debug) application by entering the command > ./encoded -v video.264 -s audio.g711 -l -xn -t 20     I modified main.c in order to expand the -x argument to accept component video input.

The ./drivers/media/video/davinci/ tvp5146.c code in LSP 1.30.1.41it checks for the Color subcarrier, (see code below) Vertical and Horizontal sync lock signals in the Status 1 Register (3Ah).  Do these lock signals apply for component video or are they only for composite and SVideo input signals? What lock signals should be checked for component video?

 

Mike

----------------------------------------------------------------code snippet-----------------------------------------

/*
 * ========  gettvp5146std ========
 */
 /* This function returns detected TVP5146 input standard */
static int gettvp5146std(tvp5146_mode * mode)
{
    int ret = 0;
    u8 output1;
    u8 std;
    u8 lock_status;

    dev_dbg(tvp5146_i2c_dev, "\nStarting of gettvp5146std...");
    ret |= i2c_read_reg(&tvp5146_i2c_client, 0x2, &std);
    std &= 0x7;
    if (std == TVP5146_MODE_AUTO) {
        ret |= i2c_read_reg(&tvp5146_i2c_client, 0x3F, &std);
    }
    std &= 0x7;
    ret |= i2c_read_reg(&tvp5146_i2c_client, 0x33, &output1);
    *mode = std | ((output1 & 0x80) >> 4);    /* square pixel status */
    ret |= i2c_read_reg(&tvp5146_i2c_client, 0x3A, &lock_status);
    if ((lock_status & 0xe) != 0xe) {
        /* not quite locked */
       ret = -EAGAIN;
    }
    dev_dbg(tvp5146_i2c_dev, "\nEnd of gettvp5146std...");
    return ret;
}

  • To answer your question, video sync (use to lock video) information also applies to component video.  In RGB component video this information is present in the Green component; similarly, in YPbPr component video, this information is present in the luma (Y) component.

    Did you build your own board (our DM6446 EVM does not have component video input connectors)?

    Also, what is your component video input resolution?  It appears only 525 and 625 component video would be detected.

    Finally, we do have an TVP5146 EVM along with software that supports component video input and allows your to change register settings and test very easily.

    http://focus.ti.com/docs/toolsw/folders/print/tvp5146evm.html

     

  • Juan Gonzales said:

    To answer your question, video sync (use to lock video) information also applies to component video.  In RGB component video this information is present in the Green component; similarly, in YPbPr component video, this information is present in the luma (Y) component.

    Did you build your own board (our DM6446 EVM does not have component video input connectors)?

    Also, what is your component video input resolution?  It appears only 525 and 625 component video would be detected.

    Finally, we do have an TVP5146 EVM along with software that supports component video input and allows your to change register settings and test very easily.

    http://focus.ti.com/docs/toolsw/folders/print/tvp5146evm.html

     

     

    I didn't build our own DVEVM6446 board. I modified the board to accept YPbPr input. I'm using the YPbPr output of a DVD payer.

     

    Mike