Hi, On Sun, Mar 27, 2016 at 7:09 AM, Thomas Mundt < loudmax-at-yahoo...@ffmpeg.org> wrote:
> >>>Ronald S. Bultje <rsbul...@gmail.com> schrieb am Sa, 26.3.2016: > > On Sat, Mar 26, 2016 at 10:04 AM, Thomas Mundt <loudmax-at-yahoo.de at > ffmpeg.org> wrote: > > > >>>>>Kieran Kunhya <kierank at obe.tv> schrieb am Sa, 26.3.2016: > >> >> On Fri, 25 Mar 2016 at 22:32 Thomas Mundt <loudmax-at-yahoo.de at> > ffmpeg.org> wrote: > >> > > >> >> Signed-off-by: Thomas Mundt <loudmax at yahoo.de> > >> >> --- > >> >> libavfilter/vf_colormatrix.c | 182 > >> >> ++++++++++++++++++++++++++++++++++++++++++- > >> >> > >>> > > >> > These functions are basically the same, have you considered factoring > the > >> > code out? > >> > > >> > Kieran > >> > >> I thought keeping it seperate would be easier to review. > >> But I can do that. Maybe as a subsequent patch? > > > > > > I think he means templating out typelessly like h264/hevc/vp9 do. I agree > > that would probably be nicer. Binary size is same but less duplicated > code. > > > > Ronald > > Okay, I tried to solve this with the use of macros. The attached file is > the result (interesting part starting at line 203). > It works, but I´m not sure if this is what you expect. > Also I didn´t find a way factoring out the two different av_clip. > One could replace av_clip_uint8 by av_clip with limits 0 and 255. But this > would have an impact on speed. > If there is a more elegant way, could you please provide a short example?! We don't like macros, but you're surprisingly close. Have a look at libavcodec/bit_depth_template.c and grep for its usage in libavcodec. You'll end up with a vf_colormatrixdsp_template.c file, which includes bit_depth_template.c for types/clips etc., and it will then define full functions per bit depth. This is included in vf_colormatrixdsp.c, and that defines the actual dsp functions which do the core of what this filter does. Since it's now in a dsp file, it'll be trivial to write x86 simd for it (which I have also in the works). Ronald _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel