Merge commit '4600a85eaa6182e5a27464f6b9cae5a9ddbf3098'

* commit '4600a85eaa6182e5a27464f6b9cae5a9ddbf3098':
  dxva2: Pass variable of correct type to IDirectXVideoDecoder_GetBuffer()

Conflicts:
	libavcodec/dxva2_h264.c
	libavcodec/dxva2_mpeg2.c
	libavcodec/dxva2_vc1.c

See: 64c53fa16aeca9cadd48ccf607803d6e4d26cc4d
Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2014-09-01 20:29:38 +02:00
commit 052cd1ce72
3 changed files with 12 additions and 4 deletions

View File

@ -297,6 +297,7 @@ static int commit_bitstream_and_slice_buffer(AVCodecContext *avctx,
const H264Picture *current_picture = h->cur_pic_ptr;
struct dxva2_picture_context *ctx_pic = current_picture->hwaccel_picture_private;
DXVA_Slice_H264_Short *slice = NULL;
void *dxva_data_ptr;
uint8_t *dxva_data, *current, *end;
unsigned dxva_size;
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 */
if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder,
DXVA2_BitStreamDateBufferType,
(void **)&dxva_data, &dxva_size)))
DXVA2_BitStreamDateBufferType,
&dxva_data_ptr, &dxva_size)))
return -1;
dxva_data = dxva_data_ptr;
current = dxva_data;
end = dxva_data + dxva_size;

View File

@ -155,14 +155,17 @@ static int commit_bitstream_and_slice_buffer(AVCodecContext *avctx,
s->current_picture_ptr->hwaccel_picture_private;
const int is_field = s->picture_structure != PICT_FRAME;
const unsigned mb_count = s->mb_width * (s->mb_height >> is_field);
void *dxva_data_ptr;
uint8_t *dxva_data, *current, *end;
unsigned dxva_size;
unsigned i;
if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder,
DXVA2_BitStreamDateBufferType,
(void **)&dxva_data, &dxva_size)))
&dxva_data_ptr, &dxva_size)))
return -1;
dxva_data = dxva_data_ptr;
current = dxva_data;
end = dxva_data + dxva_size;

View File

@ -192,15 +192,17 @@ static int commit_bitstream_and_slice_buffer(AVCodecContext *avctx,
const unsigned padding = 128 - ((start_code_size + slice_size) & 127);
const unsigned data_size = start_code_size + slice_size + padding;
void *dxva_data_ptr;
uint8_t *dxva_data;
unsigned dxva_size;
int result;
if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder,
DXVA2_BitStreamDateBufferType,
(void **)&dxva_data, &dxva_size)))
&dxva_data_ptr, &dxva_size)))
return -1;
dxva_data = dxva_data_ptr;
result = data_size <= dxva_size ? 0 : -1;
if (!result) {
if (start_code_size > 0) {