On Ma, 2024-01-15 at 10:34 +0800, tong1.wu-at-intel....@ffmpeg.org wrote: > From: Tong Wu <tong1...@intel.com> > > Signed-off-by: Tong Wu <tong1...@intel.com> > --- > libavcodec/d3d12va_av1.c | 18 +++++------------- > libavcodec/d3d12va_decode.c | 9 ++------- > libavcodec/d3d12va_h264.c | 4 ---- > libavcodec/d3d12va_hevc.c | 5 ----- > libavcodec/d3d12va_vc1.c | 3 --- > libavcodec/d3d12va_vp9.c | 4 ---- > 6 files changed, 7 insertions(+), 36 deletions(-) > > diff --git a/libavcodec/d3d12va_av1.c b/libavcodec/d3d12va_av1.c > index 6a3543353f..5f96f7da04 100644 > --- a/libavcodec/d3d12va_av1.c > +++ b/libavcodec/d3d12va_av1.c > @@ -108,11 +108,8 @@ static int d3d12va_av1_decode_slice(AVCodecContext > *avctx, > > static int update_input_arguments(AVCodecContext *avctx, > D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *input_args, ID3D12Resource *buffer) > { > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > - AVHWFramesContext *frames_ctx = D3D12VA_FRAMES_CONTEXT(avctx); > - AVD3D12VAFramesContext *frames_hwctx = frames_ctx->hwctx; > - const AV1DecContext *h = avctx->priv_data; > - AV1DecodePictureContext *ctx_pic = h- > >cur_frame.hwaccel_picture_private; > + const AV1DecContext *h = avctx->priv_data; > + AV1DecodePictureContext *ctx_pic = h->cur_frame.hwaccel_picture_private; > uint8_t *mapped_data; > > D3D12_VIDEO_DECODE_FRAME_ARGUMENT *args = &input_args- > >FrameArguments[input_args->NumFrameArguments++]; > @@ -142,7 +139,6 @@ static int d3d12va_av1_end_frame(AVCodecContext *avctx) > { > int ret; > const AV1DecContext *h = avctx->priv_data; > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > AV1DecodePictureContext *ctx_pic = h->cur_frame.hwaccel_picture_private; > > if (ctx_pic->tiles <= 0 || ctx_pic->bitstream_size <= 0) > @@ -156,10 +152,8 @@ static int d3d12va_av1_end_frame(AVCodecContext *avctx) > > static int d3d12va_av1_decode_init(AVCodecContext *avctx) > { > - const AV1DecContext *h = avctx->priv_data; > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > - D3D12AV1DecodeContext *av1_ctx = D3D12_AV1_DECODE_CONTEXT(avctx); > - AV1DecodePictureContext *ctx_pic = h->cur_frame.hwaccel_picture_private; > + D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > + D3D12AV1DecodeContext *av1_ctx = D3D12_AV1_DECODE_CONTEXT(avctx); > DXVA_PicParams_AV1 pp; > > int ret; > @@ -186,9 +180,7 @@ static int d3d12va_av1_decode_init(AVCodecContext *avctx) > > static int d3d12va_av1_decode_uninit(AVCodecContext *avctx) > { > - const AV1DecContext *h = avctx->priv_data; > - D3D12AV1DecodeContext *ctx = D3D12_AV1_DECODE_CONTEXT(avctx); > - AV1DecodePictureContext *ctx_pic = h->cur_frame.hwaccel_picture_private; > + D3D12AV1DecodeContext *ctx = D3D12_AV1_DECODE_CONTEXT(avctx); > > if (ctx->bitstream_buffer) > av_freep(&ctx->bitstream_buffer); > diff --git a/libavcodec/d3d12va_decode.c b/libavcodec/d3d12va_decode.c > index c5c599675e..ae2f577e25 100644 > --- a/libavcodec/d3d12va_decode.c > +++ b/libavcodec/d3d12va_decode.c > @@ -265,8 +265,7 @@ fail: > > int ff_d3d12va_common_frame_params(AVCodecContext *avctx, AVBufferRef > *hw_frames_ctx) > { > - AVHWFramesContext *frames_ctx = (AVHWFramesContext > *)hw_frames_ctx->data; > - AVHWDeviceContext *device_ctx = frames_ctx->device_ctx; > + AVHWFramesContext *frames_ctx = (AVHWFramesContext *)hw_frames_ctx->data; > > frames_ctx->format = AV_PIX_FMT_D3D12; > frames_ctx->sw_format = avctx->sw_pix_fmt == AV_PIX_FMT_YUV420P10 ? > AV_PIX_FMT_P010 : AV_PIX_FMT_NV12; > @@ -407,9 +406,7 @@ int ff_d3d12va_decode_uninit(AVCodecContext *avctx) > static inline int d3d12va_update_reference_frames_state(AVCodecContext > *avctx, D3D12_RESOURCE_BARRIER *barriers, > ID3D12Resource > *current_resource, int state_before, int state_end) > { > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > - AVHWFramesContext *frames_ctx = D3D12VA_FRAMES_CONTEXT(avctx); > - AVD3D12VAFramesContext *frames_hwctx = frames_ctx->hwctx; > + D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > > int num_barrier = 0; > for (int i = 0; i < ctx->max_num_ref; i++) { > @@ -436,8 +433,6 @@ int ff_d3d12va_common_end_frame(AVCodecContext *avctx, > AVFrame *frame, > { > int ret; > D3D12VADecodeContext *ctx = > D3D12VA_DECODE_CONTEXT(avctx); > - AVHWFramesContext *frames_ctx = > D3D12VA_FRAMES_CONTEXT(avctx); > - AVD3D12VAFramesContext *frames_hwctx = frames_ctx->hwctx; > ID3D12Resource *buffer = NULL; > ID3D12CommandAllocator *command_allocator = NULL; > AVD3D12VAFrame *f = (AVD3D12VAFrame *)frame- > >data[0]; > diff --git a/libavcodec/d3d12va_h264.c b/libavcodec/d3d12va_h264.c > index 24e1c523fa..e89c90995c 100644 > --- a/libavcodec/d3d12va_h264.c > +++ b/libavcodec/d3d12va_h264.c > @@ -104,10 +104,6 @@ static int d3d12va_h264_decode_slice(AVCodecContext > *avctx, const uint8_t *buffe > #define START_CODE_SIZE 3 > static int update_input_arguments(AVCodecContext *avctx, > D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *input_args, ID3D12Resource *buffer) > { > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > - AVHWFramesContext *frames_ctx = D3D12VA_FRAMES_CONTEXT(avctx); > - AVD3D12VAFramesContext *frames_hwctx = frames_ctx->hwctx; > - > const H264Context *h = avctx->priv_data; > const H264Picture *current_picture = h->cur_pic_ptr; > H264DecodePictureContext *ctx_pic = current_picture- > >hwaccel_picture_private; > diff --git a/libavcodec/d3d12va_hevc.c b/libavcodec/d3d12va_hevc.c > index 7e0c295a2d..a6a3b802f9 100644 > --- a/libavcodec/d3d12va_hevc.c > +++ b/libavcodec/d3d12va_hevc.c > @@ -98,10 +98,6 @@ static int d3d12va_hevc_decode_slice(AVCodecContext *avctx, > const uint8_t *buffe > #define START_CODE_SIZE 3 > static int update_input_arguments(AVCodecContext *avctx, > D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *input_args, ID3D12Resource *buffer) > { > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > - AVHWFramesContext *frames_ctx = D3D12VA_FRAMES_CONTEXT(avctx); > - AVD3D12VAFramesContext *frames_hwctx = frames_ctx->hwctx; > - > const HEVCContext *h = avctx->priv_data; > const HEVCFrame *current_picture = h->ref; > HEVCDecodePictureContext *ctx_pic = current_picture- > >hwaccel_picture_private; > @@ -166,7 +162,6 @@ static int d3d12va_hevc_end_frame(AVCodecContext *avctx) > > static int d3d12va_hevc_decode_init(AVCodecContext *avctx) > { > - HEVCContext *h = avctx->priv_data; > D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > DXVA_PicParams_HEVC pp; > > diff --git a/libavcodec/d3d12va_vc1.c b/libavcodec/d3d12va_vc1.c > index 3d15abd1f1..b39b03ab45 100644 > --- a/libavcodec/d3d12va_vc1.c > +++ b/libavcodec/d3d12va_vc1.c > @@ -95,9 +95,6 @@ static int d3d12va_vc1_decode_slice(AVCodecContext *avctx, > const uint8_t *buffer > > static int update_input_arguments(AVCodecContext *avctx, > D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *input_args, ID3D12Resource *buffer) > { > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > - AVHWFramesContext *frames_ctx = D3D12VA_FRAMES_CONTEXT(avctx); > - AVD3D12VAFramesContext *frames_hwctx = frames_ctx->hwctx; > const VC1Context *v = avctx->priv_data; > const MpegEncContext *s = &v->s; > D3D12DecodePictureContext *ctx_pic = s->current_picture_ptr- > >hwaccel_picture_private; > diff --git a/libavcodec/d3d12va_vp9.c b/libavcodec/d3d12va_vp9.c > index d6dfc905d9..5a1cb0187d 100644 > --- a/libavcodec/d3d12va_vp9.c > +++ b/libavcodec/d3d12va_vp9.c > @@ -85,10 +85,6 @@ static int d3d12va_vp9_decode_slice(AVCodecContext *avctx, > const uint8_t *buffer > > static int update_input_arguments(AVCodecContext *avctx, > D3D12_VIDEO_DECODE_INPUT_STREAM_ARGUMENTS *input_args, ID3D12Resource *buffer) > { > - D3D12VADecodeContext *ctx = D3D12VA_DECODE_CONTEXT(avctx); > - AVHWFramesContext *frames_ctx = D3D12VA_FRAMES_CONTEXT(avctx); > - AVD3D12VAFramesContext *frames_hwctx = frames_ctx->hwctx; > - > const VP9SharedContext *h = avctx->priv_data; > VP9DecodePictureContext *ctx_pic = h- > >frames[CUR_FRAME].hwaccel_picture_private; >
Patchset LGTM, Thanks Haihao _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".