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.

Why OMX dec commponent can not transition from EXECUTING to IDLE

Hi, Experts

I use the EZSDK5.2.1.59 OMX dec commponent to decode a file. After the file is ended, I set the commponent state to IDLE as follows:

            OMX_SendCommand(pOmxTiDecChan->pHandle, OMX_CommandStateSet, OMX_StateIdle, NULL);
        if (eError != OMX_ErrorNone)
        {
            printf("Error from SendCommand-Idle State set : %s \n",
                   getDecoderErrorString(eError));
        }

        eError = waitForState(pOmxTiDecChan, pOmxTiDecChan->pHandle, OMX_StateIdle);
        if (eError != OMX_ErrorNone)
        {
            printf("Error %s\n",
                   getDecoderErrorString(eError));
        }

But the state can not be set to IDLE, the log show:

Error OMX_ErrorUndefined

 

And I try to use loggerSMDump.out to observe the log on HDVICP Controler as follows:

./loggerSMDump.out 0xaf000000 video

but it did not work as on EZSDK pre version, does the parameter need to be changed?

 

  • Hi,

    PLease use -

    ./loggerSMDump.out 0x9e400000 video

    I suspect the VDEC is returning some error while decoding the stream. You can do couple of things -

    1. Use loggerSMDump as just mentioned

    2. If not done already, put a print in the case "OMX_EventError" in the EventHandler function - to see if this is getting invoked

    Regards,

    Anirban

  • Thanks Anirban.

    I tried to set state to idle again and success, when the first setting failed. 

    I doubt if the decoder on Video-M3 still work, it can not transimition from EXECUTING to IDLE. It must try again, is it right?

     

  • Hi,

    There is nothing like trying 'again'. It should work the very first time. Please check the logs to see if there is anything suspicious - like error reported from Video-M3

    Regards,

    Anirban

  • hi, Anirban

    The error id of client got is OMX_ErrorUndefined = (OMX_S32) 0x80001001;

    And please check the log from loggerSMDump:

    N:Video P:1 #:03899 T:000005c4|eebc3b55 S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_SendCommand> @line<472>
    N:Video P:1 #:03900 T:000005c4|eebce25d S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_SendCommand> @line<638> with error<0:ErrorNone>
    N:Video P:1 #:03901 T:000005c4|eebdeddf S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_CmdEventHandler> @line<437>
    N:Video P:1 #:03902 T:000005c4|eebe692f S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_PROCESS_CmdEvent> @line<528>
    N:Video P:1 #:03903 T:000005c4|eebec19b S:Module<OMX.TI.DUCATI.VIDDEC> @<OMX_BASE_PROCESS_CmdEvent> @line<540> msg<Processing OMX_CommandStateSet>
    N:Video P:1 #:03904 T:000005c4|eebf5405 S:OMX_TI_VIDDEC_CommandNotify::Line 2306::VDEC->Executing to Idle Transition Begin
    N:Video P:1 #:03905 T:000005c4|eec086a5 S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_SendCommand> @line<472>
    N:Video P:1 #:03906 T:000005c4|eec2871b S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_SendCommand> @line<638> with error<-2147479529:ErrorIncorrectStateTransition>
    N:Video P:1 #:03908 T:000005c4|eec85fe1 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03907 T:000005c4|eec77d27 S:OMX_TI_VIDDEC_CommandNotify::Line 2318::buffer 0xb3ec24a0::exe-Idle Before Reset Input fpDioSend
    N:Video P:1 #:03909 T:000005c4|eed5d92d S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03910 T:000005c4|eed8ff07 S:OMX_TI_VIDDEC_CommandNotify::Line 2318::buffer 0xb3fa36a0::exe-Idle Before Reset Input fpDioSend
    N:Video P:1 #:03911 T:000005c4|eedc0f29 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03913 T:000005c4|eee1ba9d S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03912 T:000005c4|eee0d5ed S:OMX_TI_VIDDEC_CommandNotify::Line 2318::buffer 0xb3d000a0::exe-Idle Before Reset Input fpDioSend
    N:Video P:1 #:03914 T:000005c4|eee75843 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03915 T:000005c4|eeeba44d S:OMX_TI_VIDDEC_CommandNotify::Line 2318::buffer 0xb3de12a0::exe-Idle Before Reset Input fpDioSend
    N:Video P:1 #:03916 T:000005c4|eeecc5f8 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03917 T:000005c4|eeee6b0d S:OMX_TI_VIDDEC_Process::Line 1615::VDEC->Before VIDDEC3_control XDM_RESET Command
    N:Video P:1 #:03918 T:000005c4|eef0c68d S:StopInstance: HDVICP_0
    N:Video P:1 #:03919 T:000005c4|eef1b171 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03920 T:000005c4|eef3572d S:OMX_TI_VIDDEC_Process::Line 1636::VDEC->VIDDEC3_control XDM_RESET Command Successful
    N:Video P:1 #:03921 T:000005c4|eef57a35 S:OMX_TI_VIDDEC_Process::Line 1682::VDEC->VIDDEC3_control XDM_RESET Command Complete
    N:Video P:1 #:03923 T:000005c4|eef695b9 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03922 T:000005c4|eef5eddb S:OMX_TI_VIDDEC_Process::Line 1798::buffheader 0xb4718180::After Reset-Output fpDioCancel bufheader
    N:Video P:1 #:03924 T:000005c4|eef82809 S:OMX_TI_VIDDEC_Process::Line 1832::VDEC->Before OMX_EventCmdComplete Notify
    N:Video P:1 #:03925 T:000005c4|eef876c7 S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_CB_ReturnEventNotify> @line<100>
    N:Video P:1 #:03926 T:000005c4|eefa6205 S:Module<OMX.TI.DUCATI.VIDDEC> @<OMX_BASE_CB_ReturnEventNotify> @line<115> msg<Notify client for state transition>
    N:Video P:1 #:03928 T:000005c4|eefb7a19 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03927 T:000005c4|eefae2db S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_CB_ReturnEventNotify> @line<221> with error<0:ErrorNone>
    N:Video P:1 #:03929 T:000005c4|eefd49c7 S:OMX_TI_VIDDEC_Process::Line 1844::VDEC->OMX_EventCmdComplete Notify Done
    N:Video P:1 #:03930 T:000005c4|eeff281d S:OMX_TI_VIDDEC_CommandNotify::Line 2334::VDEC->Executing to Idle Transition End
    N:Video P:1 #:03931 T:000005c4|ef002c21 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03932 T:000005c4|ef0182df S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_PROCESS_CmdEvent> @line<786> with error<0:ErrorNone>
    N:Video P:1 #:03933 T:000005c4|ef01f4c5 S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_CmdEventHandler> @line<468> with error<0:ErrorNone>
    N:Video P:1 #:03934 T:000005c4|ef03ee17 S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_CmdCompleteEventHandler> @line<485>
    N:Video P:1 #:03936 T:000005c4|ef050929 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03935 T:000005c4|ef044c49 S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_PROCESS_CmdCompleteEvent> @line<811>
    N:Video P:1 #:03937 T:000005c4|ef0692f3 S:Module<OMX.TI.DUCATI.VIDDEC> @<OMX_BASE_PROCESS_CmdCompleteEvent> @line<823> msg<Processing OMX_CommandStateSet>
    N:Video P:1 #:03938 T:000005c4|ef086d7b S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_DIO_Control> @line<446>
    N:Video P:1 #:03940 T:000005c4|ef09cd17 S:Entered Function :omxrpc_skel_freebuffer
    N:Video P:1 #:03939 T:000005c4|ef08e4b3 S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_DIO_Control> @line<452> with error<0:ErrorNone>
    N:Video P:1 #:03941 T:000005c4|ef0b35a3 S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_DIO_Control> @line<446>
    N:Video P:1 #:03942 T:000005c4|ef0b9eff S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_DIO_Control> @line<452> with error<0:ErrorNone>
    N:Video P:1 #:03943 T:000005c4|ef10c55b S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_GetState> @line<338>
    N:Video P:1 #:03944 T:000005c4|ef11279d S:Entering OMX_BASE_GetState (0x9d9d7bf0, 0x9f705954)
    N:Video P:1 #:03945 T:000005c4|ef11739b S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_GetState> @line<353> with error<0:ErrorNone>
    N:Video P:1 #:03946 T:000005c4|ef1337e7 S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_PROCESS_CmdCompleteEvent> @line<932> with error<0:ErrorNone>
    N:Video P:1 #:03947 T:000005c4|ef13a44f S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_CmdCompleteEventHandler> @line<498> with error<0:ErrorNone>
    N:Video P:1 #:03948 T:000005c4|ef142a05 S:Module<OMX.TI.DUCATI.VIDDEC> Entering<OMX_BASE_CmdEventHandler> @line<437>
    N:Video P:1 #:03949 T:000005c4|ef148cc1 S:Module<OMX.TI.DUCATI.VIDDEC> Leaving<OMX_BASE_CmdEventHandler> @line<468> with error<0:ErrorNone>