mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-16 18:00:36 +01:00
d3d12: Plumb H264/HEVC temporal_id from pipe params
Reviewed-By: Pohsiang (John) Hsu <pohhsu@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31268>
This commit is contained in:
parent
1b66866275
commit
83fdbf8772
4 changed files with 4 additions and 4 deletions
|
|
@ -368,6 +368,7 @@ d3d12_video_encoder_update_current_frame_pic_params_info_h264(struct d3d12_video
|
|||
//
|
||||
// These need to be set here so they're available for SPS/PPS header building (reference manager updates after that, for slice header params)
|
||||
//
|
||||
picParams.pH264PicData->TemporalLayerIndex = h264Pic->pic_ctrl.temporal_id;
|
||||
picParams.pH264PicData->pic_parameter_set_id = pH264BitstreamBuilder->get_active_pps().pic_parameter_set_id;
|
||||
picParams.pH264PicData->List0ReferenceFramesCount = 0;
|
||||
picParams.pH264PicData->List1ReferenceFramesCount = 0;
|
||||
|
|
|
|||
|
|
@ -467,6 +467,7 @@ d3d12_video_encoder_update_current_frame_pic_params_info_hevc(struct d3d12_video
|
|||
//
|
||||
// These need to be set here so they're available for SPS/PPS header building (reference manager updates after that, for slice header params)
|
||||
//
|
||||
picParams.pHEVCPicData->TemporalLayerIndex = hevcPic->pic.temporal_id;
|
||||
picParams.pHEVCPicData->List0ReferenceFramesCount = 0;
|
||||
picParams.pHEVCPicData->List1ReferenceFramesCount = 0;
|
||||
if ((hevcPic->picture_type == PIPE_H2645_ENC_PICTURE_TYPE_P) ||
|
||||
|
|
|
|||
|
|
@ -306,7 +306,7 @@ d3d12_video_encoder_references_manager_h264::begin_frame(D3D12_VIDEO_ENCODER_PIC
|
|||
// mirror indices between DPB entries and allocation arrays
|
||||
m_CurrentFrameReferencesData.pReferenceFramesReconPictureDescriptors[i].ReconstructedPictureResourceIndex = i;
|
||||
m_CurrentFrameReferencesData.pReferenceFramesReconPictureDescriptors[i].TemporalLayerIndex =
|
||||
0u; // h264Pic->dpb[i].temporal_id;
|
||||
h264Pic->dpb[i].temporal_id;
|
||||
|
||||
//
|
||||
// Set texture allocations
|
||||
|
|
@ -332,7 +332,6 @@ d3d12_video_encoder_references_manager_h264::begin_frame(D3D12_VIDEO_ENCODER_PIC
|
|||
m_curFrameState.FrameType = d3d12_video_encoder_convert_frame_type_h264(h264Pic->picture_type);
|
||||
m_curFrameState.PictureOrderCountNumber = h264Pic->pic_order_cnt;
|
||||
m_curFrameState.FrameDecodingOrderNumber = h264Pic->slice.frame_num;
|
||||
m_curFrameState.TemporalLayerIndex = 0u; // h264Pic->temporal_id;
|
||||
|
||||
///
|
||||
/// Set MMCO info
|
||||
|
|
|
|||
|
|
@ -282,7 +282,7 @@ d3d12_video_encoder_references_manager_hevc::begin_frame(D3D12_VIDEO_ENCODER_PIC
|
|||
// mirror indices between DPB entries and allocation arrays
|
||||
m_CurrentFrameReferencesData.pReferenceFramesReconPictureDescriptors[i].ReconstructedPictureResourceIndex = i;
|
||||
m_CurrentFrameReferencesData.pReferenceFramesReconPictureDescriptors[i].TemporalLayerIndex =
|
||||
0u; // hevcPic->dpb[i].temporal_id;
|
||||
hevcPic->dpb[i].temporal_id;
|
||||
|
||||
// Check if this i-th dpb descriptor entry is referenced by any entry in L0 or L1 lists
|
||||
// and set IsRefUsedByCurrentPic accordingly
|
||||
|
|
@ -315,7 +315,6 @@ d3d12_video_encoder_references_manager_hevc::begin_frame(D3D12_VIDEO_ENCODER_PIC
|
|||
|
||||
m_curFrameState.FrameType = d3d12_video_encoder_convert_frame_type_hevc(hevcPic->picture_type);
|
||||
m_curFrameState.PictureOrderCountNumber = hevcPic->pic_order_cnt;
|
||||
m_curFrameState.TemporalLayerIndex = 0u; // hevcPic->temporal_id;
|
||||
|
||||
///
|
||||
/// Set reference pics info
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue