Mercurial > libavcodec.hg
comparison dsputil.c @ 5289:f44baba9edc3 libavcodec
Integrate reference mpeg IDCT into dsputil.
author | iive |
---|---|
date | Wed, 11 Jul 2007 22:05:43 +0000 |
parents | ef85411bb7e8 |
children | d0351b81bc7c |
comparison
equal
deleted
inserted
replaced
5288:8c0bbf712d76 | 5289:f44baba9edc3 |
---|---|
3751 } | 3751 } |
3752 } | 3752 } |
3753 | 3753 |
3754 /* XXX: those functions should be suppressed ASAP when all IDCTs are | 3754 /* XXX: those functions should be suppressed ASAP when all IDCTs are |
3755 converted */ | 3755 converted */ |
3756 static void ff_mpeg_idct_put_c(uint8_t *dest, int line_size, DCTELEM *block) | |
3757 { | |
3758 ff_mpeg_idct_c(block); | |
3759 put_pixels_clamped_c(block, dest, line_size); | |
3760 } | |
3761 static void ff_mpeg_idct_add_c(uint8_t *dest, int line_size, DCTELEM *block) | |
3762 { | |
3763 ff_mpeg_idct_c(block); | |
3764 add_pixels_clamped_c(block, dest, line_size); | |
3765 } | |
3766 | |
3756 static void ff_jref_idct_put(uint8_t *dest, int line_size, DCTELEM *block) | 3767 static void ff_jref_idct_put(uint8_t *dest, int line_size, DCTELEM *block) |
3757 { | 3768 { |
3758 j_rev_dct (block); | 3769 j_rev_dct (block); |
3759 put_pixels_clamped_c(block, dest, line_size); | 3770 put_pixels_clamped_c(block, dest, line_size); |
3760 } | 3771 } |
3889 avctx->idct_algo==FF_IDCT_VP3){ | 3900 avctx->idct_algo==FF_IDCT_VP3){ |
3890 c->idct_put= ff_vp3_idct_put_c; | 3901 c->idct_put= ff_vp3_idct_put_c; |
3891 c->idct_add= ff_vp3_idct_add_c; | 3902 c->idct_add= ff_vp3_idct_add_c; |
3892 c->idct = ff_vp3_idct_c; | 3903 c->idct = ff_vp3_idct_c; |
3893 c->idct_permutation_type= FF_NO_IDCT_PERM; | 3904 c->idct_permutation_type= FF_NO_IDCT_PERM; |
3905 }else if(avctx->idct_algo==FF_IDCT_MPEG){ | |
3906 c->idct_put= ff_mpeg_idct_put_c; | |
3907 c->idct_add= ff_mpeg_idct_add_c; | |
3908 c->idct = ff_mpeg_idct_c; | |
3909 c->idct_permutation_type= FF_NO_IDCT_PERM; | |
3894 }else{ //accurate/default | 3910 }else{ //accurate/default |
3895 c->idct_put= simple_idct_put; | 3911 c->idct_put= simple_idct_put; |
3896 c->idct_add= simple_idct_add; | 3912 c->idct_add= simple_idct_add; |
3897 c->idct = simple_idct; | 3913 c->idct = simple_idct; |
3898 c->idct_permutation_type= FF_NO_IDCT_PERM; | 3914 c->idct_permutation_type= FF_NO_IDCT_PERM; |