intel / libvpl

Intel® Video Processing Library (Intel® VPL) API, dispatcher, and examples
https://intel.github.io/libvpl/
MIT License
262 stars 80 forks source link

getting DeliverOutput return error = -1 while running sample_decode with option -r #107

Closed reposSushant closed 5 months ago

reposSushant commented 9 months ago

Hi i am exploring oneVPL , installed on my linux machine and checking samples , i running below command and getting below error sample_decode h265 -hw -i $HOME/oneVPL/examples/content/cars_320x240.h265 -r getting below error CONFIGURE LOADER: required implementation: hw CONFIGURE LOADER: required implementation mfxAccelerationMode: MFX_ACCEL_MODE_VIA_VAAPI libva info: VA-API version 1.21.0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so libva info: Found init function __vaDriverInit_1_21 libva info: va_openDriver() returns 0 pretending that aspect ratio is 1:1 Loaded Library configuration: Version: 1.35 ImplName: mfxhw64 Adapter number : 0 Adapter type: integrated DRMRenderNodeNum: 128 Used implementation number: 0 Loaded modules: 0: /usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35

Decoding Sample Version 8.4.27.0

Input video HEVC Output format NV12 Input: Resolution 320x240 Crop X,Y,W,H 0,0,320,240 Output: Resolution 320x240 Frame rate 25.00 Memory type vaapi MediaSDK impl hw MediaSDK version 1.35

Decoding started DeliverOutput return error = -1 fread_fps: 0.000, fwrite_fps: 0.000 Frame number: 1, fps: 26.672, fread_fps: 0.000, fwrite_fps: 8333.333 Decoding finished please find my machine information below Linux collab8-PRO 6.2.0-33-generic #33~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep 7 10:33:52 UTC 2 x86_64 x86_64 x86_64 GNU/Linux also please find vpl-inspect output below Implementation #0: mfxhw64 Library path: /usr/lib/x86_64-linux-gnu/libmfxhw64.so.1.35 AccelerationMode: MFX_ACCEL_MODE_VIA_VAAPI ApiVersion: 1.35 Impl: MFX_IMPL_TYPE_HARDWARE VendorImplID: 0x0000 ImplName: mfxhw64 License: Version: 1.2 Keywords: MSDK,x64 VendorID: 0x8086 mfxAccelerationModeDescription: Version: 1.0 Mode: MFX_ACCEL_MODE_VIA_VAAPI mfxPoolPolicyDescription: Version: 1.0 mfxDeviceDescription: MediaAdapterType: MFX_MEDIA_UNKNOWN DeviceID: 3185/0 Version: 1.1 mfxDecoderDescription: Version: 0.0 mfxEncoderDescription: Version: 0.0 mfxVPPDescription: Version: 0.0 NumExtParam: 0

Total number of implementations found = 1

reposSushant commented 9 months ago

i tried to debug vaPutsurface is returning 18 return value and it is failing with MFX_ERR_INVALID_VIDEO_PARAM

reposSushant commented 9 months ago

any change in parameters required in sample_decode sample param values ?

reposSushant commented 9 months ago

this line is returning VA_STATUS_ERROR_INVALID_PARAMETER in media_driver/linux/common/ddi/media_libva_putsurface_linux.cpp line 340 dri_drawable = dri_vtable->get_drawable(ctx, (Drawable)draw); DDI_CHK_NULL(dri_drawable, "Null dri_drawable", VA_STATUS_ERROR_INVALID_PARAMETER);

akwrobel commented 8 months ago

@reposSushant We also see this failure but currently support for this usage is not in our support plan. We recommend not rendering within the tool, using a different tool for rendering will resolve this issue. (VLC for example)

reposSushant commented 8 months ago

okay thanks @akwrobel when i can expect this will come under support plan ?

akwrobel commented 6 months ago

@reposSushant This is not currently an item on our roadmap, so there is no expected support.

jonrecker commented 5 months ago

I encountered a similar error at one point and was able to work around it by setting the environment variable LIBVA_DRI3_DISABLE=1 which uses DRI2 instead of DRI3 here in libva. This may or may not apply for your system configuration, though.

One other thing to try is converting the output from NV12 to RGB4 for rendering, e.g. sample_decode h265 -hw -i $HOME/oneVPL/examples/content/cars_320x240.h265 -r -rgb4.