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.

got event*** unrecoverable error: XXX

Other Parts Discussed in Thread: TVP7002

Hi,

I am trying to run the capture_encode application after n frames of capture I get following errors, any pointers on

what could be the issue.

....

tearing down the capture-encode example
 exiting thread
 exiting thread
 exiting thread
 exiting thread
 got eventState changed to: OMX_StateIdle
 DEI state idle
 got eventState changed to: OMX_StateIdle
 display state idle
 got eventState changed to: OMX_StateIdle
 display control state idle
 got eventState changed to: OMX_StateIdle
 Encoder state idle
 got eventState changed to: OMX_StateLoaded
 display state loaded
 got eventState changed to: OMX_StateLoaded
 ctrl-dc state loaded
 got eventState changed to: OMX_StateLoaded
 encoder state loaded
 got eventState changed to: OMX_StateLoaded
 dei state loaded
 got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x80001017)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed

Thanks And Regards,

Mike

 tearing down the capture-encode example
 exiting thread
 exiting thread
 exiting thread
 exiting thread
 got eventState changed to: OMX_StateIdle
 DEI state idle
 got eventState changed to: OMX_StateIdle
 display state idle
 got eventState changed to: OMX_StateIdle
 display control state idle
 got eventState changed to: OMX_StateIdle
 Encoder state idle
 got eventState changed to: OMX_StateLoaded
 display state loaded
 got eventState changed to: OMX_StateLoaded
 ctrl-dc state loaded
 got eventState changed to: OMX_StateLoaded
 encoder state loaded
 got eventState changed to: OMX_StateLoaded
 dei state loaded
 got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x80001017)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed
