Quantcast
Channel: Intel® Software - Media
Viewing all articles
Browse latest Browse all 2185

IDR frames not generated in software mode!!!!

$
0
0

Hi,

i am encoding H264.

I set m_mfxEncParams.mfx.EncodedOrder = 1; to specify gop structure via mfxEncodeCtrl.

With m_ctrl.FrameType = MFX_FRAMETYPE_I | MFX_FRAMETYPE_IDR | MFX_FRAMETYPE_REF; I force the IDR frame generation on every 4th frame in the call to EncodeFrameAsync(&m_ctrl,surface...)

This works fine when operating in HW-mode. But (the same code) in software mode, the encoder does NOT insert the requested IDR. IDR will generated here on every 64th frame.

This is a BUG!!!

As a work around i tried to reset the encoder every 4th frame to restart with a new GOP.

m_mfxResetOptions.StartNewSequence = MFX_CODINGOPTION_ON;

m_EncExtParams.clear();

m_EncExtParams.push_back(reinterpret_cast<mfxExtBuffer*>(&m_mfxResetOptions));
m_mfxEncParams.ExtParam = &m_EncExtParams.front();
m_mfxEncParams.NumExtParam = (mfxU16)m_EncExtParams.size();
sts = m_pmfxENC->Reset(&m_mfxEncParams);

But this returns MFX_ERROR_INVALID_VIDEO_PARAM!

This happens only when operating with MFX_IMPL_SOFTWARE! Hardware mode has no bugs and is working as expected!!!

Can you fix this fast? Or post a work around?

 

 

 

 


Viewing all articles
Browse latest Browse all 2185

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>