** Description changed: [ Impact ] * Users cannot use iGPU for video codec (encode/decode) on Intel Arrowlake CPUs on Ubuntu Noble 24.04 * To enable this support, we need to backport this commit https://github.com/intel/media-driver/commit/95cbfce81cafa3c24d9d4601d41a855093bc51fb * This commit has been added in the intel-media-driver 24.2.0, as a consequence, it is already available starting from Plucky. This SRU only affects Ubuntu Noble 24.04 that has an older version (24.1.0). [ Test Plan ] * sudo apt install -y intel-media-va-driver ffmpeg vainfo - * sudo vainfo + + VAINFO + ---- + + * vainfo error: XDG_RUNTIME_DIR is invalid or not set in the environment. error: can't connect to X server! libva info: VA-API version 1.22.0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so libva info: Found init function __vaDriverInit_1_22 libva error: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so init failed libva info: va_openDriver() returns 1 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_1_20 libva error: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed libva info: va_openDriver() returns -1 vaInitialize failed with error code -1 (unknown libva error),exit + + We can see that vainfo is unable to list all the supported profiles and endpoints. + A successful action has the output similar to below: + + ubuntu@ubuntu:~$ sudo vainfo + error: XDG_RUNTIME_DIR is invalid or not set in the environment. + X11 connection rejected because of wrong authentication. + error: can't connect to X server! + libva info: VA-API version 1.22.0 + libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so + libva info: Found init function __vaDriverInit_1_20 + libva info: va_openDriver() returns 0 + vainfo: VA-API version: 1.22 (libva 2.12.0) + vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 24.1.0 () + vainfo: Supported profile and entrypoints + VAProfileNone : VAEntrypointVideoProc + VAProfileMPEG2Simple : VAEntrypointVLD + VAProfileMPEG2Main : VAEntrypointVLD + VAProfileH264Main : VAEntrypointVLD + VAProfileH264Main : VAEntrypointEncSlice + VAProfileH264High : VAEntrypointVLD + VAProfileH264High : VAEntrypointEncSlice + VAProfileJPEGBaseline : VAEntrypointVLD + ... + + + FFMPEG + ---- + + We can use FFMPEG to test the hardware decoding/encode + On the platform without the fix, FFMPEG fails with the error message: + + [vost#0:0/h264_vaapi @ 0x5eb75993e880] Error initializing a simple + filtergraph + + Steps: * wget -O input.mp4 https://www.sample-videos.com/video321/mp4/720/big_buck_bunny_720p_1mb.mp4 * sudo ffmpeg -hwaccel vaapi -hwaccel_output_format vaapi -i input.mp4 -c:v h264_vaapi output.mp4 ffmpeg version 6.1.1-3ubuntu5 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 13 (Ubuntu 13.2.0-23ubuntu3) ... [AVHWDeviceContext @ 0x5eb7598e5e40] libva: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so init failed [AVHWDeviceContext @ 0x5eb7598e5e40] libva: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed [AVHWDeviceContext @ 0x5eb7598e5e40] Failed to initialise VAAPI connection: -1 (unknown libva error). Device creation failed: -5. No device available for decoder: device type vaapi needed for codec h264. [vist#0:0/h264 @ 0x5eb759938540] Hardware device setup failed for decoder: Input/output error [vost#0:0/h264_vaapi @ 0x5eb75993e880] Error initializing a simple filtergraph Error opening output file output.mp4. Error opening output files: Input/output error + [ Where problems could occur ] - * Since we backport only a commit that adds some device IDs, the risk to have - regressions is small. - However, since we enable the platform with media features by adding - the needed device IDs, it might exhibit bugs that are masked so far because - the features are not enabled. + * Since we backport only a commit that adds some device IDs, the risk to have + regressions is small. + However, since we enable the platform with media features by adding + the needed device IDs, it might enable some code paths and exhibit bugs that + are masked without the fix. + One way to make sure we do not have big regression is to make sure we can + playback a mp4 video (https://test-videos.co.uk/bigbuckbunny/mp4-h265) + [ Other Info ]
** Description changed: [ Impact ] * Users cannot use iGPU for video codec (encode/decode) on Intel Arrowlake CPUs on Ubuntu Noble 24.04 * To enable this support, we need to backport this commit https://github.com/intel/media-driver/commit/95cbfce81cafa3c24d9d4601d41a855093bc51fb * This commit has been added in the intel-media-driver 24.2.0, as a consequence, it is already available starting from Plucky. This SRU only affects Ubuntu Noble 24.04 that has an older version (24.1.0). [ Test Plan ] - * sudo apt install -y intel-media-va-driver ffmpeg vainfo + $ sudo apt install -y intel-media-va-driver ffmpeg vainfo - VAINFO - ---- - - * vainfo + VAINFO + ---- + + $ vainfo error: XDG_RUNTIME_DIR is invalid or not set in the environment. error: can't connect to X server! libva info: VA-API version 1.22.0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so libva info: Found init function __vaDriverInit_1_22 libva error: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so init failed libva info: va_openDriver() returns 1 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so libva info: Found init function __vaDriverInit_1_20 libva error: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed libva info: va_openDriver() returns -1 vaInitialize failed with error code -1 (unknown libva error),exit We can see that vainfo is unable to list all the supported profiles and endpoints. A successful action has the output similar to below: - ubuntu@ubuntu:~$ sudo vainfo + $ vainfo error: XDG_RUNTIME_DIR is invalid or not set in the environment. X11 connection rejected because of wrong authentication. error: can't connect to X server! libva info: VA-API version 1.22.0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so libva info: Found init function __vaDriverInit_1_20 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.22 (libva 2.12.0) vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 24.1.0 () vainfo: Supported profile and entrypoints - VAProfileNone : VAEntrypointVideoProc - VAProfileMPEG2Simple : VAEntrypointVLD - VAProfileMPEG2Main : VAEntrypointVLD - VAProfileH264Main : VAEntrypointVLD - VAProfileH264Main : VAEntrypointEncSlice - VAProfileH264High : VAEntrypointVLD - VAProfileH264High : VAEntrypointEncSlice - VAProfileJPEGBaseline : VAEntrypointVLD + VAProfileNone : VAEntrypointVideoProc + VAProfileMPEG2Simple : VAEntrypointVLD + VAProfileMPEG2Main : VAEntrypointVLD + VAProfileH264Main : VAEntrypointVLD + VAProfileH264Main : VAEntrypointEncSlice + VAProfileH264High : VAEntrypointVLD + VAProfileH264High : VAEntrypointEncSlice + VAProfileJPEGBaseline : VAEntrypointVLD ... - FFMPEG ---- We can use FFMPEG to test the hardware decoding/encode On the platform without the fix, FFMPEG fails with the error message: [vost#0:0/h264_vaapi @ 0x5eb75993e880] Error initializing a simple filtergraph Steps: * wget -O input.mp4 https://www.sample-videos.com/video321/mp4/720/big_buck_bunny_720p_1mb.mp4 * sudo ffmpeg -hwaccel vaapi -hwaccel_output_format vaapi -i input.mp4 -c:v h264_vaapi output.mp4 ffmpeg version 6.1.1-3ubuntu5 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 13 (Ubuntu 13.2.0-23ubuntu3) ... [AVHWDeviceContext @ 0x5eb7598e5e40] libva: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so init failed [AVHWDeviceContext @ 0x5eb7598e5e40] libva: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed [AVHWDeviceContext @ 0x5eb7598e5e40] Failed to initialise VAAPI connection: -1 (unknown libva error). Device creation failed: -5. No device available for decoder: device type vaapi needed for codec h264. [vist#0:0/h264 @ 0x5eb759938540] Hardware device setup failed for decoder: Input/output error [vost#0:0/h264_vaapi @ 0x5eb75993e880] Error initializing a simple filtergraph Error opening output file output.mp4. Error opening output files: Input/output error - [ Where problems could occur ] * Since we backport only a commit that adds some device IDs, the risk to have regressions is small. However, since we enable the platform with media features by adding - the needed device IDs, it might enable some code paths and exhibit bugs that - are masked without the fix. - One way to make sure we do not have big regression is to make sure we can - playback a mp4 video (https://test-videos.co.uk/bigbuckbunny/mp4-h265) - + the needed device IDs, it might enable some code paths and exhibit bugs that + are masked without the fix. + One way to make sure we do not have big regression is to make sure we can + playback a mp4 video (https://test-videos.co.uk/bigbuckbunny/mp4-h265) [ Other Info ] -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2116923 Title: [SRU] video hardware acceleration codec fails for Intel Arrow lake To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/intel-media-driver/+bug/2116923/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
