Work-in-progress repo for ambisonics extensions for OM-SoX
Marlon Schumacher
9 days ago 3312b1b854e0dd50ab11b7d648e37fddebfb0479
1
2
3
4
5
6
; OM File Header - Saved 2025/03/01 01:09:16
; (7.05 :patc (om-make-point 238 218) (om-make-point 522 241) (om-make-point 734 500) "" 183 0 "2025/03/01 00:57:08" "2025/03/01 01:09:16")
; End File Header
; External resources 
; (list (list (quote :picture) "#P\"../../../../resources/pict/omsox\"") (list (quote :sound) "#P\"../../../../../../../../../../../../../Shared/_Development/OM-SoX/Alexander Ng/OM-SoX hoaencode/resources/sounds/clarinet-multi-mono.aif\"") (list (quote :abstraction) "#P\"sox-pan continuous.omp\""))
(in-package :om)(load-lib-for (quote ("OM-SoX")))(setf *om-current-persistent* (om-load-patch1 "sox-pan" (quote ((let ((box (om-load-boxcomment "comment 2" (om-make-point 136 36) (quote "check out this example $for continuous panning") "" (om-make-point 437 360) nil (om-make-color 0.0 0.0 1.0) (om-make-font "Verdana" 10.0 :family "Verdana" :style (quote (:italic)) :mode (quote nil))))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcall (quote patch-box) "sox-pan continuous" (quote ("elements" "OM-SoX-tutorial-patches" "support" "input-combiners" "sox-pan continuous")) (quote nil) (om-make-point 439 392) nil nil nil nil 0))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcall (quote bastype) "aux 2" (quote t) (quote nil) (om-make-point 272 216) (om-make-point 27 30) 4 "4" nil))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcall (quote bastype) "aux" (quote t) (quote nil) (om-make-point 223 188) (om-make-point 38 30) 2.5 "2.5" nil))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcall (quote bastype) "aux 3" (quote t) (quote nil) (om-make-point 196 158) (om-make-point 32 30) -3 "-3" nil))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-editor-box1 "clarinet-multi-mono.aif" (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 100 145) (om-make-point 80 50) (let ((newobj (let ((thesound (load-sound (om-make-pathname :directory (quote (:absolute "Users" "Shared" "_Development" "OM-SoX" "Alexander Ng" "OM-SoX hoaencode" "resources" "sounds")) :device nil :host nil :name "clarinet-multi-mono" :type "aif") 0 1.0 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 "clarinet-multi-mono.aif") (set-tonalite newobj nil) newobj) "x" nil (pairlis (quote (palette-mode scale show-stems obj-mode score-mode winpos winsize mode grillestep notechancolor? zoom player inport outport deltapict cmnpref staff fontsize approx :show-spectrum onset measure)) (list 0 nil (quote t) 1 0 (om-make-point 400 38) (om-make-point 540 306) 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 (quote t) nil nil)) t nil nil nil (quote nil)))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-editor-box1 "SOX-PAN" (quote sox-pan) (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) "Panning value (decimal number) for panning audio between adjacent channels. [float, list]" "panning" nil) (om-load-inputfun (quote input-funbox) "Number of available output channels for panning." "numchannels" nil))) (om-make-point 120 247) (om-make-point 70 50) (if (find-class (quote sox-pan) nil) (make-instance (quote sox-pan) :sound (om-make-pathname :directory (quote (:absolute "Users" "Shared" "_Development" "OM-SoX" "Alexander Ng" "OM-SoX hoaencode" "resources" "sounds")) :device nil :host nil :name "clarinet-multi-mono" :type "aif") :gains (list -3) :panning 2.5 :numchannels 4 :from-file t)) nil nil (pairlis (quote (winsize winpos)) (list (om-make-point 104 200) (om-make-point 10 40))) nil nil nil nil (quote nil)))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-editor-box1 "" (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 147 403) (om-make-point 80 50) (let ((newobj nil)) (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 "") (set-tonalite newobj nil) newobj) nil nil (pairlis (quote (measure onset palette-mode scale show-stems obj-mode score-mode winpos winsize mode grillestep notechancolor? zoom player inport outport deltapict cmnpref staff fontsize approx)) (list nil nil 0 nil (quote t) 1 0 (om-make-point 400 38) (om-make-point 559 303) 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)) t nil nil nil (quote nil)))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcomment "comment 2" (om-make-point 279 48) (quote "-> Double-click on sox-pan class to open the editor.$$Select box and press 'd' for documentation of inlets.") "" (om-make-point 203 259) nil (om-make-color 0.0 0.0 1.0) (om-make-font "Verdana" 10.0 :family "Verdana" :style (quote (:italic)) :mode (quote nil))))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcomment "comment" (om-make-point 446 60) (quote "Pan audio between adjacent output audio channels specified $as a floating point number. Gain (db) value before panning and $number of channels in the multichannel audio output can be specified. ") "" (om-make-point 128 54) nil (om-make-color 0.0 0.0 1.0) (om-make-font "Verdana" 12.0 :family "Verdana" :style (quote (:plain)) :mode (quote nil))))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcall (quote genfun) "SOX-PROCESS" (quote sox-process) (quote ((om-load-inputfun (quote input-funbox) "" "INPUT" nil) (om-load-inputfun (quote input-funbox) "" "COMMANDS" ""))) (om-make-point 132 311) nil nil nil nil 1))) (when (fboundp (quote set-active)) (set-active box nil)) box) (let ((box (om-load-boxcomment "comment" (om-make-point 79 34) (quote "SoX-PAN") "" (om-make-point 135 18) nil (om-make-color 0.0 0.0 0.0) (om-make-font "Verdana" 14.0 :family "Verdana" :style (quote (:plain)) :mode (quote nil))))) (when (fboundp (quote set-active)) (set-active box nil)) box))) (quote ((5 0 6 1 nil 0) (4 0 6 2 nil 0) (3 0 6 3 nil 0) (2 0 6 4 nil 0) (10 0 7 0 nil 0) (6 0 10 0 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 60 8)) (setf (pict-size newpict) (om-make-point 63 48)) newpict)) 7.05))