问题
正在播放的视频进入后台暂停后再从后台恢复时,会出现画面卡死但声音正常的情况。使用软解码的时候这种问题不会出现,但开启
VideoToolbox
硬解码后就会出现这种问题,Log
会输出"recovery error!!!!"
处理办法:
重新编译IJKMediaFramework.framework
,
编译前找到IJKVideoToolBoxAsync.m
和IJKVideoToolBoxSync.m
,
分别注释掉decode_video函数中if ((context->m_buffer_deep > 0)/* && ff_avpacket_i_or_idr(&context->m_buffer_packet[0], context->idr_based_identified) == true*/ )
判断中的/* && ff_avpacket_i_or_idr(&context->m_buffer_packet[0], context->idr_based_identified) == true*/
条件.
两个文件中都要注释掉,不然可能会出现闪退问题。
原因
暂时只找到了解决办法,原因还在分析,后面会贴出来原因分析。
网友评论