LaBeL PlUg-In PaCk

Archive of Nyquist Plug-ins.
Many of the plug-ins here will be available on the Audacity Wiki.
Forum rules
This Forum is an archive of old topics concerning Nyquist plug-ins.

Feedback and questions relating to topics may be posted, but please
DO NOT POST NEW TOPICS HERE.

New plug-ins may be posted on the New Plug-Ins board.
Other posts relating to Nyquist should be posted to the main Nyquist board.

The main repository for Audacity/Nyquist Plug-ins is on the Audacity Wiki.
Post Reply
loopman
Posts: 61
Joined: Mon Dec 05, 2011 2:09 pm
Operating System: Please select

LaBeL PlUg-In PaCk

Post by loopman » Wed Dec 28, 2011 9:21 pm

Hola amigos,
Noticed not many Nyquist plug-ins, for labels, and I'm sure the current vision of Audacity supports
such things, so here's mine for Audi126....
M3.NY
M3 Label Maker
(1.46 KiB) Downloaded 179 times
You use this one by selecting a loop, entering how many measures are in the loop, then pressing
the OK button. Labels are placed at the start of each measure. Probably has other uses...
For coders, not much error checking in this one as I was feeling lazy...
LABEL GUNN-v02.0.NY
The Label Gunn
(10.74 KiB) Downloaded 185 times
I think Audacity 1.3 has something that does this, but this one is written by me.
Here you can add labels at multiple time intervals.
Labels begin starting at where your cursor is, not necessarily at 0.000000 unless your cursor is there...
For instance, suppose your cursor was at 10.000000 and you wanted a label at 10.123456,
you could do this by entering 0.123456 into the LABEL GUNN.
5M L00P SeQuEnCeR-v01.0.NY
The 5M
(20.73 KiB) Downloaded 185 times
Not to toot my own horn, but this is a favorite of mine and I get much use from it when trying to
figure out how to sequence DnB loops when looking at DnB loops.

It's also pretty handy as a cheap sequencer AND for loop
sequencing (ie creating loop tracks that remain in-time).

Basically, you need to figure out the sequence "button length" you need and enter it.
For instance, say your 165 bpm one measure loop is 1.455715 seconds long.
You divide that by 16, getting you "button length": 0.090908 seconds
You enter this number into 5M and it places 5 measures of labels every 0.090908 seconds.
Also has some variations of types of labels/text on labels option.
Pretty handy IMO.

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

Re: LaBeL PlUg-In PaCk

Post by steve » Thu Dec 29, 2011 5:04 pm

loopman wrote:I'm sure the current vision of Audacity supports such things
Audacity 1.3.x has Regular Interval Labels...
There is also a Beat Per Minute labels plug-in.
loopman wrote:here's mine for Audi126
You mean "Audacity 1.2.6 on Windows".
They should also work with Audacity 1.2.x on case sensitive operating systems if the file extension is changed to lower case ".ny".
To make "M3.NY" compatible with Audacity 1.3.x users can edit the file in a text editor (such as NotePad) and make the following changes:

line 3 from:

Code: Select all

;type generate
to:

Code: Select all

;type analyze
[The original code depends on a bug in Audacity 1.2.x that sets global values for "len" and "s" in generate plug-ins]


line 9 from:

Code: Select all

;control MEZ "#ofM" int "#" 1 1 50
to:

Code: Select all

;control MEZ "Number of Labels" int "" 1 1 50
[Not really necessary, but less cryptic than "#ofM"]


line 11 from:

Code: Select all

           (SETQ AUL (/ LEN 44100.000000))

to:

Code: Select all

(setq aul (get-duration 1))
["LEN" should be zero for generate type plug-ins but isn't in Audacity 1.2.x. Using (get-duration 1) removes the limitation of only working with one sample rate.]


As Audacity 1.2.6 also supports type 2 plug-ins you could also make the label text customisable by adding a Text Input Widget.
For example:

Code: Select all

;nyquist plug-in
;version 2
;type analyze
;name "M3"
;action "measuring..."
;info ""
;control mez "Number of Beats" int "" 1 1 50
;control text "Label Text" string "" "MeZ" ""

(setq mlen (get-duration (/ 1.0 mez)))
(setq labels (list))

(dotimes (mnum mez)
  (setq labels 
    (cons (list (* (1+ mnum) mlen) text) labels)))

labels  ;return label track
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)

Post Reply