intel / intel/media-driver

[Bug]: Videos play sluggish with high CPU load on ApolloLake since commit 42ffd7983a32b75cf8403c235d8d0f727191390c

Open
#1,481 8 comments 0 reactions 1 assignee Assigned to @MicroYY View on GitHub
AVC Common P2
Dominant language
C
Stars
1.2k
Forks
383
Avg merge
8d 18h
Merged PRs (30d)
4

Description

### Which component impacted?

Not sure

### Is it regression? Good in old configuration?

Yes, it's good in old version

### What happened?

Hello,

with intel-media-driver 22.3.1 used in Yocto Kirkstone videos are played sluggish with high CPU load on ApolloLake CPUs (Intel(R) Atom(TM) Processor E3930).

This was introduced in commit 42ffd7983a32b75cf8403c235d8d0f727191390c "[Media Common] GMM Multi-Adapter Interface Changes".

Can be reproduced with this video https://test-videos.co.uk/vids/bigbuckbunny/mp4/h264/1080/Big_Buck_Bunny_1080_10s_30MB.mp4

gst-launch-1.0 playbin uri=file:Big_Buck_Bunny_1080_10s_30MB.mp4
# which uses the sink xvimagesink by default, so behaves like
gst-launch-1.0 playbin uri=file:Big_Buck_Bunny_1080_10s_30MB.mp4 video-sink=xvimagesink

gst-launch uses 80% CPU load instead of 10% before. The video is also sluggish and it seems a lot of frames are dropped.

The video is played fine with the non-default vaapisink instead using only 10% CPU.

gst-launch-1.0 playbin uri=file:Big_Buck_Bunny_1080_10s_30MB.mp4 video-sink=vaapisink

Best regards,
Markus Pietrek
[libva_log.tar.gz](https://github.com/intel/media-driver/files/9475974/libva_log.tar.gz)

### What's the usage scenario when you are seeing the problem?

Playback

### What impacted?

_No response_

### Debug Information

Since 42ffd7983a32b75cf8403c235d8d0f727191390c

root@intel-corei7-64:~# vainfo
libva info: VA-API version 1.14.0
libva info: Trying to open /usr/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_14
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.14 (libva 2.14.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.4.4 (9ca43202d)
vainfo: Supported profile and entrypoints
VAProfileNone : VAEntrypointVideoProc
VAProfileNone : VAEntrypointStats
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointFEI
VAProfileH264Main : VAEntrypointEncSliceLP
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointFEI
VAProfileH264High : VAEntrypointEncSliceLP
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointEncPicture
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointFEI
VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointFEI
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD

libva trace has been attached.

[libva_log.tar.gz](https://github.com/intel/media-driver/files/9475978/libva_log.tar.gz)

### Do you want to contribute a patch to fix the issue?

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.