mirror of https://git.ffmpeg.org/ffmpeg.git
dxva2: Pass variable of correct type to IDirectXVideoDecoder_GetBuffer()
This avoids related incompatible pointer type warnings.
This commit is contained in:
parent
37c46743ee
commit
4600a85eaa
|
@ -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,
|
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;
|
||||||
|
|
||||||
|
|
|
@ -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)
|
||||||
|
|
Loading…
Reference in New Issue