got event*** unrecoverable error: <unknown> (0x8000101c)
Press a key to proceed

  • Hello,

    Could you attach the full trace log?
    What changes you have done in the demo also?

    BR
    Margarita
  • Hi Margarita,

    Since I am using the fpga for capturing I have following mods to the application, also I see that it records .264 but when I try and play the file with mplayer it is just raw pixels no proper video any pointers on that ?

    Thanks And Regards,
    Mike

    Index: ezsdk-5_05_02_00/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient.c
    ===================================================================
    --- ezsdk-5_05_02_00.orig/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient.c 2012-12-20 09:11:19.000000000 -0600
    +++ ezsdk-5_05_02_00/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient.c 2013-06-14 14:32:54.983722649 -0600
    @@ -723,6 +723,7 @@

    pAppData->capILComp->handle = pAppData->pCapHandle;

    +#if USE_TVP
    /* This is control component, without ports. It is implemented as OMX
    component */
    eError =
    @@ -738,6 +739,7 @@
    IL_ClientErrorToStr (eError));
    goto EXIT;
    }
    +#endif

    /* Configute the capture componet */
    /* calling OMX_Setparam in this function */
    @@ -908,13 +910,13 @@
    OMX_VFPC_OUTPUT_PORT_START_INDEX,
    pAppData->disILComp,
    OMX_VFDC_INPUT_PORT_START_INDEX);
    -
    + printf("HERE 1\n");
    /******************************************************************************/

    /* OMX_SendCommand expecting OMX_StateIdle, after this command component will
    wait for all buffers to be allocated as per omx buffers are created during
    loaded to Idle transition IF ports are enabled ) */
    -
    +#if USE_TVP
    eError =
    OMX_SendCommand (pAppData->pTvpHandle, OMX_CommandStateSet,
    OMX_StateIdle, NULL);
    @@ -926,10 +928,12 @@
    }

    semp_pend (pAppData->capILComp->done_sem);
    -
    +#endif
    + printf("HERE 2\n");
    eError =
    OMX_SendCommand (pAppData->pCapHandle, OMX_CommandStateSet,
    OMX_StateIdle, NULL);
    + printf("HERE 3\n");
    if (eError != OMX_ErrorNone)
    {
    printf ("Error in SendCommand()-OMX_StateIdle State set : %s \n",
    @@ -1221,7 +1225,7 @@
    semp_pend (pAppData->capILComp->done_sem);

    printf (" capture state execute \n ");
    -
    +#if USE_TVP
    eError =
    OMX_SendCommand (pAppData->pTvpHandle, OMX_CommandStateSet,
    OMX_StateExecuting, NULL);
    @@ -1232,10 +1236,11 @@
    goto EXIT;
    }

    +
    semp_pend (pAppData->capILComp->done_sem);

    printf (" capture control ( TVP ) state execute \n ");
    -
    +#endif
    /******************************************************************************/

    /* Create thread for writing bitstream and passing the buffers to encoder
    @@ -1347,6 +1352,7 @@
    semp_pend (pAppData->capILComp->done_sem);
    printf (" capture state idle \n ");

    +#if USE_TVP
    /* change state to idle so that buffers processing would stop */
    eError =
    OMX_SendCommand(pAppData->pTvpHandle, OMX_CommandStateSet,
    @@ -1357,10 +1363,10 @@
    IL_ClientErrorToStr(eError));
    goto EXIT;
    }
    -
    +
    semp_pend(pAppData->capILComp->done_sem);
    printf(" control tvp state idle \n ");
    -
    +#endif

    /* change state to idle so that buffers processing can stop */
    eError =
    @@ -1584,6 +1590,7 @@

    printf (" capture state loaded \n ");

    +#if USE_TVP
    /* ctrl tvp component does not alloc/free any data buffers, It's interface
    is though as it is omx componenet */
    eError =
    @@ -1595,10 +1602,11 @@
    IL_ClientErrorToStr(eError));
    goto EXIT;
    }
    -
    +
    semp_pend(pAppData->capILComp->done_sem);

    printf(" ctrl-tvp state loaded \n ");
    +#endif

    /******************************************************************************/

    @@ -1613,6 +1621,7 @@
    }
    printf (" capture free handle \n");

    +#if USE_TVP
    eError = OMX_FreeHandle(pAppData->pTvpHandle);
    if ((eError != OMX_ErrorNone))
    {
    @@ -1622,6 +1631,7 @@
    }

    printf(" ctrl-tvp free handle \n");
    +#endif

    eError = OMX_FreeHandle (pAppData->pEncHandle);
    if ((eError != OMX_ErrorNone))
    Index: ezsdk-5_05_02_00/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient.h
    ===================================================================
    --- ezsdk-5_05_02_00.orig/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient.h 2012-12-20 09:11:19.000000000 -0600
    +++ ezsdk-5_05_02_00/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient.h 2013-06-14 13:49:37.983712681 -0600
    @@ -53,7 +53,7 @@
    extern "C"
    { /* be compiled by a C++ compiler */
    #endif
    -
    +#define USE_TVP 0
    #define IL_CLIENT_MAX_NUM_IN_BUFS 16
    #define IL_CLIENT_MAX_NUM_OUT_BUFS 16

    @@ -188,8 +188,13 @@
    /* ========================================================================== */
    typedef struct IL_Client
    {
    +#if USE_TVP
    OMX_HANDLETYPE pCapHandle, pDeiHandle, pDisHandle, pctrlHandle, pTvpHandle,
    pEncHandle;
    +#else
    + OMX_HANDLETYPE pCapHandle, pDeiHandle, pDisHandle, pctrlHandle,
    + pEncHandle;
    +#endif
    OMX_COMPONENTTYPE *pComponent;
    OMX_CALLBACKTYPE pCb;
    OMX_STATETYPE eState;
    Index: ezsdk-5_05_02_00/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient_utils.c
    ===================================================================
    --- ezsdk-5_05_02_00.orig/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient_utils.c 2012-12-20 09:11:19.000000000 -0600
    +++ ezsdk-5_05_02_00/ezsdk/component-sources/omx_05_02_00_48/examples/ti/omx/demos/capture_encode/src/ilclient_utils.c 2013-06-14 13:39:16.643710296 -0600
    @@ -63,6 +63,7 @@
    #include <OMX_TI_Index.h>
    /*---------------------- function prototypes ---------------------------------*/
    /* None */
    +#define USE_TVP 0

    void usage (IL_ARGS *argsp)
    {
    @@ -1017,15 +1018,15 @@
    (OMX_INDEXTYPE) OMX_TI_IndexConfigVFCCFrameSkip,
    (OMX_PTR) & sCapSkipFrames);
    }
    -
    +#if USE_TVP
    /* Set parameters for TVP controller */
    -
    OMX_INIT_PARAM (&sHwPortId);
    /* capture on EIO card is component input at VIP1 port */
    sHwPortId.eHwPortId = OMX_VIDEO_CaptureHWPortVIP1_PORTA;
    eError = OMX_SetParameter (pAppData->pTvpHandle,
    (OMX_INDEXTYPE) OMX_TI_IndexParamVFCCHwPortID,
    (OMX_PTR) & sHwPortId);
    +
    OMX_INIT_PARAM (&sHwPortParam);
    sHwPortParam.eCaptMode = OMX_VIDEO_CaptureModeSC_NON_MUX;
    sHwPortParam.eVifMode = OMX_VIDEO_CaptureVifMode_16BIT;
    @@ -1047,7 +1048,7 @@
    (OMX_INDEXTYPE)
    OMX_TI_IndexParamVFCCHwPortProperties,
    (OMX_PTR) & sHwPortParam);
    -
    +
    OMX_INIT_PARAM (&sVidDecParam);

    /* set the mode based on capture/display device */
    @@ -1076,6 +1077,7 @@
    (OMX_PTR) & sVidDecParam);
    if (eError != OMX_ErrorNone)
    ERROR ("failed to set Ctrl Vid dec info \n");
    +#endif

    return (eError);
    }
  • Hello,

    You are seeing this error got event*** unrecoverable error: <unknown> (0x8000101c) when you are tearing down the capture encode demo, correct?

    You also not using control component in the capture_encode demo, correct?

    Could you attach then encoded video h264 video and the full debug log?

    BR
    Margarita
  • Hi Margarita,

    Please find the attached logs.

    Thanks And Regards,

    Mike

    5775.log.txt

    output file: sample.h264
    bit_rate: 1000000
    frame_rate: 30
    num_frames: 10
    mode: 1080p
    display_id: 0
     Capture-Encode example 
    ===============================
     OMX_Init completed 
     UIAClient is ready to send a UIA configuration command
    UIAClient received UIA_CONFIGURE_ACK
    UIAClient is done sending requests
    UIAClient is ready to send a UIA configuration command
    UIAClient received UIA_CONFIGURE_ACK
    UIAClient is done sending requests
     openeing file 
     capture compoenent is created 
    Buffer Size computed: 3110400
    set input port params (width = 1920, height = 1080) applying skip mask 
    enable capture output port 
    got eventEnable/Disable Event 
     dei compoenent is created 
    set input port params (width = 1920, height = 1080) 
    set output port params (width = 1920, height = 1080)set output port params (width = 1920, height = 1080)set number of channelsset input resolutionset out 
    got eventEnable/Disable Event 
    enable dei output port 0 
    got eventEnable/Disable Event 
    enable dei output port 1 
    got eventEnable/Disable Event 
     encoder compoenent is created 
    found handle 0xfbcc8 for component OMX.TI.VPSSM3.VFDC 
     got display handle 
    found handle 0xffcd0 for component OMX.TI.VPSSM3.CTRL.DC
    Buffer Size computed: 4147200
    set input port params (width = 1920, height = 1080)setting input and output memory type to defaultenable input port 
    got eventEnable/Disable Event 
     connect call for capture-Dei 
      connect call for dei- encoder 
      connect call for dei-display 
      Capture outport buffers allocated 
     got eventState changed to: OMX_StateIdle 
     Capture is in IDLE state 
     Dei input port use buffer done 
      DEI outport buffers allocated 
     got eventState changed to: OMX_StateIdle 
     DEI is in IDLE state 
     encoder input port use buffer done 
      encoder outport buffers allocated 
     got eventState changed to: OMX_StateIdle 
     Encoder state IDLE 
     got eventState changed to: OMX_StateIdle 
     ctrl-dc state IDLE 
      display buffers allocated 
     waiting for IDLEgot eventState changed to: OMX_StateIdle 
     display state IDLE 
     got eventState changed to: OMX_StateExecuting 
     display control state execute 
     got eventState changed to: OMX_StateExecuting 
     display state execute 
     got eventState changed to: OMX_StateExecuting 
     encoder state execute 
     got eventState changed to: OMX_StateExecuting 
     dei state execute 
     got eventState changed to: OMX_StateExecuting 
     capture state execute 
      file write thread created 
      encode connect thread created 
      dei connect thread created 
      capture connect thread created 
      display connect thread created 
      executing the application now!! 
     Frame counter: 1 
     Frame counter: 2 
     Frame counter: 3 
     Frame counter: 4 
     Frame counter: 5 
     Frame counter: 6 
     Frame counter: 7 
     Frame counter: 8 
     Frame counter: 9 
     Frame counter: 10 
     tearing down the capture-encode example
     exiting thread 
     exiting thread 
     exiting thread 
     exiting thread 
     got eventState changed to: OMX_StateIdle 
     DEI state idle 
     got eventState changed to: OMX_StateIdle 
     display state idle 
     got eventState changed to: OMX_StateIdle 
     display control state idle 
     got eventState changed to: OMX_StateIdle 
     Encoder state idle 
     got eventState changed to: OMX_StateLoaded 
     display state loaded 
     got eventState changed to: OMX_StateLoaded 
     ctrl-dc state loaded 
     got eventState changed to: OMX_StateLoaded 
     encoder state loaded 
     got eventState changed to: OMX_StateLoaded 
     dei state loaded 
     got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x80001017) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    got event*** unrecoverable error: <unknown> (0x8000101c) 
    Press a key to proceed
    ^C^Z
    sample.txt

  • Hi Margarita,

    1: Yes the application at the end by default does the tear down I suspect.
    2: Yes I am not using the control component.
    3: sample.txt needs to be renamed .264

    Thanks And Regards,
    Mike
  • Hello,

    In the log it seems that the VFCC reports ErrorIncorrectStateTransition error when you are trying to tear down. I would recommend you to look into changes you have did. You could check the format that you are using as well.

    BR
    Margarita

  • Hi Margarita,

    In my case the fpga is giving same format as tvp7002 decoder to vip (embedded syncs with yuv 420).

    Thanks And Regards,
    Mike
  • Hi,

    Not yuv420, I meant OMX_COLOR_FormatYCbYCr (YUV422 16 bit) with Embedded syncs, since the vip driver is getting the embedded syncs correct I suspect its getting proper frames (since app proceeds to capture data ?

    Thanks And Regards,
    Mike
  • Hello,

    Could you check the stream before to fed the encoder component.

    BR
    Margarita
  • Hi Margarita,

    Yes I can see the camera feed onto the TV screen before feeding to the vip.

    Thanks And Regards,
    Mike