Skip to content

Commit

Permalink
va: Add VAConfigAttribEncMaxTileRowsCols
Browse files Browse the repository at this point in the history
Currently there is no way of exposing the driver tile_rows and tile_cols limitations
for encoding with tiles. For codecs like AV1 there is a cap specifying the max number
of tiles, but without differentiating cols/rows.

Different hardware may have restrictions which may need to be taken into account.
More specifically, D3D12 encode exposes the maximum rows/cols and adding
VAConfigAttribEncMaxTileRowsCols allows for mapping that information to the VAOn12 driver.

Signed-off-by: Sil Vilerino <[email protected]>
  • Loading branch information
sivileri committed Sep 22, 2023
1 parent 8575b2b commit 2a51e1d
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 0 deletions.
10 changes: 10 additions & 0 deletions va/va.h
Original file line number Diff line number Diff line change
Expand Up @@ -1036,6 +1036,16 @@ typedef enum {
* The value returned uses the VAConfigAttribValEncPerBlockControl type.
*/
VAConfigAttribEncPerBlockControl = 55,
/**
* \brief Maximum number of tile rows and cols. Read-only.
*
* This attribute determines the maximum number of tile
* rows and columns supported for encoding with tile support.
*
* The bottom 16 bits specify the maximum number of rows
* The top 16 bits specify the maximum number of cols
*/
VAConfigAttribEncMaxTileRowsCols = 56,
/**@}*/
VAConfigAttribTypeMax
} VAConfigAttribType;
Expand Down
1 change: 1 addition & 0 deletions va/va_str.c
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,7 @@ const char *vaConfigAttribTypeStr(VAConfigAttribType configAttribType)
TOSTR(VAConfigAttribEncAV1Ext1);
TOSTR(VAConfigAttribEncAV1Ext2);
TOSTR(VAConfigAttribEncPerBlockControl);
TOSTR(VAConfigAttribEncMaxTileRowsCols);
case VAConfigAttribTypeMax:
break;
}
Expand Down

0 comments on commit 2a51e1d

Please sign in to comment.