Mercurial > libavcodec.hg
comparison ppc/dsputil_ppc.c @ 9711:d563821462b4 libavcodec
Altivec VP3 IDCT
author | conrad |
---|---|
date | Mon, 25 May 2009 22:19:35 +0000 |
parents | 5b68d22e5ec9 |
children | d6d7e8d4a04d |
comparison
equal
deleted
inserted
replaced
9710:679b42929a09 | 9711:d563821462b4 |
---|---|
29 void fdct_altivec(int16_t *block); | 29 void fdct_altivec(int16_t *block); |
30 void gmc1_altivec(uint8_t *dst, uint8_t *src, int stride, int h, | 30 void gmc1_altivec(uint8_t *dst, uint8_t *src, int stride, int h, |
31 int x16, int y16, int rounder); | 31 int x16, int y16, int rounder); |
32 void idct_put_altivec(uint8_t *dest, int line_size, int16_t *block); | 32 void idct_put_altivec(uint8_t *dest, int line_size, int16_t *block); |
33 void idct_add_altivec(uint8_t *dest, int line_size, int16_t *block); | 33 void idct_add_altivec(uint8_t *dest, int line_size, int16_t *block); |
34 | |
35 void ff_vp3_idct_altivec(DCTELEM *block); | |
36 void ff_vp3_idct_put_altivec(uint8_t *dest, int line_size, DCTELEM *block); | |
37 void ff_vp3_idct_add_altivec(uint8_t *dest, int line_size, DCTELEM *block); | |
34 | 38 |
35 void dsputil_h264_init_ppc(DSPContext* c, AVCodecContext *avctx); | 39 void dsputil_h264_init_ppc(DSPContext* c, AVCodecContext *avctx); |
36 | 40 |
37 void dsputil_init_altivec(DSPContext* c, AVCodecContext *avctx); | 41 void dsputil_init_altivec(DSPContext* c, AVCodecContext *avctx); |
38 void vc1dsp_init_altivec(DSPContext* c, AVCodecContext *avctx); | 42 void vc1dsp_init_altivec(DSPContext* c, AVCodecContext *avctx); |
281 if ((avctx->idct_algo == FF_IDCT_AUTO) || | 285 if ((avctx->idct_algo == FF_IDCT_AUTO) || |
282 (avctx->idct_algo == FF_IDCT_ALTIVEC)) { | 286 (avctx->idct_algo == FF_IDCT_ALTIVEC)) { |
283 c->idct_put = idct_put_altivec; | 287 c->idct_put = idct_put_altivec; |
284 c->idct_add = idct_add_altivec; | 288 c->idct_add = idct_add_altivec; |
285 c->idct_permutation_type = FF_TRANSPOSE_IDCT_PERM; | 289 c->idct_permutation_type = FF_TRANSPOSE_IDCT_PERM; |
290 }else if((CONFIG_VP3_DECODER || CONFIG_VP5_DECODER || CONFIG_VP6_DECODER || CONFIG_THEORA_DECODER) && | |
291 avctx->idct_algo==FF_IDCT_VP3){ | |
292 c->idct_put = ff_vp3_idct_put_altivec; | |
293 c->idct_add = ff_vp3_idct_add_altivec; | |
294 c->idct = ff_vp3_idct_altivec; | |
295 c->idct_permutation_type = FF_TRANSPOSE_IDCT_PERM; | |
286 } | 296 } |
287 } | 297 } |
288 | 298 |
289 #if CONFIG_POWERPC_PERF | 299 #if CONFIG_POWERPC_PERF |
290 { | 300 { |