Thread: [Audacity-devel] Change Tempo now works
A free multi-track audio editor and recorder
Brought to you by:
aosiniao
|
From: Dominic M. <do...@mi...> - 2003-03-26 08:47:25
|
Change Tempo now works! I decided to go with SoundTouch by Olli Parviainen. I used Paul Davis's floating-point patches, but I completely rewrote the build system because I didn't like either Olli's or Paul's. It's checked into lib-src now, and it works on Linux (configure --with-soundtouch, enabled by default). It should be easy enough to get it to work on Windows by creating a project file for the SoundTouch library (it doesn't need any special options; include all .cc files except for mmx_gcc.cc) and enabling the USE_SOUNDTOUCH macro in configwin.h Vaughan, are you at all interested in writing Change Pitch sometime in the next few weeks? I think you did an excellent job with both the Change Tempo and Change Speed GUIs, and it's be great if you feel like doing this last one, too. The nice bonus is that it will only take about 5 lines of code to make it functional - all you have to do is inherit from EffectSoundTouch and initialize SoundTouch with the pitch offset. And I will get around to Change Speed soon, using libsamplerate. - Dominic |
|
From: Alexandre P. <av...@al...> - 2003-03-26 15:21:18
|
On Wed, 26 Mar 2003 00:49:46 -0800 Dominic Mazzoni <do...@mi...> wrote: > Change Tempo now works! > > I decided to go with SoundTouch by Olli Parviainen. I used > Paul Davis's floating-point patches, but I completely > rewrote the build system because I didn't like either > Olli's or Paul's. It's checked into lib-src now, and it > works on Linux (configure --with-soundtouch, enabled by > default). configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating lib-src/Makefile config.status: creating lib-src/allegro/Makefile config.status: creating lib-src/expat/Makefile config.status: creating locale/Makefile config.status: creating tests/Makefile config.status: creating src/configunix.h configure: configuring in lib-src/soundtouch configure: running /bin/sh ./configure --prefix=/usr/local --with-help --with-portmixer --with-nyquist --with-ladspa --with-libflac --with-libsamplerate=local --with-libsndfile=system --with-id3tag --with-vorbis --with-libmad --with-soundtouch --cache-file=/dev/null --srcdir=../configure: ./configure: No such file or directory configure: error: /bin/sh ./configure failed for lib-src/soundtouch sed: can't read confdefs.h: No such file or directory The option are: ./configure --prefix=/usr/local --with-help --with-portmixer --with-nyquist --with-ladspa --with-libflac --with-libsamplerate=local --with-libsndfile=system --with-id3tag --with-vorbis --with-libmad --with-soundtouch -- Alexandre Prokoudine ALT Linux Documentation Team JID: av...@al... |
|
From: Dominic M. <do...@mi...> - 2003-03-26 16:51:49
|
Did you do a cvs update -d to get new directories? Either do that, or specifically checkout audacity/lib-src/soundtouch. - Dominic Alexandre Prokoudine wrote: > On Wed, 26 Mar 2003 00:49:46 -0800 > Dominic Mazzoni <do...@mi...> wrote: > > >>Change Tempo now works! >> >>I decided to go with SoundTouch by Olli Parviainen. I used >>Paul Davis's floating-point patches, but I completely >>rewrote the build system because I didn't like either >>Olli's or Paul's. It's checked into lib-src now, and it >>works on Linux (configure --with-soundtouch, enabled by >>default). > > > configure: creating ./config.status > config.status: creating Makefile > config.status: creating src/Makefile > config.status: creating lib-src/Makefile > config.status: creating lib-src/allegro/Makefile > config.status: creating lib-src/expat/Makefile > config.status: creating locale/Makefile > config.status: creating tests/Makefile > config.status: creating src/configunix.h > configure: configuring in lib-src/soundtouch > configure: running /bin/sh ./configure --prefix=/usr/local > --with-help --with-portmixer --with-nyquist --with-ladspa > --with-libflac --with-libsamplerate=local --with-libsndfile=system > --with-id3tag --with-vorbis --with-libmad --with-soundtouch > --cache-file=/dev/null --srcdir=../configure: ./configure: No such > file or directory configure: error: /bin/sh ./configure failed for > lib-src/soundtouch sed: can't read confdefs.h: No such file or > directory > > The option are: > > ./configure --prefix=/usr/local --with-help --with-portmixer > --with-nyquist --with-ladspa --with-libflac > --with-libsamplerate=local --with-libsndfile=system --with-id3tag > --with-vorbis --with-libmad --with-soundtouch > |
|
From: Alexandre P. <av...@al...> - 2003-03-26 17:51:59
|
On Wed, 26 Mar 2003 08:54:12 -0800 Dominic Mazzoni <do...@mi...> wrote: > Did you do a cvs update -d to get new directories? Either > do that, or specifically checkout audacity/lib-src/soundtouch. I have a script which does updates with -d option Is it cirrect that the option --with-soundtouch has no further definition like =no, =system or =local? I'll do a clean checkout a bit later -- Alexandre Prokoudine ALT Linux Documentation Team JID: av...@al... |
|
From: Alexandre P. <av...@al...> - 2003-03-26 18:36:40
|
On Wed, 26 Mar 2003 08:54:12 -0800 Dominic Mazzoni <do...@mi...> wrote: > Did you do a cvs update -d to get new directories? Either > do that, or specifically checkout audacity/lib-src/soundtouch. Clean checkout has done Sorry, but it is the same --with-libmad --with-soundtouch--cache-file=/dev/null --srcdir=../configure: ./configure: No such file or directory configure: error: /bin/sh ./configure failed for lib-src/soundtouch sed: can't read confdefs.h: No such file or directory -- Alexandre Prokoudine ALT Linux Documentation Team JID: av...@al... |
|
From: Federico G. <do...@ca...> - 2003-03-27 03:55:34
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Wed, Mar 26, 2003 at 09:36:26PM +0300, Alexandre Prokoudine wrote: > On Wed, 26 Mar 2003 08:54:12 -0800 > Dominic Mazzoni <do...@mi...> wrote: > > > Did you do a cvs update -d to get new directories? Either > > do that, or specifically checkout audacity/lib-src/soundtouch. > > Clean checkout has done > > Sorry, but it is the same > > --with-libmad --with-soundtouch--cache-file=/dev/null > --srcdir=../configure: ./configure: No such file or directory > configure: error: /bin/sh ./configure failed for lib-src/soundtouch > sed: can't read confdefs.h: No such file or directory > I experience the same problem after a cvs update: donfede@xwing:~/projects/compile_audacity/audacity$ ./configure checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for executable suffix... checking for object suffix... o ... config.status: creating src/configunix.h configure: configuring in lib-src/soundtouch configure: running /bin/sh ./configure --cache-file=/dev/null --srcdir=. ./configure: ./configure: No such file or directory configure: error: /bin/sh ./configure failed for lib-src/soundtouch sed: can't read confdefs.h: No such file or directory donfede@xwing:~/projects/compile_audacity/audacity$ ls lib-src/soundtouch/ config.guess config.sub configure.in COPYING CVS install-sh README src win donfede -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE+gnYyx+yU3uQx8M4RAkgsAJwJnO80W11hX4nY5fQBZ1XmbXeRdQCcCqGr REhpvDUIAr0TxbwFK39DWfY= =yVKS -----END PGP SIGNATURE----- |
|
From: Vaughan J. <vjo...@co...> - 2003-03-27 03:35:19
|
Dominic Mazzoni wrote:
> Change Tempo now works!
Woo-hoo! Thanks, Dominic.
>
>
> I decided to go with SoundTouch by Olli Parviainen. I used
> Paul Davis's floating-point patches, but I completely
> rewrote the build system because I didn't like either
> Olli's or Paul's. It's checked into lib-src now, and it
> works on Linux (configure --with-soundtouch, enabled by
> default).
Glad you did this. I haven't had time, but I couldn't have made all the
wise decisions you did about what library to use & how to do so... if
I'd been able to get anywhere at all!
>
>
> It should be easy enough to get it to work on Windows by
> creating a project file for the SoundTouch library (it
> doesn't need any special options; include all .cc files
> except for mmx_gcc.cc) and enabling the USE_SOUNDTOUCH
> macro in configwin.h
I did that, and ran into a couple of snags, which I think I overcame,
but please review:
* Visual Studio doesn't automatically know to compile .cc files. I saw
that there are a bunch in libflac_cpp, with Custom Build commands
associated with them. So, I just copied those Custom Build settings for
the soundtouch files & modified the paths. Are those commands likely to
be right? I haven't done Custom Build stuff before.
* In mmx_win.cc:
* It didn't like the args to various TDStretch methods being Sample
in the declaration and short in the implementation. I changed the
implementations.
* In TDStretch::mmxSeekBestOverlapPositionStereoQuick,
short *local_refMidBuffer = pRefMidBuffer
caused a type-mismatch errror, but local_refMidBuffer wasn't
used so I removed it.
* In TDStretch::mmxOverlapStereo,
short *local_midBuffer = pMidBuffer;
caused a type-mismatch errror, but and local_midBuffer is used
so I changed the declaration to
float *local_midBuffer = pMidBuffer;
Is that okay?
Change Tempo is working for me. I did get some interesting jittery-ness
on slowing things way down (like -75%), so if that's not happening on
Linux, it may be a problem in my compile flags or what I did in
TDStretch::mmxOverlapStereo. Checked it all in.
>
>
> Vaughan, are you at all interested in writing Change Pitch
> sometime in the next few weeks? I think you did an
> excellent job with both the Change Tempo and Change Speed
> GUIs, and it's be great if you feel like doing this last
> one, too. The nice bonus is that it will only take about
> 5 lines of code to make it functional - all you have to
> do is inherit from EffectSoundTouch and initialize
> SoundTouch with the pitch offset.
Yessir. I'm going to be inaccessible next week, but I can probably get
the basics working before then.
>
>
> And I will get around to Change Speed soon, using
> libsamplerate.
If I can find time, I'd like to help or ~look over your shoulder. I feel
comfortable with wxWindows dialogs now and want to know more about the
actual audio code.
-Vaughan
|
|
From: Dominic M. <do...@mi...> - 2003-03-27 05:28:37
|
Vaughan Johnson wrote: > * Visual Studio doesn't automatically know to compile .cc files. I saw > that there are a bunch in libflac_cpp, with Custom Build commands > associated with them. So, I just copied those Custom Build settings for > the soundtouch files & modified the paths. Are those commands likely to > be right? I haven't done Custom Build stuff before. That sounds fine. > * In mmx_win.cc: Note that since we're only using SoundTouch in float mode, the mmx code should never be called at all. I'd like to leave the code in place so that it's easier to stay in sync with other versions of SoundTouch in the future, but please make sure that the mmx code is never being called. I actually think that SoundTouch is acceptably fast as it is. But if we want to try to speed it up, I actually have a fair amount of experience writing SSE code, which can do floating-point instructions in parallel just as mmx does integer. It'd be fun, but not a high priority for now. > Change Tempo is working for me. I did get some interesting jittery-ness > on slowing things way down (like -75%), so if that's not happening on > Linux, it may be a problem in my compile flags or what I did in > TDStretch::mmxOverlapStereo. Checked it all in. Depends a lot on the source audio. >> Vaughan, are you at all interested in writing Change Pitch >> sometime in the next few weeks? I think you did an >> excellent job with both the Change Tempo and Change Speed >> GUIs, and it's be great if you feel like doing this last >> one, too. The nice bonus is that it will only take about >> 5 lines of code to make it functional - all you have to >> do is inherit from EffectSoundTouch and initialize >> SoundTouch with the pitch offset. > > Yessir. I'm going to be inaccessible next week, but I can probably get > the basics working before then. Great. >> And I will get around to Change Speed soon, using >> libsamplerate. > > If I can find time, I'd like to help or ~look over your shoulder. I feel > comfortable with wxWindows dialogs now and want to know more about the > actual audio code. Sure. The code that calls SoundTouch is actually pretty clean. It's really just passing lots of buffers around and remembering to flush everything in the right order. The libsamplerate code will be quite similar. - Dominic > -Vaughan > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: > The Definitive IT and Networking Event. Be There! > NetWorld+Interop Las Vegas 2003 -- Register today! > http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en > _______________________________________________ > Audacity-devel mailing list > Aud...@li... > https://lists.sourceforge.net/lists/listinfo/audacity-devel |
|
From: Dominic M. <do...@mi...> - 2003-03-27 05:34:48
|
Federico Grau wrote: >>./configure: No such file or directory >>configure: error: /bin/sh ./configure failed for lib-src/soundtouch >>sed: can't read confdefs.h: No such file or directory >> > > I experience the same problem after a cvs update: Oops - I forgot to commit a few files. Try it now. - Dominic |
|
From: Alexandre P. <av...@al...> - 2003-03-27 12:06:54
|
On Wed, 26 Mar 2003 21:37:13 -0800 Dominic Mazzoni <do...@mi...> wrote: > Federico Grau wrote: > >>./configure: No such file or directory > >>configure: error: /bin/sh ./configure failed for > >lib-src/soundtouch>sed: can't read confdefs.h: No such file or > >directory> > > > > I experience the same problem after a cvs update: > > Oops - I forgot to commit a few files. Try it now. Compiles now. Thank you! -- Alexandre Prokoudine ALT Linux Documentation Team JID: av...@al... |