Re: [Audacity-nyquist] Audacity Nyquist memory crashes (once again)
A free multi-track audio editor and recorder
Brought to you by:
aosiniao
From: <edg...@we...> - 2009-04-23 07:22:19
|
Leland wrote: > Crashes? What crashes? The topic is very old and already discussed at least ten times on audacity-devel. A rather lengthy bug description (and reproduction) was posted to this list under "Nyquist in Audacity crashes with long sound files" in January 2008: http://sourceforge.net/mailarchive/forum.php?thread_name=2021937310%40web.de&forum_name=audacity-nyquist Here a shorter version: 1. Start Audacity and a tool (what tool depends on your OS) where you can watch the Audacity memory consumption. 2. In Audacity, use "Generate > Tone" and produce a Audacity track of e.g. 30 Minutes length. 3. Open "Effects > Nyquist Prompt" and copy the following code into the text input field: (let ((peak-value (peak s ny:all))) (mult (/ 1.0 peak-value) s)) [translation: normalize the whole track to full scale. The first line finds the maximum sample value, the second line amplifies the whole track according to the value of the highest sample.] 3. Click "OK" and watch how the Audacity memory consumption raises and raises... The problem is based in the fact that the samples of the Audacity selection are bound to a global Lisp variable "s" in the Audacity Nyquist interface. In principle it's the same topic that Roger wrote a few month's ago: adding sample-acess functions to the Audacity Nyquist interface in order to free memory as soon as no longer needed. Unfortunately this is rather tricky to solve. The problem still exists in Audacity 1.3.7-beta (just tested). To prevent you from getting a nerve crisis I will sit down during the day and test the whole stuff again with the current Audacity CVS HEAD version and look-up the related functions in the C++ code. > Be easy on me...don't really know how to Lisp except when I talk. Be patient with me, C++ to me is something like a "read-only" language. It's much easier to read a foreign language than to speak... It may take a few hours because I fist have to work other things. - edgar |