Fix XvMC. XvMCCreateBlocks() may not allocate 16-byte aligned blocks,

so we can't use SSE-optimized routines.

Originally committed as revision 21011 to svn://svn.ffmpeg.org/ffmpeg/trunk
release/0.6
Gwenole Beauchesne 15 years ago
parent 2cf9c7ef9c
commit 5716aec3f9
  1. 4
      libavcodec/x86/dsputil_mmx.c

@ -2596,7 +2596,9 @@ void dsputil_init_mmx(DSPContext* c, AVCodecContext *avctx)
c->add_pixels_clamped = add_pixels_clamped_mmx;
c->clear_block = clear_block_mmx;
c->clear_blocks = clear_blocks_mmx;
if (mm_flags & FF_MM_SSE){
if ((mm_flags & FF_MM_SSE) &&
!(CONFIG_MPEG_XVMC_DECODER && avctx->xvmc_acceleration > 1)){
/* XvMCCreateBlocks() may not allocate 16-byte aligned blocks */
c->clear_block = clear_block_sse;
c->clear_blocks = clear_blocks_sse;
}

Loading…
Cancel
Save