intel / intel/media-driver

[Bug]: The fourcc format of surface is not standard, which is not defined in any "fourcc.h"

Open
#1,668 1 comment 0 reactions 1 assignee Assigned to @XinfengZhang View on GitHub
Reserved
Dominant language
C
Stars
1.2k
Forks
383
Avg merge
8d 18h
Merged PRs (30d)
4

Description

### Which component impacted?

_No response_

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

No, this issue exist a long time

### What happened?

The fourcc of surface is not correct. For example, the ARGB surface uses the fourcc: VA_FOURCC('A', 'R', 'G', 'B').
This fourcc is not defined in any drm_fourcc.h file. Instead,
the standard ARGB fourcc is defined as:
#define DRM_FORMAT_ARGB8888 fourcc_code('A', 'R', '2', '4') /* [31:0] A:R:G:B 8:8:8:8 little endian */

The similar wrong definition includes: ARGB,ABGR,RGBA,BGRA,XRGB,XBGR,RGBX,BGRX and I420

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

Transcode for media delivery, Playback, Web browser, Cloud Gaming, Video Analytics, Video Conference, Immersive Media, Content Creation, Game Streaming

### What impacted?

This standard fourcc definition is critical now. We now need to export this fourcc to other modules such as OpenGL and Vulkan, which can not recognized the unstandard fourcc such as ARGB and I420.

### Debug Information

_No response_

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

None

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.