scratching effect

Share your Audacity/Nyquist plug-ins here, or test drive the latest plug-ins submitted by Audacity users.

After testing a plug-in from this forum, please post feedback for the plug-in author.
Post Reply
steve
Site Admin
Posts: 84713
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

scratching effect

Post by steve » Sat Aug 06, 2011 8:47 am

Here's a code snippet for a "scratch" type effect:

Code: Select all

(setq depth 2.5)
(defun scratch (s-in)
(fmosc 0.0 (mult depth (hzosc (/ (get-duration 0.5)))) (list s-in 0 nil) 0))
(multichan-expand #'scratch s)
The depth (how much the speed is changed) can be adjusted by changing the number in the first line (currently 2.5)
This should work well on selections of about 1/4 to 1/2 second duration.

It's just a simple form of "always open" "forward" scratch that speeds up the audio, slows it down, and speeds it back up again. "depth" settings higher than 10 will cause a more rapid scratch type effect as the frequency attempts (but fails) to go negative.
Learn more about Nyquist programming at audionyq.com

steve
Site Admin
Posts: 84713
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

Re: scratching effect

Post by steve » Wed Apr 11, 2012 6:54 pm

Here's a simple "Scratch effect" plug-in based on the code from the previous post.
scratch.ny
(1.11 KiB) Downloaded 5466 times
Learn more about Nyquist programming at audionyq.com

loopman
Posts: 61
Joined: Mon Dec 05, 2011 2:09 pm
Operating System: Please select

Re: scratching effect

Post by loopman » Mon May 14, 2012 5:56 pm

It's too bad there's no "reverse" audio function in Nyquist, probably would
make scratch effect plug-in(s) easier and fun(er) to make.

"Itchin' for a scratch...it's the itch that you got to catch..."
http://www.dailymotion.com/video/xe8559

steve
Site Admin
Posts: 84713
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

Re: scratching effect

Post by steve » Tue May 15, 2012 1:57 am

loopman wrote:It's too bad there's no "reverse" audio function in Nyquist
"Nyquist" has a "reverse" function, but it is not implemented in Audacity: http://www.cs.cmu.edu/~rbd/doc/nyquist/ ... #index1181

One way that it is possible to reverse a sound in Audacity Nyquist is to read the samples into an array, reverse the array then turn it back into a sound.
Note that this example uses rather a lot of memory so it is only really suitable for short tracks.

Code: Select all

(defun simple-reverse (sig)
  (setf myarray (snd-fetch-array sig (truncate len) (truncate len)))
  (let* ((samples (length myarray))
         (loops (truncate (/ samples 2.0))))
    (dotimes (i loops)
      (setq temp (aref myarray (- samples i 1)))
      (setf (aref myarray (- samples i 1)) (aref myarray i))
      (setf (aref myarray i) temp)))
  (snd-from-array 0 *sound-srate* myarray))
  
(multichan-expand #'simple-reverse s)
Learn more about Nyquist programming at audionyq.com

Giovani
Posts: 129
Joined: Wed Mar 16, 2011 7:07 pm
Operating System: Windows 10 / 11

Re: scratching effect

Post by Giovani » Sat May 07, 2022 1:45 pm

Hello.
Please, could You rewrite scratching effect?
I have encountered one strange bug, something like %F, or something, like this.
Maybe this effect doesn't work in new versions of Audacity.

steve
Site Admin
Posts: 84713
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

Re: scratching effect

Post by steve » Sun May 08, 2022 8:49 pm

Giovani wrote:
Sat May 07, 2022 1:45 pm
Maybe this effect doesn't work in new versions of Audacity.
Yes, it was a very old plug-in (10 years ago :o )

Here's an updated version:
scratch.ny
(1.12 KiB) Downloaded 23 times
Learn more about Nyquist programming at audionyq.com

Post Reply