This avoids related incompatible pointer type warnings.tags/n2.4
| @@ -297,6 +297,7 @@ static int commit_bitstream_and_slice_buffer(AVCodecContext *avctx, | |||||
| const H264Picture *current_picture = h->cur_pic_ptr; | const H264Picture *current_picture = h->cur_pic_ptr; | ||||
| struct dxva2_picture_context *ctx_pic = current_picture->hwaccel_picture_private; | struct dxva2_picture_context *ctx_pic = current_picture->hwaccel_picture_private; | ||||
| DXVA_Slice_H264_Short *slice = NULL; | DXVA_Slice_H264_Short *slice = NULL; | ||||
| void *dxva_data_ptr; | |||||
| uint8_t *dxva_data, *current, *end; | uint8_t *dxva_data, *current, *end; | ||||
| unsigned dxva_size; | unsigned dxva_size; | ||||
| void *slice_data; | void *slice_data; | ||||
| @@ -306,9 +307,11 @@ static int commit_bitstream_and_slice_buffer(AVCodecContext *avctx, | |||||
| /* Create an annex B bitstream buffer with only slice NAL and finalize slice */ | /* Create an annex B bitstream buffer with only slice NAL and finalize slice */ | ||||
| if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder, | if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder, | ||||
| DXVA2_BitStreamDateBufferType, | |||||
| &dxva_data, &dxva_size))) | |||||
| DXVA2_BitStreamDateBufferType, | |||||
| &dxva_data_ptr, &dxva_size))) | |||||
| return -1; | return -1; | ||||
| dxva_data = dxva_data_ptr; | |||||
| current = dxva_data; | current = dxva_data; | ||||
| end = dxva_data + dxva_size; | end = dxva_data + dxva_size; | ||||
| @@ -156,14 +156,17 @@ static int commit_bitstream_and_slice_buffer(AVCodecContext *avctx, | |||||
| s->current_picture_ptr->hwaccel_picture_private; | s->current_picture_ptr->hwaccel_picture_private; | ||||
| const int is_field = s->picture_structure != PICT_FRAME; | const int is_field = s->picture_structure != PICT_FRAME; | ||||
| const unsigned mb_count = s->mb_width * (s->mb_height >> is_field); | const unsigned mb_count = s->mb_width * (s->mb_height >> is_field); | ||||
| void *dxva_data_ptr; | |||||
| uint8_t *dxva_data, *current, *end; | uint8_t *dxva_data, *current, *end; | ||||
| unsigned dxva_size; | unsigned dxva_size; | ||||
| unsigned i; | unsigned i; | ||||
| if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder, | if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder, | ||||
| DXVA2_BitStreamDateBufferType, | DXVA2_BitStreamDateBufferType, | ||||
| &dxva_data, &dxva_size))) | |||||
| &dxva_data_ptr, &dxva_size))) | |||||
| return -1; | return -1; | ||||
| dxva_data = dxva_data_ptr; | |||||
| current = dxva_data; | current = dxva_data; | ||||
| end = dxva_data + dxva_size; | end = dxva_data + dxva_size; | ||||
| @@ -173,15 +173,17 @@ static int commit_bitstream_and_slice_buffer(AVCodecContext *avctx, | |||||
| const unsigned padding = 128 - ((start_code_size + slice_size) & 127); | const unsigned padding = 128 - ((start_code_size + slice_size) & 127); | ||||
| const unsigned data_size = start_code_size + slice_size + padding; | const unsigned data_size = start_code_size + slice_size + padding; | ||||
| void *dxva_data_ptr; | |||||
| uint8_t *dxva_data; | uint8_t *dxva_data; | ||||
| unsigned dxva_size; | unsigned dxva_size; | ||||
| int result; | int result; | ||||
| if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder, | if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder, | ||||
| DXVA2_BitStreamDateBufferType, | DXVA2_BitStreamDateBufferType, | ||||
| &dxva_data, &dxva_size))) | |||||
| &dxva_data_ptr, &dxva_size))) | |||||
| return -1; | return -1; | ||||
| dxva_data = dxva_data_ptr; | |||||
| result = data_size <= dxva_size ? 0 : -1; | result = data_size <= dxva_size ? 0 : -1; | ||||
| if (!result) { | if (!result) { | ||||
| if (start_code_size > 0) | if (start_code_size > 0) | ||||