mirror of
https://github.com/cookiengineer/audacity
synced 2025-04-30 07:39:42 +02:00
... The code that parses the header was always just throwing them out. The code that populates menus deduces whether to add ellipses, as there are controls or not, regardless what the $name line said.
26 lines
972 B
Common Lisp
26 lines
972 B
Common Lisp
;nyquist plug-in
|
|
;version 1
|
|
;type analyze
|
|
;categories "https://audacityteam.org/namespace#OnsetDetector"
|
|
$name (_"Beat Finder")
|
|
;manpage "Beat_Finder"
|
|
$action (_"Finding beats...")
|
|
$author (_"Audacity")
|
|
$copyright (_"Released under terms of the GNU General Public License version 2")
|
|
|
|
;; Released under terms of the GNU General Public License version 2:
|
|
;; http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|
|
|
$control thresval (_"Threshold Percentage") int "" 65 5 100
|
|
(setf s1 (if (arrayp s) (snd-add (aref s 0) (aref s 1)) s))
|
|
(defun signal () (force-srate 1000 (lp (snd-follow (lp s1 50) 0.001 0.01 0.1 512) 10)))
|
|
(setq max (peak (signal) NY:ALL))
|
|
(setq thres (* (/ thresval 100.0) max))
|
|
(setq s2 (signal))
|
|
(do ((c 0.0) (l NIL) (p T) (v (snd-fetch s2))) ((not v) l)
|
|
; "B" seems too short to put into the i18n catalog. Make it a control?
|
|
(if (and p (> v thres)) (setq l (cons (list c "B") l)))
|
|
(setq p (< v thres))
|
|
(setq c (+ c 0.001))
|
|
(setq v (snd-fetch s2)))
|