Media (Intel® oneAPI Video Processing Library, Intel Media SDK)
Access community support with transcoding, decoding, and encoding in applications using media tools from Intel. This includes Intel® oneAPI Video Processing Library and Intel® Media SDK.
2927 Discussions

VPP scale and convert P010 to NV12 results in MFX_ERR_UNDEFINED_BEHAVIOR

cedronius__anders
New Contributor I
973 Views

Linux 20.04

MSDK -> 20.5.1

This is my VPP.In ->

in.png

This is my VPP.Out ->

out.png

When performing a Query I get -> MFX_WRN_INCOMPATIBLE_VIDEO_PARAM

warn.png

If I process i get no error in my 'RunFrameVPPAsync' however in the 'SyncOperation' i get ->

err.png

If I hardcode NV12 as my input format instead of P010 the warning and error goes away. 

The documentation states conversion from P010 to NV12 is supported.

Thanks for helping.

 

/Anders.

0 Kudos
1 Solution
cedronius__anders
New Contributor I
954 Views

My issue was related to buffer management and I found the problem.

Please ignore this 'issue'.

 

/A

View solution in original post

9 Replies
cedronius__anders
New Contributor I
966 Views

Setting the parameters 

lVPPParams.vpp.In.BitDepthChroma = 10; //P010
lVPPParams.vpp.In.BitDepthLuma = 10; //P010
lVPPParams.vpp.In.Shift = 1; //P010

Got rid of the warning in the query but not the -> MFX_ERR_UNDEFINED_BEHAVIOR

/Anders

 

cedronius__anders
New Contributor I
955 Views

My issue was related to buffer management and I found the problem.

Please ignore this 'issue'.

 

/A

AthiraM_Intel
Moderator
941 Views

Hi,

Thanks for reaching out to us.


Glad to know that your issue is resolved. Could you please let us know whether you need further help or can we close this thread?

If you have any feedback please share with us.

Thanks.


AthiraM_Intel
Moderator
914 Views

Hi,


Could you please give us an update?


Thanks.


cedronius__anders
New Contributor I
910 Views

Sure..

 

It's the way Intels MSDK want's us users to define the pixel buffers that to me is inconsistent and I made a mistake because of that.  The P010 format explicitly wants us users to define the bit-depth where as for NV12 there is no need. So when I defined P010 and bit-depth 10 then I got it working.

 

Since you ask.. And I got the chance to comment it would be great if Intel simplified the pixel buffer definition for example NV12 is a 4:2:0 8-bit format by the fourCC definition and P010 is a 4:2:0 10-bit format.  

What's the reason for having users specify FourCC + ChromaFormat + BitDepthChroma + BitDepthLuma when the only thing needed is FourCC? To me it ads unnecessary complexity and room for errors.

There might be other reasons that to me is unknown however just wanted to mention this.

/Anders

AthiraM_Intel
Moderator
853 Views

Hi,


Thanks for the valuable feedback.

We have informed the concerned team regarding this.

Could you please let us know whether we can close this thread?


Thanks.


cedronius__anders
New Contributor I
842 Views

Athira,

Yes, please close this thread.

/Anders

AthiraM_Intel
Moderator
805 Views

Hi,


We are listening customer’s comment on memory management. We have forwarded your request to dev team and keep you updated.


Thanks.


Mark_L_Intel1
Moderator
628 Views

Hi Anders,


Sorry for the late response, I have submitted a feature request to develop team. This is a developer experience issue and I submitted it to oneVPL, our successor to Media SDK.


I submitted to oneVPL since it will be the new product and it keeps most backward compatibility to Media SDK. You can refer to the following open standard spec for details of its API:

https://spec.oneapi.com/versions/latest/elements/oneVPL/source/index.html


I will keep you updated.


Mark Liu


Reply