Media (Intel® Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools like Intel® oneAPI Video Processing Library and Intel® Media SDK
Announcements
The Intel Media SDK project is no longer active. For continued support and access to new features, Intel Media SDK users are encouraged to read the transition guide on upgrading from Intel® Media SDK to Intel® Video Processing Library (VPL), and to move to VPL as soon as possible.
For more information, see the VPL website.

AdaptiveI support

Will_K_
Beginner
698 Views

Hi,

Is AdaptiveI or AdaptiveB supported on a particular set of hardware or a particular API level?  The manual makes it sound like API 1.8 is the requirement.  I'm using 1.10 and I don't see any I-frames being inserted on scene changes.

I found this: https://software.intel.com/en-us/forums/intel-media-sdk/topic/530296 which seems to indicate that it isn't supported - is this true for all hardware/API levels, or just a specific generation?

I'm using API 1.10 on Linux with Ivy Bridge hardware.  If AdaptiveI is not supported, do you have any recommendations for how to improve performance on scene boundaries?  Should LookAhead work on this hardware?

Thanks,

Will

0 Kudos
7 Replies
Sravanthi_K_Intel
698 Views

Hi Will - Good question. Your observation is correct - Adaptive flags have not been validated and are broken until the next release where we have fixed them. So, you cannot use those flags currently. For any scene change detection or more control on brc in general, we recommend the LookAhead mode. If you want more control on the brc, you could use LA mode as a pre-analysis mode by running the plugin separately also. The stats from that can be fed to the encoder and used in the brc. Hope this helps.

0 Kudos
Sravanthi_K_Intel
698 Views

Hi Will - Small correction. On IVB, LA mode does not work. So, for your given system (IVB), neither Adapative flags nor LA mode would work. If you can upgrade to HSW or better, that'd be best since many features were added for these processors.

0 Kudos
Will_K_
Beginner
698 Views

Hi Sravanthi,

Thanks for the info.  Unfortunately I'm working with a large deployment of IVB that cannot be upgraded.

If I can't use AdaptiveI or LA, can I at least manually force an I-frame using the mfxEncodeCtrl->FrameType field?  I tried this, but it doesn't seem to work either.  The encoder enters a state where it continually returns MFX_WRN_DEVICE_BUSY.  Should this work on IVB?

Thanks,

will

0 Kudos
Will_K_
Beginner
698 Views

Hi,

Can anyone confirm that the per-frame mfxEncodeCtrl->FrameType setting should work on IVB?

Thanks,

will

0 Kudos
Will_K_
Beginner
698 Views

Hi again.

Can anyone confirm that per-frame FrameType overrides should work on IVB?

Thanks,

will

0 Kudos
Jeffrey_M_Intel1
Employee
698 Views

Sorry for the delay in replying to you.  IDR insertion has been around for a while.  I just verified that it works (in Windows anyway) on an IVB machine.  Please note, to do this I allocated as many mfxEncodeCtrl structures as frame surfaces, and used the same index for both.

0 Kudos
rycius
Beginner
698 Views

Hi,

today i have tried to use AdaptiveB or AdaptiveI with API 1.23 on Linux machine with Broadwell CPU without success.

It's still broken or my configuration is wrong?

0 Kudos
Reply