[FFmpeg-devel] [PATCH] SSE2 version of vf_idet's filter_line()

Pascal Massimino pascal.massimino at gmail.com
Wed Sep 3 00:49:14 CEST 2014


Michael,


On Tue, Sep 2, 2014 at 9:39 AM, Michael Niedermayer <michaelni at gmx.at>
wrote:

> On Tue, Sep 02, 2014 at 05:13:08PM +0200, Pascal Massimino wrote:
> > Hi,
> >
> > Much faster.
> > An example (time ffmpeg -i ... -vf idet -f null /dev/null)
> > Raw C:     user 25.007s
> > MMX:        user 16.818s
> > MMXEXT: user 16.191s
> > SSE2:       user 15.481s
> > no idet filter:  user 15.025s
> >
> > YMMV.
> > skal
>
> >  vf_idet.c          |   34 +--------
> >  vf_idet.h          |   55 +++++++++++++++
> >  x86/Makefile       |    2
> >  x86/vf_idet.asm    |  193
> +++++++++++++++++++++++++++++++++++++++++++++++++++++
> >  x86/vf_idet_init.c |   53 ++++++++++++++
> >  5 files changed, 307 insertions(+), 30 deletions(-)
> > 0caf7533ffffd437c2f14cb0b42fd701f467a2cd  idet_sse2.patch
> > commit de5064a0126a0a5bed9d8f151fa79b07614729fe
> > Author: skal <pascal.massimino at gmail.com>
> > Date:   Tue Sep 2 16:55:29 2014 +0200
>
> "git am" didnt like this, it needs git format-patch or
> send-email output.
>
>
> also fails to build on x86-32 after applying it with patch -p1
>

silly question: how do you compile for x86-32?
I tried './configure --arch=x86_32' but it didn't trigger this compile
error...

thx!
skal

[ahem: ffmpeg doesn't feel like using intrinsics, by chance?]


> libavfilter/x86/vf_idet.asm:123: error: undefined symbol `r7d' (first use)
> libavfilter/x86/vf_idet.asm:123: error:  (Each undefined symbol is
> reported only once.)
> libavfilter/x86/vf_idet.asm:123: error: undefined symbol
> `ff_idet_filter_line_mmxext.end' (first use)
> libavfilter/x86/vf_idet.asm:123: error: undefined symbol `r7' (first use)
> libavfilter/x86/vf_idet.asm:123: warning: `movsxd' is an instruction in
> 64-bit mode
> libavfilter/x86/vf_idet.asm:123: error: instruction expected after label
> libavfilter/x86/vf_idet.asm:123: error: undefined symbol
> `movsxd.left_over_loop' (first use)
> libavfilter/x86/vf_idet.asm:127: error: undefined symbol
> `ff_idet_filter_line_mmx.end' (first use)
> libavfilter/x86/vf_idet.asm:127: warning: `movsxd' is an instruction in
> 64-bit mode
> libavfilter/x86/vf_idet.asm:127: error: instruction expected after label
> libavfilter/x86/vf_idet.asm:127: error: redefinition of `movsxd.end'
> libavfilter/x86/vf_idet.asm:123: error: `movsxd.end' previously defined
> here
> libavfilter/x86/vf_idet.asm:187: error: undefined symbol
> `ff_idet_filter_line_sse2.sse2_end' (first use)
> libavfilter/x86/vf_idet.asm:189: warning: `movsxd' is an instruction in
> 64-bit mode
> libavfilter/x86/vf_idet.asm:189: error: instruction expected after label
>
> and if you want to maintain this, dont hesitate to add yourself to
> the MAINTAINERs file
>
> thx
>
> [...]
>
> --
> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> it is not once nor twice but times without number that the same ideas make
> their appearance in the world. -- Aristotle
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>


More information about the ffmpeg-devel mailing list