[FFmpeg-devel] avcodec's h264 decoder dont gets pic

Fateh SABAH sabah.fateh
Tue Oct 21 09:15:27 CEST 2008


I am trying to use the avcodec's h264 decoder to decode an x264 rtp stream,

the incoming rtp stream depacketing is done using my own module. the
depacketization module starts output h264 access units once it receives sps
and pps.

once the depack module starts output frames, the avcodec h264 decoder is
initialized and the extradata and extradata_size members get filled with the
avcC constructed based on the profile-level-id and the recieved sps and pps.
the avcodeccontext is set as follows:

        m_pContext->width            = pProps->GetWidth();
        m_pContext->height            = pProps->GetHeight();
        m_pContext->time_base.num    = 1;
        m_pContext->time_base.den    =  pvCodecParams->GetFrameRate():

        m_pContext->extradata_size    = pDsi->GetBinaryDataLength();
        m_pContext->extradata        = new uint8[m_pContext->extradata_size

        memcpy(m_pContext->extradata, pDsi->GetBinaryData(),
        memset(m_pContext->extradata + m_pContext->extradata_size, 0,

            m_pContext->hurry_up = 1;
            m_pContext->error_resilience = FF_ER_COMPLIANT;
            m_pContext->error_concealment= FF_EC_GUESS_MVS;
            m_pContext->skip_top   = 0;
            m_pContext->skip_bottom= 0;
            m_pContext->skip_loop_filter = AVDISCARD_DEFAULT;
            m_pContext->skip_idct = AVDISCARD_DEFAULT;
            m_pContext->skip_frame = AVDISCARD_DEFAULT;
            m_pContext->stream_codec_tag= '462h';

when opening the h264 decoder, no error is signaled. also, when decoding, it
seems that the decoder acceptes and decodes correctely the stream (no error
niether warning log messages). however, the decoder never sets the got_pic
(always sets to 0).

I also tried to change the avcontext configuration.

any idea, please help

thank you by advance


More information about the ffmpeg-devel mailing list