Repeat every X Seconds Y Times?

Hi, everyone!

I am looking for a plugin, or ways to make one where you take an audio track, split the track into (this is just an example) 2-second intervals, then repeat those intervals 8 times each. I apologize how this next part will look on the forum, but the following textual example proves what I’m aiming to do with Nyquist.


Hello Audacity


HeHeHeHeHeHeHeHellllllllllllllllo o o o o o o o AuAuAuAuAuAuAuAudadadadadadadadacicicicicicicicitytytytytytytyty

If there is already a post please point me there. Thanks!

There are are granulator/granulizer plug-ins which will do something similar,
but the intervals are usually less than a second.

PaulStretch in Audacity will also stretch sound, as long as you like,
without changing pitch, but with lots of temporal blur.

Try running this code in the Nyquist Prompt effect (
The effect will be quite slow, and probably use a lot of RAM, so avoid running it on long selections.

;type process
;control dur "Interval duration" float "seconds" 0.2 0.1 5
;control rep "Repeats" int "" 3 1 10

(setf step (truncate (* dur *sound-srate*)))
(setf segments (truncate (/ len step)))

(defun repeat (sig)
  (let ((out (s-rest 0))
        (time 0))
    (dotimes (i segments out)
      (setf ar (snd-fetch-array sig step step))
      (dotimes (j rep)
        (setf out
          (sim out
            (at-abs time
              (cue (snd-from-array 0 *sound-srate* ar)))))
        (setf time (+ time dur))))))

(multichan-expand #'repeat *track*)