mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-05 12:40:26 +01:00
radeonsi/vcn: Add low latency decode debug option
Similar to the low latency option for encode, this reduces latency of decoding at the cost of increased power usage. Can be enabled with AMD_DEBUG=lowlatencydec Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39450>
This commit is contained in:
parent
ce25865e8f
commit
62f07b8c63
5 changed files with 9 additions and 1 deletions
|
|
@ -1743,6 +1743,8 @@ RadeonSI driver environment variables
|
|||
Disable DPBB. Overrules the dpbb enable option.
|
||||
``noefc``
|
||||
Disable hardware based encoder color format conversion
|
||||
``lowlatencydec``
|
||||
Enable low latency decoding
|
||||
``lowlatencyenc``
|
||||
Enable low latency encoding
|
||||
``notiling``
|
||||
|
|
|
|||
|
|
@ -163,6 +163,7 @@
|
|||
/* *** decode flags *** */
|
||||
#define RDECODE_FLAGS_USE_DYNAMIC_DPB_MASK 0x00000001
|
||||
#define RDECODE_FLAGS_USE_PAL_MASK 0x00000008
|
||||
#define RDECODE_FLAGS_LOW_LATENCY_MASK 0x00000080
|
||||
#define RDECODE_FLAGS_DPB_RESIZE_MASK 0x00000100
|
||||
#define RDECODE_FLAGS_UNIFIED_DT_MASK 0x00000200
|
||||
|
||||
|
|
|
|||
|
|
@ -1437,7 +1437,7 @@ static struct pb_buffer_lean *rvcn_dec_message_decode(struct radeon_decoder *dec
|
|||
struct si_texture *luma;
|
||||
struct si_texture *chroma;
|
||||
struct pipe_video_buffer *out_surf = target;
|
||||
ASSERTED struct si_screen *sscreen = (struct si_screen *)dec->screen;
|
||||
struct si_screen *sscreen = (struct si_screen *)dec->screen;
|
||||
rvcn_dec_message_header_t *header;
|
||||
rvcn_dec_message_index_t *index_codec;
|
||||
rvcn_dec_message_index_t *index_drm = NULL;
|
||||
|
|
@ -1567,6 +1567,9 @@ static struct pb_buffer_lean *rvcn_dec_message_decode(struct radeon_decoder *dec
|
|||
if (dec->dpb_type == DPB_DYNAMIC_TIER_3)
|
||||
decode->decode_flags |= RDECODE_FLAGS_UNIFIED_DT_MASK;
|
||||
|
||||
if (sscreen->multimedia_debug_flags & DBG(LOW_LATENCY_DECODE))
|
||||
decode->decode_flags |= RDECODE_FLAGS_LOW_LATENCY_MASK;
|
||||
|
||||
decode->bsd_size = align(dec->bs_size, 128);
|
||||
|
||||
if (dec->dpb_type < DPB_DYNAMIC_TIER_2) {
|
||||
|
|
|
|||
|
|
@ -129,6 +129,7 @@ static const struct debug_named_value radeonsi_shader_debug_options[] = {
|
|||
static const struct debug_named_value radeonsi_multimedia_debug_options[] = {
|
||||
/* Multimedia options: */
|
||||
{"noefc", DBG(NO_EFC), "Disable hardware based encoder colour format conversion."},
|
||||
{"lowlatencydec", DBG(LOW_LATENCY_DECODE), "Enable low latency decoding."},
|
||||
{"lowlatencyenc", DBG(LOW_LATENCY_ENCODE), "Enable low latency encoding."},
|
||||
{"novideotiling", DBG(NO_VIDEO_TILING), "Disable tiling for video."},
|
||||
{"nodectier1", DBG(NO_DECODE_TIER1), "Disable tier1 for video decode."},
|
||||
|
|
|
|||
|
|
@ -264,6 +264,7 @@ enum
|
|||
enum
|
||||
{
|
||||
DBG_NO_EFC,
|
||||
DBG_LOW_LATENCY_DECODE,
|
||||
DBG_LOW_LATENCY_ENCODE,
|
||||
DBG_NO_VIDEO_TILING,
|
||||
DBG_NO_DECODE_TIER1,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue