- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I've created a decoder with MFX_IMPL_SOFTWARE and have a VPP component that does the following:
p.vpp.In.FourCC = MFX_FOURCC_NV12; p.vpp.Out.FourCC = MFX_FOURCC_YUY2;
, i.e. it converts the decoder output (which is NV12) to YUY2 before I grab the data and send it off elsewhere. This conversion happens no problem with MFX_IMPL_HARDWARE with an Intel HD. Software doesn't appear to perform the conversion (my image is split, green and pink/purple and about 1/4 size). I replaced my D3D11 allocator with a SysMem one, just in case that was doing something but no dice. It made no difference.
Will MFX_IMPL_SOFTWARE perform these conversions or do we need to do them ourselves? Btw, I'm diligently examining return codes for errors and everything appears to be working fine (no errors).
Note: Something odd about use of libmfxsw32.dll, if your code is debug the dispatcher looks for libmfxsw32_d.dll but this isn't shipped with the SDK and there's no way to build it. Renaming the existing libmfxsw32.dll to libmfxsw32_d.dll allows you to link however.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi There,
Are you using the most new graphic driver ?
Can you share log from system_analyzer tool located at (mediasdk/tools/analyzer) ? This will help provide us your system details.
I suggest use HW solution if possible.
Thanks,
Zachary
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for your reply. I've attached the analysis.
We specify equipment to customers, however we want to cover the case where Intel HD isn't present and/or is an older, unsupported version (for us), with a software decoder. Hence the experiments with MFX_IMPL_SOFTWARE.
Driver version is 20.19.15.4463. Note the 4600 is enabled in bios and is a secondary adapter. But as I say, we want our system to "just work" regardless of whether the HD is present/enabled or not.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
From Table 2: Color Conversion Support in VPP* page 7 in Intel® Media SDK Developer Reference, NV12 to YUY2 is not support.
You may also interesting in Intel® IPP Library (https://software.intel.com/en-us/intel-ipp), there are functions can help to do NV12 to YUY2.
Thanks
Zachary
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jiandong Z. (Intel) wrote:
From Table 2: Color Conversion Support in VPP* page 7 in Intel® Media SDK Developer Reference, NV12 to YUY2 is not support.
Sorry, I'm a bit confused. Looking at the table there's an X in the NV12/YUY2 element. Our system works for MFX_IMPL_HARDWARE. Both YUY2 -> NV12 on encode and NV12 to YUY2 on decode. That is to say VPP -> Encode and on the other end Decode -> VPP. We're passing in YUY2 and getting out YUY2. I checked both the input and output bitmaps with rawpixels.net. The developer reference doesn't say there's a difference between MFX_IMPL_HARDWARE and MFX_IMPL_SOFTWARE.
Am I misunderstanding something?
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page