I made an ebuild for libsoundtouch-1.2.1, an audio processing library for changing the tempo, pitch and playback rates. it's needed for media-sound/rezound-1.10.0_beta (see Bug 59041). currently tested only on x86, but should work on other platforms as well. Just test to compile! ;-) Reproducible: Always Steps to Reproduce:
Created attachment 36577 [details] libsoundtouch-1.2.1.ebuild prefered location: media-libs/libsoundtouch
hmpf! ;-) wait, this library uses a dirty hack to switch between INTEGER_SAMPLES and FLOAT_SAMPLES. It wants a #define during compile-time. VERY ODD!!!! and the default is INTEGER_SAMPLES (which is a short, not an int!), which is faster, but less accurate. Apps like ReZound are working with floats and so I think FLOAT_SAMPLES is a better default. I hack in a 'sed' patch. I'm not sure, if a USE-flag is needed for it, so I don't use it for the time being. stay tuned!
Created attachment 36578 [details] libsoundtouch-1.2.1.ebuild hacked in 'sed' patch for changing sample type to FLOAT.
hmpf^2! never make an ebuild when you're out of time. *g* there's another flaw. It doesn't use CFLAGS. It uses its own. I'll fix it. stay tuned...
Created attachment 36579 [details] libsoundtouch-1.2.1.ebuild final version. Fixed C(XX)FLAGS handling. Now *our* C(XX)FLAGS are used. I hate such stupid configure scripts! They tell us, that one can use own CFLAGS and then they overwrite them with stupid defaults (-g -O2) w/o any notice. :-/
yo! finally it's perfect ;-) with floats it's even much faster in ReZound, since ReZound uses floats internally and doesn't have to convert the samples. using 'Change Tempo' in ReZound with 'shorts' were about 30 seconds per channel on my sample test file. With floats it's only about 10 seconds per channel. MUCH FASTER!!!
Stefan, the ebuild looks pretty ok to me. - could you move the sed stuff for the float samples into a src_unpack() function? - how can I test/validate that it works correctly?
ok, no problem, I do it later when I'm @home again. you can test the /usr/bin/soundstretch binary. furthermore: test my rezound ebuild, it uses the soundstretch libs and works perfect. ;-)
Created attachment 37309 [details] libsoundtouch-1.2.1.ebuild 'sed' to src_unpack()
added to CVS. Thanks for your submission!