ffmpeg转码,av_read_frame读取一帧,发现pts、dts和pos都为-1,导致花屏

if (av_read_frame(m_stCodecCtx.m_pstInputAvFmtCtx, &m_stCodecCtx.m_stPktBeforeDecode) < 0)
{
LOG_ERROR << "codec [" << m_strName << "] read frame failed, break";
break;
}

    printf("\nav_read_frame size %d pts %d-%d strindex %d",m_stCodecCtx.m_stPktBeforeDecode.size,m_stCodecCtx.m_stPktBeforeDecode.pts,m_stCodecCtx.m_stPktBeforeDecode.dts,m_stCodecCtx.m_stPktBeforeDecode.stream_index);
    printf(" flag %d pos %d dur %d\n",m_stCodecCtx.m_stPktBeforeDecode.flags,m_stCodecCtx.m_stPktBeforeDecode.pos,m_stCodecCtx.m_stPktBeforeDecode.duration);
    printf("\n");

请问改怎么办,非常感谢,有没有自己去管理pts、dts,我现在我把pts每次加1,这样转出来就不走进度条了,一直卡死!

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。