[mythtv] Re: [mythtv-commits] mythtv commits (mythmusic FFTW breaks
build?)
Steven
mythmail at richardstraat.homedns.org
Sat May 14 17:49:44 UTC 2005
I've tried switching to the new fftw 3.0.1 but that doesn't fix things.
This is what I get :
g++ -c -pipe -Wall -W -fomit-frame-pointer -I/usr/include/SDL
-D_REENTRANT -D_REENTRANT -DPIC -fPIC -D_GNU_SOURCE -DPREFIX=\"/usr\"
-D_FILE_OFFSET_BITS=64 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_PLUGIN
-DQT_SHARED -I/usr/lib/qt/mkspecs/default -I. -I/usr/include
-I/usr/kde/3.3/include -I/usr/include -I/usr/include/cdda
-I/usr/lib/qt/include -I/usr/X11R6/include -o visualize.o visualize.cpp
visualize.cpp: In constructor `Spectrum::Spectrum()':
visualize.cpp:57: error: invalid conversion from `void*' to `fftw_real*'
visualize.cpp:58: error: invalid conversion from `void*' to `fftw_real*'
visualize.cpp:59: error: invalid conversion from `void*' to `fftw_real*'
visualize.cpp:60: error: invalid conversion from `void*' to `fftw_real*'
visualize.cpp: In constructor `Gears::Gears(QWidget*, const char*)':
visualize.cpp:610: error: invalid conversion from `void*' to `fftw_real*'
visualize.cpp:611: error: invalid conversion from `void*' to `fftw_real*'
visualize.cpp:612: error: invalid conversion from `void*' to `fftw_real*'
visualize.cpp:613: error: invalid conversion from `void*' to `fftw_real*'
make[2]: *** [visualize.o] Error 1
mythtv at cvs.mythtv.org schreef:
>----------------------------------------------------------------------------
>Changes committed by danielk on Fri May 13 16:36:30 2005
>
>Modified Files:
> in mythplugins/mythmusic/mythmusic:
> inlines.h visualize.cpp visualize.h
> in mythplugins:
> configure
>Log Message:
>
>Ported mythmusic to FFTW v 3.0, modified configure to enable FFTW3
>if present.
>
>I'm not sure if I got the amplitude funtion right in visualize.cpp.
>I cribbed the FFTW v 2.0 ones, but it appears to conflate the
>high and low frequencies. It may have something to do with the
>the rfftw_one returning an array of floats, while the new fftw_execute
>returns an array of complexes. But according to the 2.0 docs the
>rfftw_one function really returns complex values typecast as floats,
>in which case the 2.0 magnitude function is more broken than the 3.0
>magnitude fucntion.
>
>Someone who knows what this code is supposed to do should look at this.
>
>At this point it compiles, links, and appears to do the right
>thing in the visualizations to my untrained eyes.
>
>
>PS The arrays were not properly aligned before, I now allocate the
>arrays with av_malloc, so that FFTW can use SIMD instructions.
>The FFTW could be further sped up by using floats instead of doubles,
>using the SEE int32_to_float instructions when available, by using
>the halfcomplex-format DFT instead of the full FFT, and/or by saving
>and restoring the "FFTW Wisdom" to speed up startup time.
>
>* FFTW Wisdom is determined by executing several different FFT
>algorithms until the best one is found for the current array
>alignments, array sizes, processor architecture, etc. It doesn't
>take long on my 2.8Ghz machine, but...
>----------------------------------------------------------------------------
>
>
More information about the mythtv-dev
mailing list