Mercurial > libavcodec.hg
comparison dnxhdenc.c @ 8303:bf6a78c6697b libavcodec
dnxhd get_pixels_8x4_sym sse2
author | bcoudurier |
---|---|
date | Fri, 12 Dec 2008 00:19:14 +0000 |
parents | f54976d6a8a5 |
children | 7a463923ecd1 |
comparison
equal
deleted
inserted
replaced
8302:f54976d6a8a5 | 8303:bf6a78c6697b |
---|---|
171 | 171 |
172 ctx->m.avctx = avctx; | 172 ctx->m.avctx = avctx; |
173 ctx->m.mb_intra = 1; | 173 ctx->m.mb_intra = 1; |
174 ctx->m.h263_aic = 1; | 174 ctx->m.h263_aic = 1; |
175 | 175 |
176 ctx->get_pixels_8x4_sym = dnxhd_get_pixels_8x4; | |
177 | |
176 dsputil_init(&ctx->m.dsp, avctx); | 178 dsputil_init(&ctx->m.dsp, avctx); |
177 ff_dct_common_init(&ctx->m); | 179 ff_dct_common_init(&ctx->m); |
180 #ifdef HAVE_MMX | |
181 ff_dnxhd_init_mmx(ctx); | |
182 #endif | |
178 if (!ctx->m.dct_quantize) | 183 if (!ctx->m.dct_quantize) |
179 ctx->m.dct_quantize = dct_quantize_c; | 184 ctx->m.dct_quantize = dct_quantize_c; |
180 | 185 |
181 ctx->m.mb_height = (avctx->height + 15) / 16; | 186 ctx->m.mb_height = (avctx->height + 15) / 16; |
182 ctx->m.mb_width = (avctx->width + 15) / 16; | 187 ctx->m.mb_width = (avctx->width + 15) / 16; |
359 dsp->get_pixels(ctx->blocks[2], ptr_u , ctx->m.uvlinesize); | 364 dsp->get_pixels(ctx->blocks[2], ptr_u , ctx->m.uvlinesize); |
360 dsp->get_pixels(ctx->blocks[3], ptr_v , ctx->m.uvlinesize); | 365 dsp->get_pixels(ctx->blocks[3], ptr_v , ctx->m.uvlinesize); |
361 | 366 |
362 if (mb_y+1 == ctx->m.mb_height && ctx->m.avctx->height == 1080) { | 367 if (mb_y+1 == ctx->m.mb_height && ctx->m.avctx->height == 1080) { |
363 if (ctx->interlaced) { | 368 if (ctx->interlaced) { |
364 dnxhd_get_pixels_8x4(ctx->blocks[4], ptr_y + ctx->dct_y_offset , ctx->m.linesize); | 369 ctx->get_pixels_8x4_sym(ctx->blocks[4], ptr_y + ctx->dct_y_offset , ctx->m.linesize); |
365 dnxhd_get_pixels_8x4(ctx->blocks[5], ptr_y + ctx->dct_y_offset + 8, ctx->m.linesize); | 370 ctx->get_pixels_8x4_sym(ctx->blocks[5], ptr_y + ctx->dct_y_offset + 8, ctx->m.linesize); |
366 dnxhd_get_pixels_8x4(ctx->blocks[6], ptr_u + ctx->dct_uv_offset , ctx->m.uvlinesize); | 371 ctx->get_pixels_8x4_sym(ctx->blocks[6], ptr_u + ctx->dct_uv_offset , ctx->m.uvlinesize); |
367 dnxhd_get_pixels_8x4(ctx->blocks[7], ptr_v + ctx->dct_uv_offset , ctx->m.uvlinesize); | 372 ctx->get_pixels_8x4_sym(ctx->blocks[7], ptr_v + ctx->dct_uv_offset , ctx->m.uvlinesize); |
368 } else { | 373 } else { |
369 dsp->clear_block(ctx->blocks[4]); dsp->clear_block(ctx->blocks[5]); | 374 dsp->clear_block(ctx->blocks[4]); dsp->clear_block(ctx->blocks[5]); |
370 dsp->clear_block(ctx->blocks[6]); dsp->clear_block(ctx->blocks[7]); | 375 dsp->clear_block(ctx->blocks[6]); dsp->clear_block(ctx->blocks[7]); |
371 } | 376 } |
372 } else { | 377 } else { |