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.

H264 NumSlice SW vs QSV

kyviquel
Beginner
405 Views

Hi,

I have an implementation of your h264 SW and QSV encoders. I use the NumSlice parameter to divide encoding frames into different slices. It works well in SW, I can divide each frame into at least a macroblock row.

But in QSV it seems I reach some limitations.

I encode a 1080i30M h264 QSV video with different NumSlice values and this is my results:

SliceCount = 1 OK

SliceCount = 2 OK

SliceCount = 3 OK

SliceCount = 4 returns invalid parameters and the Encode_Query() function asks me for 5

SliceCount = 5 OK

SliceCount = 6 returns invalid parameters and the Encode_Query() function asks me for 9

Can you explain what are exactly the rules for slice partitioning in QSV?

My setup:

Intel Media SDK System Analyzer (64 bit)


The following versions of Media SDK API are supported by platform/driver:

 Version Target Supported Dec Enc
 1.0 HW Yes  X X
 1.0 SW Yes  X X
 1.1 HW Yes  X X
 1.1 SW Yes  X X
 1.3 HW Yes  X X
 1.3 SW Yes  X X
 1.4 HW Yes  X X
 1.4 SW Yes  X X
 1.5 HW Yes  X X
 1.5 SW Yes  X X
 1.6 HW Yes  X X
 1.6 SW Yes  X X
 1.7 HW Yes  X X
 1.7 SW Yes  X X
 1.8 HW No    
 1.8 SW Yes  X X

Graphics Devices:
 Name                                         Version             State
 Intel(R) HD Graphics 4000                    10.18.10.3345       Active
 NVIDIA GeForce GT 545                        9.18.13.1106        Active

System info:
 CPU: Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
 OS: Microsoft Windows 8 Enterprise
 Arch: 64-bit

 

Thanks

Karine

0 Kudos
1 Solution
Anthony_P_Intel
Employee
405 Views

Hi,

Yes, the parameter is a suggested size and Media SDK can adjust the value based on capabilities of the platform.

Also,, if you are setting the mfxExtCodingOption2 NumMbPerSlice value, the mfxInfoMFX::NumSlice parameter is ignored.  (Some information was added to the new Reference manual for API 1.8)

View solution in original post

0 Kudos
1 Reply
Anthony_P_Intel
Employee
406 Views

Hi,

Yes, the parameter is a suggested size and Media SDK can adjust the value based on capabilities of the platform.

Also,, if you are setting the mfxExtCodingOption2 NumMbPerSlice value, the mfxInfoMFX::NumSlice parameter is ignored.  (Some information was added to the new Reference manual for API 1.8)

0 Kudos
Reply