Work-in-progress repo for ambisonics extensions for OM-SoX
Marlon Schumacher
5 days ago 3c36efb7ea5dd8cccd9bcc47f4f6e71ee4cfcbb2
1
2
3
4
5
6
; OM File Header - Saved 2013/11/09 15:42:04
; (6.070005 :patc (om-make-point 130 219) (om-make-point 333 242) (om-make-point 801 663) "" 183 0 nil "2013/11/09 15:13:28")
; End File Header
; External resources 
; (list (list (quote :picture) "#P\"../../../../resources/pict/omsox\"") (list (quote :sound) "#P\"../../../../../../../../Research/OM-SoX/OM-SoX 1.0/resources/sounds/amen-break.wav\"" "#P\"../../../../../../../../Research/OM-SoX/OM-SoX 1.0/resources/sounds/sax-tenor-multi.wav\""))
(in-package :om)(load-lib-for (quote ("OM-SoX")))(setf *om-current-persistent* (om-load-patch1 "sox-splice" (quote ((om-load-editor-box1 "SOX-SPLICE" (quote sox-splice) (quote ((om-load-inputfun (quote input-funbox) "object" "self" nil) (om-load-inputfun (quote input-funbox) "Audio input for sox input modules. [sound object, pathname, string/pipe]" "sound" nil) (om-load-inputfun (quote input-funbox) "Gain value for audio input before processing (dBFS). [float, list]" "gains" nil) (om-load-inputfun (quote input-funbox) "Beginning of the splice (sec)" "splice-begin" nil) (om-load-inputfun (quote input-funbox) "End of the splice (sec)" "splice-end" nil) (om-load-inputfun (quote input-funbox) "Fade type (linear, half-cosine, quarter-cosine) [symbol]" "fade-type" nil) (om-load-inputfun (quote input-funbox) "Temporal region for searching the best position to make the splice (ms)." "tolerance" nil))) (om-make-point 193 290) (om-make-point 70 50) (if (find-class (quote sox-splice) nil) (make-instance (quote sox-splice) :sound (list (om-make-pathname :directory (quote (:absolute "Users" "Marlon_MBPro3" "Research" "OM-SoX" "OM-SoX 1.0" "resources" "sounds")) :device :unspecific :host nil :name "sax-tenor-multi" :type "wav") (om-make-pathname :directory (quote (:absolute "Users" "Marlon_MBPro3" "Research" "OM-SoX" "OM-SoX 1.0" "resources" "sounds")) :device :unspecific :host nil :name "amen-break" :type "wav")) :gains (list 0.0 0.0) :splice-begin 0.01 :splice-end 2.0 :fade-type nil :tolerance nil :from-file t)) nil nil (pairlis (quote (winpos winsize)) (list (om-make-point 10 40) (om-make-point 104 150))) nil nil nil nil) (om-load-boxcomment "comment 2" (om-make-point 245 34) (quote "---- UNDER CONSTRUCTION ----") "" (om-make-point 377 197) nil (om-make-color 1.0 0.0 0.0) (om-make-font "Verdana" 14.0 :family "Verdana" :style (quote (:italic)) :mode (quote nil))) (om-load-boxcall (quote bastype) "list 2" (quote list) (quote nil) (om-make-point 285 250) (om-make-point 38 30) 2.0 "2.0" nil) (om-load-boxcall (quote bastype) "aux" (quote t) (quote nil) (om-make-point 232 235) (om-make-point 45 30) 0.01 "0.01" nil) (om-load-editor-box1 "amen-break.wav" (quote sound) (quote ((om-load-inputfun (quote input-funbox) "object" "self" nil) (om-load-inputfun (quote input-funbox) "a track index for multichannel mixing" "tracknum" 0) (om-load-inputfun (quote input-funbox) "a list of markers (s)" "markers" nil))) (om-make-point 229 147) (om-make-point 80 50) (let ((newobj (let ((thesound (load-sound (om-make-pathname :directory (quote (:absolute "Users" "Marlon_MBPro3" "Research" "OM-SoX" "OM-SoX 1.0" "resources" "sounds")) :device nil :host nil :name "amen-break" :type "wav") 0 100 0))) (when thesound (setf (markers thesound) (quote nil))) thesound))) (load-port-info newobj (quote nil)) (init-mus-color newobj (quote nil)) (set-extra-pairs newobj (quote nil)) (set-patch-pairs newobj (quote nil)) (set-name newobj "amen-break.wav") (set-tonalite newobj nil) newobj) "x" nil (pairlis (quote (approx fontsize staff cmnpref deltapict outport inport player zoom notechancolor? grillestep mode winsize winpos score-mode obj-mode show-stems scale palette-mode)) (list 2 24 (quote g) (let ((newobj (make-instance (quote edition-values)))) (setf (paper-size newobj) (om-make-point 600 800)) (setf (top-margin newobj) 2) (setf (left-margin newobj) 1) (setf (right-margin newobj) 1) (setf (bottom-margin newobj) 1) (setf (orientation newobj) nil) (setf (scale newobj) nil) (setf (system-space newobj) (quote (1))) (setf (system-color newobj) (quote nil)) (setf (line-space newobj) 1) (setf (title newobj) nil) (setf (show-title? newobj) nil) (setf (show-page? newobj) nil) (setf (sheet-id newobj) nil) (setf (page-mode newobj) nil) newobj) (om-make-point 0 0) nil 0 (quote :soxplayer) 1 nil 1000 0 (om-make-point 541 293) (om-make-point 400 22) 0 1 (quote t) nil 0)) t nil nil nil) (om-load-boxcomment "comment" (om-make-point 644 108) (quote "From the sox-doc:$$This provides two things over simple audio concatenation: a (usually short) cross-fade is applied at the join, $and a wave similarity comparison is made to help determine the best place at which to make the join. $<tolerance> determines the size of the region within to search (ms). $Different envelopes are available for the crossfade. For multiple splices lists of parameters must be provided.$$NB. There is a limitation on the lenght of splices: The duration of the splice must be shorter than half of the first input file.") "" (om-make-point 70 496) nil (om-make-color 0.0 0.0 1.0) (om-make-font "Verdana" 10.0 :family "Verdana" :style (quote (:italic)) :mode (quote nil))) (om-load-boxcomment "comment 2" (om-make-point 171 36) (quote "Double-click on sox-splice class $to open the editor") "" (om-make-point 356 304) nil (om-make-color 0.0 0.0 1.0) (om-make-font "Verdana" 10.0 :family "Verdana" :style (quote (:italic)) :mode (quote nil))) (om-load-boxcomment "comment 3" (om-make-point 360 45) (quote "Similar to sox-concatenate. However, applies a short fade $at the join positions. See the html doc for details.") "" (om-make-point 137 73) nil (om-make-color 0.02832079 0.0 1.0) (om-make-font "Verdana" 12.0 :family "Verdana" :style (quote (:plain)) :mode (quote nil))) (om-load-boxcomment "comment" (om-make-point 87 34) (quote "SoX-Splice") "" (om-make-point 132 19) nil (om-make-color 0.0 0.0 0.0) (om-make-font "Verdana" 14.0 :family "Verdana" :style (quote (:plain)) :mode (quote nil))) (om-load-boxcall (quote genfun) "SOX-PROCESS" (quote sox-process) (quote ((om-load-inputfun (quote input-funbox) "Audio input to be processed [sound, path, string/pipe, sox-input]" "SOX-INPUT" nil) (om-load-inputfun (quote input-funbox) "Sox-effect to be applied to audio input [string]" "SOX-EFFECT" ""))) (om-make-point 174 374) nil nil nil nil 1) (om-load-editor-box1 "sax-tenor-multi.wav" (quote sound) (quote ((om-load-inputfun (quote input-funbox) "object" "self" nil) (om-load-inputfun (quote input-funbox) "a track index for multichannel mixing" "tracknum" 0) (om-load-inputfun (quote input-funbox) "a list of markers (s)" "markers" nil))) (om-make-point 137 148) (om-make-point 80 50) (let ((newobj (let ((thesound (load-sound (om-make-pathname :directory (quote (:absolute "Users" "Marlon_MBPro3" "Research" "OM-SoX" "OM-SoX 1.0" "resources" "sounds")) :device nil :host nil :name "sax-tenor-multi" :type "wav") 0 100 0))) (when thesound (setf (markers thesound) (quote nil))) thesound))) (load-port-info newobj (quote nil)) (init-mus-color newobj (quote nil)) (set-extra-pairs newobj (quote nil)) (set-patch-pairs newobj (quote nil)) (set-name newobj "sax-tenor-multi.wav") (set-tonalite newobj nil) newobj) "x" nil (pairlis (quote (scale show-stems obj-mode score-mode winpos winsize mode grillestep notechancolor? zoom player inport outport deltapict cmnpref staff fontsize approx palette-mode)) (list nil (quote t) 1 0 (om-make-point 400 22) (om-make-point 539 296) 0 1000 nil 1 (quote :soxplayer) 0 nil (om-make-point 0 0) (let ((newobj (make-instance (quote edition-values)))) (setf (paper-size newobj) (om-make-point 600 800)) (setf (top-margin newobj) 2) (setf (left-margin newobj) 1) (setf (right-margin newobj) 1) (setf (bottom-margin newobj) 1) (setf (orientation newobj) nil) (setf (scale newobj) nil) (setf (system-space newobj) (quote (1))) (setf (system-color newobj) (quote nil)) (setf (line-space newobj) 1) (setf (title newobj) nil) (setf (show-title? newobj) nil) (setf (show-page? newobj) nil) (setf (sheet-id newobj) nil) (setf (page-mode newobj) nil) newobj) (quote g) 24 2 0)) t nil nil nil) (om-load-boxcall (quote lispfun) "LIST" (quote list) (quote ((om-load-inputfun (quote input-funbox) "add-input" "add-input" nil) (om-load-inputfun (quote input-funbox) "add-input" "add-input" nil))) (om-make-point 200 221) nil nil nil nil 1))) (quote ((11 0 0 1 nil 0) (3 0 0 3 nil 0) (2 0 0 4 nil 0) (0 0 9 0 nil 0) (10 0 11 0 nil 0) (4 0 11 1 nil 0))) (list (let ((newpict (make-instance (quote patch-picture) :name "omsox" :source (quote user) :pict-pathname (restore-pict-path (restore-path nil)) :thepict (om-get-picture "omsox" (quote user)) :storemode :external :draw-params (quote (p 0 0 100 100)) :extraobjs nil))) (setf (pict-pos newpict) (om-make-point 57 8)) (setf (pict-size newpict) (om-make-point 63 48)) newpict)) 6.070005))