|
|
|
@ -303,7 +303,7 @@ static int mpeg_decode_mb(MpegEncContext *s, |
|
|
|
|
}else |
|
|
|
|
memset(s->last_mv, 0, sizeof(s->last_mv)); /* reset mv prediction */ |
|
|
|
|
s->mb_intra = 1; |
|
|
|
|
#ifdef HAVE_XVMC |
|
|
|
|
#ifdef CONFIG_XVMC |
|
|
|
|
//if 1, we memcpy blocks in xvmcvideo
|
|
|
|
|
if(s->avctx->xvmc_acceleration > 1){ |
|
|
|
|
XVMC_pack_pblocks(s,-1);//inter are always full blocks
|
|
|
|
@ -516,7 +516,7 @@ static int mpeg_decode_mb(MpegEncContext *s, |
|
|
|
|
return -1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#ifdef HAVE_XVMC |
|
|
|
|
#ifdef CONFIG_XVMC |
|
|
|
|
//if 1, we memcpy blocks in xvmcvideo
|
|
|
|
|
if(s->avctx->xvmc_acceleration > 1){ |
|
|
|
|
XVMC_pack_pblocks(s,cbp); |
|
|
|
@ -1639,7 +1639,7 @@ static int mpeg_field_start(MpegEncContext *s){ |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
#ifdef HAVE_XVMC |
|
|
|
|
#ifdef CONFIG_XVMC |
|
|
|
|
// MPV_frame_start will call this function too,
|
|
|
|
|
// but we need to call it on every field
|
|
|
|
|
if(s->avctx->xvmc_acceleration) |
|
|
|
@ -1730,7 +1730,7 @@ static int mpeg_decode_slice(Mpeg1Context *s1, int mb_y, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
for(;;) { |
|
|
|
|
#ifdef HAVE_XVMC |
|
|
|
|
#ifdef CONFIG_XVMC |
|
|
|
|
//If 1, we memcpy blocks in xvmcvideo.
|
|
|
|
|
if(s->avctx->xvmc_acceleration > 1) |
|
|
|
|
XVMC_init_block(s);//set s->block
|
|
|
|
@ -1912,7 +1912,7 @@ static int slice_end(AVCodecContext *avctx, AVFrame *pict) |
|
|
|
|
if (!s1->mpeg_enc_ctx_allocated || !s->current_picture_ptr) |
|
|
|
|
return 0; |
|
|
|
|
|
|
|
|
|
#ifdef HAVE_XVMC |
|
|
|
|
#ifdef CONFIG_XVMC |
|
|
|
|
if(s->avctx->xvmc_acceleration) |
|
|
|
|
XVMC_field_end(s); |
|
|
|
|
#endif |
|
|
|
@ -2472,7 +2472,7 @@ AVCodec mpegvideo_decoder = { |
|
|
|
|
.long_name= NULL_IF_CONFIG_SMALL("MPEG-1 video"), |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
#ifdef HAVE_XVMC |
|
|
|
|
#ifdef CONFIG_XVMC |
|
|
|
|
static av_cold int mpeg_mc_decode_init(AVCodecContext *avctx){ |
|
|
|
|
Mpeg1Context *s; |
|
|
|
|
|
|
|
|
|