On Wed, Oct 01, 2014 at 08:08:18PM -0300, James Almer wrote: > On 01/10/14 8:04 PM, Michael Niedermayer wrote: > > On Wed, Oct 01, 2014 at 05:14:38PM -0300, James Almer wrote: > >> This makes the addition of arch optimized functions easier. > >> > >> Signed-off-by: James Almer <jamr...@gmail.com> > >> --- > >> libavcodec/Makefile | 2 +- > >> libavcodec/jpeg2000dec.c | 71 +++++++++-------------------------- > >> libavcodec/jpeg2000dsp.c | 98 > >> ++++++++++++++++++++++++++++++++++++++++++++++++ > >> libavcodec/jpeg2000dsp.h | 35 +++++++++++++++++ > >> libavcodec/jpeg2000dwt.h | 3 +- > >> 5 files changed, 153 insertions(+), 56 deletions(-) > >> create mode 100644 libavcodec/jpeg2000dsp.c > >> create mode 100644 libavcodec/jpeg2000dsp.h > > [...] > >> +static void mct_decode97_float(void *_src0, void *_src1, void *_src2, int > >> csize) > >> +{ > >> + float *src0 = _src0, *src1 = _src1, *src2 = _src2; > >> + float i0f, i1f, i2f; > >> + int i; > >> + > >> + for (i = 0; i < csize; i++) { > >> + i0f = *src0 + (f_ict_params[0] * *src2); > >> + i1f = *src0 - (f_ict_params[1] * *src1) > >> + - (f_ict_params[2] * *src2); > >> + i2f = *src0 + (f_ict_params[3] * *src1); > >> + *src0++ = i0f; > >> + *src1++ = i1f; > >> + *src2++ = i2f; > >> + } > >> +} > >> + > >> +static void mct_decode97_int(void *_src0, void *_src1, void *_src2, int > >> csize) > >> +{ > >> + int32_t *src0 = _src0, *src1 = _src1, *src2 = _src2; > >> + int32_t i0, i1, i2; > >> + int i; > >> + > >> + for (i = 0; i < csize; i++) { > >> + i0 = *src0 + (((i_ict_params[0] * *src2) + (1 << 15)) >> 16); > >> + i1 = *src0 - (((i_ict_params[1] * *src1) + (1 << 15)) >> 16) > >> + - (((i_ict_params[2] * *src2) + (1 << 15)) >> 16); > >> + i2 = *src0 + (((i_ict_params[3] * *src1) + (1 << 15)) >> 16); > >> + *src0++ = i0; > >> + *src1++ = i1; > >> + *src2++ = i2; > >> + } > >> +} > >> + > >> +static void mct_decode53(void *_src0, void *_src1, void *_src2, int csize) > > > > the function names are not good > > the code is not related to the 5/3 and 9/7 wavelets > > Well, the code checks for one of the three DWTType values (FF_DWT97, > FF_DWT97_INT and > FF_DWT53) to choose what to run, so these names seemed adequate to me. > > What names do you suggest then?
the terms used by jpeg2000 are rct and ict, for Reversible multiple component transformation (RCT) and Irreversible multiple component transformation (ICT) we have 2 implementations of the ICT, one float and one int so id suggest ict_float, ict_int, rct_int maybe throwing a f/i in for forward and inverse, maybe instead not abbreviating something, i dunno, pick what you prefer [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Republics decline into democracies and democracies degenerate into despotisms. -- Aristotle
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel