Programmable real-time audio signal processing application
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

mod_simple.js 18KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419
  1. {
  2. array:
  3. [
  4. // wnd len:1=512 2=1024 3=2048 4=4096 5=8192
  5. { loc:-1, mod:m1, var:win0, type:set, rate:100, val:3 },
  6. { loc:-1, mod:m1, var:win1, type:set, rate:100, val:2 },
  7. // hop: 1=1 2=2 3=4 4=8 5=16
  8. { loc:-1, mod:m1, var:hop0, type:set, rate:100, val:3 },
  9. { loc:-1, mod:m1, var:hop1, type:set, rate:100, val:3 },
  10. { loc:-1, mod:m1, var:mod0, type:set, val:1 },
  11. { loc:-1, mod:m1, var:mod1, type:set, val:1 },
  12. { loc:-1, mod:m1, var:thr0, type:set, val:65 },
  13. { loc:-1, mod:m1, var:thr1, type:set, val:65 },
  14. { loc:-1, mod:m1, var:upr0, type:set, val:0 },
  15. { loc:-1, mod:m1, var:upr1, type:set, val:0 },
  16. { loc:-1, mod:m1, var:lwr0, type:set, val:2.0 },
  17. { loc:-1, mod:m1, var:lwr1, type:set, val:2.0 },
  18. { loc:-1, mod:m1, var:off0, type:set, val:20 },
  19. { loc:-1, mod:m1, var:off1, type:set, val:20 },
  20. { loc:-1, mod:m1, var:wet0, type:set, val:0.0 },
  21. { loc:-1, mod:m1, var:wet1, type:set, val:0.0 },
  22. { loc:-1, mod:m1, var:mint0, type:set, val:55 },
  23. { loc:-1, mod:m1, var:maxt0, type:set, val:85 },
  24. { loc:-1, mod:m1, var:minu0, type:set, val:0.0 },
  25. { loc:-1, mod:m1, var:maxu0, type:set, val:0.5 },
  26. { loc:-1, mod:m1, var:minl0, type:set, val:0 },
  27. { loc:-1, mod:m1, var:maxl0, type:set, val:3 },
  28. { loc:-1, mod:m1, var:mino0, type:set, val:-100.0 },
  29. { loc:-1, mod:m1, var:maxo0, type:set, val:100.0 },
  30. { loc:-1, mod:m1, var:mint1, type:set, val:55 },
  31. { loc:-1, mod:m1, var:maxt1, type:set, val:85 },
  32. { loc:-1, mod:m1, var:minu1, type:set, val:0.0 },
  33. { loc:-1, mod:m1, var:maxu1, type:set, val:0.5 },
  34. { loc:-1, mod:m1, var:minl1, type:set, val:0 },
  35. { loc:-1, mod:m1, var:maxl1, type:set, val:3 },
  36. { loc:-1, mod:m1, var:mino1, type:set, val:-100.0 },
  37. { loc:-1, mod:m1, var:maxo1, type:set, val:100.0 },
  38. { loc:-1, mod:m1, var:xfad0, type:set, val:100.0 },
  39. { loc:-1 mod:m1, var:sw0, type:decl, val:1 },
  40. { loc:-1, mod:m1, var:xfad1, type:set, val:100.0 },
  41. { loc:-1 mod:m1, var:sw1, type:decl, val:1 },
  42. // compressor
  43. { loc:-1, mod:m1, var:cbyp0, type:set, val:0.0 },
  44. { loc:-1, mod:m1, var:cigain0, type:set, val:3.0 },
  45. { loc:-1, mod:m1, var:cthrsh0, type:set, val:-20.0 },
  46. { loc:-1, mod:m1, var:cratio0, type:set, val:2.0 },
  47. { loc:-1, mod:m1, var:catkms0, type:set, val:20.0 },
  48. { loc:-1, mod:m1, var:crlsms0, type:set, val:1000.0 },
  49. { loc:-1, mod:m1, var:cmakeup0, type:set, val:1.0 },
  50. { loc:-1, mod:m1, var:cwndms0, type:set, val:200 },
  51. { loc:-1, mod:m1, var:cbyp1, type:set, val:0.0 },
  52. { loc:-1, mod:m1, var:cigain1, type:set, val:3.0 },
  53. { loc:-1, mod:m1, var:cthrsh1, type:set, val:-20.0 },
  54. { loc:-1, mod:m1, var:cratio1, type:set, val:2.0 },
  55. { loc:-1, mod:m1, var:catkms1, type:set, val:20.0 },
  56. { loc:-1, mod:m1, var:crlsms1, type:set, val:1000.0 },
  57. { loc:-1, mod:m1, var:cmakeup1, type:set, val:1.0 },
  58. { loc:-1, mod:m1, var:cwndms1, type:set, val:200 },
  59. { loc:-1, mod:m1, var:dgain0, type:set, val:1.0 },
  60. { loc:-1, mod:m1, var:dgain1, type:set, val:1.0 },
  61. { loc:-1, mod:m1, var:wgain0, type:set, val:1.0 },
  62. { loc:-1, mod:m1, var:wgain1, type:set, val:1.0 },
  63. // Default
  64. /*
  65. { loc:99 mod:m1 var:mod0, type:set, val:1 },
  66. { var:cigain0, type:set, val: 5.0 },
  67. { var:wet0 type:set, val: 1.0}
  68. { var:sw0, type:set, val:0 },
  69. { var:mod1 type:set, val:1 },
  70. { var:cigain1, type:set, val: 5.0 },
  71. { var:wet1 type:set, val: 1.0}
  72. { var:sw1, type:set, val:0 },
  73. */
  74. // Preset A
  75. /*
  76. { loc:774 mod:m1, var:mod0, type:set, val: 1 },
  77. { var:thr0, type:set, val: 60.0 },
  78. { var:upr0, type:set, val: -1.1 },
  79. { var:lwr0, type:set, val: 2.0 },
  80. { var:cbyp0, type:set, val: 0.0 },
  81. { var:cigain0, type:set, val: 6.0 },
  82. { var:wet0 type:set, val: 1.0}
  83. { var:wgain0, type:set, val: 1.75 }
  84. { var:sw0, type:set, val:0 },
  85. { var:mod1, type:set, val: 1 },
  86. { var:thr1, type:set, val: 60.0 },
  87. { var:upr1, type:set, val: -0.99 },
  88. { var:lwr1, type:set, val: 2.0 },
  89. { var:cbyp1, type:set, val: 0.0 },
  90. { var:cigain1, type:set, val: 6.0 },
  91. { var:wet1 type:set, val: 1.0}
  92. { var:wgain1, type:set, val: 1.75 }
  93. { var:sw1, type:set, val:0 },
  94. */
  95. // Preset C
  96. /*
  97. { loc:99 mod:m1 var:mod0, type:set, val:1 },
  98. { var:thr0, type:set, val: 80.0},
  99. { var:upr0, type:set, val: -0.5},
  100. { var:lwr0, type:set, val: 5.0},
  101. { var:cigain0, type:set, val:11.0 },
  102. { var:wet0 type:set, val: 1.0}
  103. { var:sw0, type:set, val:0 },
  104. { var:mod1 type:set, val:1 },
  105. { var:thr1, type:set, val: 80.0 },
  106. { var:upr1, type:set, val: -0.5},
  107. { var:lwr1, type:set, val: 5.0},
  108. { var:cigain1, type:set, val:11.0 },
  109. { var:wet1 type:set, val: 1.0}
  110. { var:sw1, type:set, val:0 },
  111. */
  112. // Preset C-1 (compressor pumps)
  113. /*
  114. { loc:99 mod:m1 var:mod0, type:set, val:1 },
  115. { var:thr0, type:set, val: 70.0},
  116. { var:upr0, type:set, val: -0.7},
  117. { var:lwr0, type:set, val: 5.0},
  118. { var:cigain0, type:set, val:10.0 },
  119. { var:wet0 type:set, val: 1.0}
  120. { var:sw0, type:set, val:0 },
  121. { var:mod1 type:set, val:1 },
  122. { var:thr1, type:set, val: 70.0 },
  123. { var:upr1, type:set, val: -0.7},
  124. { var:lwr1, type:set, val: 5.0},
  125. { var:cigain1, type:set, val:11.0 },
  126. { var:wet1 type:set, val: 1.0}
  127. { var:sw1, type:set, val:0 },
  128. */
  129. // Preset D -
  130. /*
  131. { loc:99 mod:m1 var:mod0, type:set, val: 1 },
  132. { var:thr0, type:set, val: 70.0 },
  133. { var:upr0, type:set, val: -3.9 },
  134. { var:lwr0, type:set, val: 4.0 },
  135. { var:cigain0, type:set, val: 9.0 },
  136. { var:wet0 type:set, val: 1.0 }
  137. { var:sw0, type:set, val:0 },
  138. { var:mod1 type:set, val: 1 },
  139. { var:thr1, type:set, val: 70.0 },
  140. { var:upr1, type:set, val: -4.5 },
  141. { var:lwr1, type:set, val: 4.0 },
  142. { var:cigain1, type:set, val: 9.0 },
  143. { var:wet1 type:set, val: 1.0 }
  144. { var:sw1, type:set, val:0 },
  145. */
  146. // Preset E - buzzing
  147. /*
  148. { loc:99 mod:m1 var:mod0, type:set, val: 4 },
  149. { var:thr0, type:set, val: 55.0 },
  150. { var:upr0, type:set, val: 0.0 },
  151. { var:lwr0, type:set, val: 2.0 },
  152. { var:cigain0, type:set, val: 3.0 },
  153. { var:wet0 type:set, val: 1.0 }
  154. { var:sw0, type:set, val:0 },
  155. { var:mod1, type:set, val: 4 },
  156. { var:thr1, type:set, val: 55.0 },
  157. { var:upr1, type:set, val: 0.0 },
  158. { var:lwr1, type:set, val: -2.0 },
  159. { var:cigain1, type:set, val: 3.0 },
  160. { var:wet1 type:set, val: 1.0 }
  161. { var:sw1, type:set, val:0 },
  162. */
  163. // Preset F-1
  164. /*
  165. { loc:99 mod:m1 var:mod0, type:set, val: 1 },
  166. { var:thr0, type:set, val: 50.0 },
  167. { var:upr0, type:set, val: -3.0 },
  168. { var:lwr0, type:set, val: 1.0 },
  169. { var:cigain0, type:set, val: 3.0 },
  170. { var:wet0 type:set, val: 1.0 }
  171. { var:sw0, type:set, val:0 },
  172. { var:mod1, type:set, val: 1 },
  173. { var:thr1, type:set, val: 50.0 },
  174. { var:upr1, type:set, val: -3.0 },
  175. { var:lwr1, type:set, val: 1.0 },
  176. { var:cigain1, type:set, val: 3.0 },
  177. { var:wet1 type:set, val: 1.0 }
  178. { var:sw1, type:set, val:0 },
  179. */
  180. // Preset F-2
  181. /*
  182. { loc:99 mod:m1 var:mod0, type:set, val: 1 },
  183. { var:thr0, type:set, val: 60.0 },
  184. { var:upr0, type:set, val: -3.0 },
  185. { var:lwr0, type:set, val: 1.0 },
  186. { var:cigain0, type:set, val: 3.0 },
  187. { var:wet0 type:set, val: 1.0 }
  188. { var:sw0, type:set, val:0 },
  189. { var:mod1, type:set, val: 1 },
  190. { var:thr1, type:set, val: 60.0 },
  191. { var:upr1, type:set, val: -3.0 },
  192. { var:lwr1, type:set, val: 1.0 },
  193. { var:cigain1, type:set, val: 3.0 },
  194. { var:wet1 type:set, val: 1.0 }
  195. { var:sw1, type:set, val:0 },
  196. */
  197. // Preset F-3
  198. /*
  199. { loc:99 mod:m1 var:mod0, type:set, val: 1 },
  200. { var:thr0, type:set, val: 55.0 },
  201. { var:upr0, type:set, val: -3.0 },
  202. { var:lwr0, type:set, val: 1.0 },
  203. { var:cigain0, type:set, val: 3.0 },
  204. { var:wet0 type:set, val: 1.0 }
  205. { var:sw0, type:set, val:0 },
  206. { var:mod1, type:set, val: 1 },
  207. { var:thr1, type:set, val: 55.0 },
  208. { var:upr1, type:set, val: -3.0 },
  209. { var:lwr1, type:set, val: 1.0 },
  210. { var:cigain1, type:set, val: 3.0 },
  211. { var:wet1 type:set, val: 1.0 }
  212. { var:sw1, type:set, val:0 },
  213. */
  214. // Preset F-4
  215. /*
  216. { loc:99 mod:m1 var:mod0, type:set, val: 1 },
  217. { var:thr0, type:set, val: 55.0 },
  218. { var:upr0, type:set, val: -5.0 },
  219. { var:lwr0, type:set, val: 1.0 },
  220. { var:cigain0, type:set, val: 3.0 },
  221. { var:wet0 type:set, val: 1.0 }
  222. { var:sw0, type:set, val:0 },
  223. { var:mod1, type:set, val: 1 },
  224. { var:thr1, type:set, val: 55.0 },
  225. { var:upr1, type:set, val: -5.0 },
  226. { var:lwr1, type:set, val: 1.0 },
  227. { var:cigain1, type:set, val: 3.0 },
  228. { var:wet1 type:set, val: 1.0 }
  229. { var:sw1, type:set, val:0 },
  230. */
  231. // Preset G
  232. /*
  233. { loc:99 mod:m1 var:mod0, type:set, val: 4 },
  234. { var:thr0, type:set, val: 60.0 },
  235. { var:upr0, type:set, val: -0.7 },
  236. { var:lwr0, type:set, val: 8.0 },
  237. { var:off0, type:set, val: 20.0 }
  238. { var:cigain0, type:set, val: 10.0 },
  239. { var:wet0 type:set, val: 1.0 }
  240. { var:sw0, type:set, val:0 },
  241. { var:mod1, type:set, val: 4 },
  242. { var:thr1, type:set, val: 64.0 },
  243. { var:upr1, type:set, val: -0.7 },
  244. { var:lwr1, type:set, val: 8.0 },
  245. { var:off1, type:set, val: 20.0 }
  246. { var:cigain1, type:set, val: 10.0 },
  247. { var:wet1 type:set, val: 1.0 }
  248. { var:sw1, type:set, val:0 },
  249. */
  250. // Preset G (a)
  251. /*
  252. { loc:99 mod:m1 var:mod0, type:set, val: 4 },
  253. { var:thr0, type:set, val: 50.0 },
  254. { var:upr0, type:set, val: -0.7 },
  255. { var:lwr0, type:set, val: 2.0 },
  256. { var:off0, type:set, val: 40.0 }
  257. { var:cigain0, type:set, val: 10.0 },
  258. { var:wet0 type:set, val: 1.0 }
  259. { var:sw0, type:set, val:0 },
  260. { var:mod1, type:set, val: 4 },
  261. { var:thr1, type:set, val: 54.0 },
  262. { var:upr1, type:set, val: -0.7 },
  263. { var:lwr1, type:set, val: 2.0 },
  264. { var:off1, type:set, val: 40.0 }
  265. { var:cigain1, type:set, val: 10.0 },
  266. { var:wet1 type:set, val: 1.0 }
  267. { var:sw1, type:set, val:0 },
  268. */
  269. // Preset G-1 A (*)
  270. /*
  271. { loc:774 mod:m1 var:mod0, type:set, val: 4 },
  272. { var:thr0, type:set, val: 50.0 },
  273. { var:upr0, type:set, val: -0.7 },
  274. { var:lwr0, type:set, val: 8.0 },
  275. { var:off0, type:set, val: 20.0 }
  276. { var:cigain0, type:set, val: 10.0 },
  277. { var:wet0 type:set, val: 1.0 }
  278. { var:wgain0, type:set, val: 1.0 }
  279. { var:sw0, type:set, val:0 },
  280. { var:mod1, type:set, val: 4 },
  281. { var:thr1, type:set, val: 54.0 },
  282. { var:upr1, type:set, val: -0.7 },
  283. { var:lwr1, type:set, val: 2.0 },
  284. { var:off1, type:set, val: 20.0 }
  285. { var:cigain1, type:set, val: 10.0 },
  286. { var:wet1 type:set, val: 1.0 }
  287. { var:wgain1, type:set, val: 1.0 }
  288. { var:sw1, type:set, val:0 },
  289. */
  290. // Preset G-1 B (not useful)
  291. /*
  292. { loc:99 mod:m1 var:mod0, type:set, val: 4 },
  293. { var:thr0, type:set, val: 60.0 },
  294. { var:upr0, type:set, val: -0.7 },
  295. { var:lwr0, type:set, val: 3.0 },
  296. { var:off0, type:set, val: 20.0 }
  297. { var:cigain0, type:set, val: 10.0 },
  298. { var:wet0 type:set, val: 1.0 }
  299. { var:sw0, type:set, val:0 },
  300. { var:mod1, type:set, val: 4 },
  301. { var:thr1, type:set, val: 64.0 },
  302. { var:upr1, type:set, val: -0.9 },
  303. { var:lwr1, type:set, val: 5.0 },
  304. { var:off1, type:set, val: 20.0 }
  305. { var:cigain1, type:set, val: 10.0 },
  306. { var:wet1 type:set, val: 1.0 }
  307. { var:sw1, type:set, val:0 },
  308. */
  309. // Preset G-1 C
  310. /*
  311. { loc:99 mod:m1 var:mod0, type:set, val: 4 },
  312. { var:thr0, type:set, val: 60.0 },
  313. { var:upr0, type:set, val: -0.7 },
  314. { var:lwr0, type:set, val: 3.0 },
  315. { var:off0, type:set, val: 20.0 }
  316. { var:cigain0, type:set, val: 10.0 },
  317. { var:wet0 type:set, val: 1.0 }
  318. { var:sw0, type:set, val:0 },
  319. { var:mod1, type:set, val: 4 },
  320. { var:thr1, type:set, val: 64.0 },
  321. { var:upr1, type:set, val: -0.9 },
  322. { var:lwr1, type:set, val: 5.0 },
  323. { var:off1, type:set, val: 24.0 }
  324. { var:cigain1, type:set, val: 10.0 },
  325. { var:wet1 type:set, val: 1.0 }
  326. { var:sw1, type:set, val:0 },
  327. */
  328. // Preset B
  329. /*
  330. { loc:774 mod:m1 var:mod0, type:set, val:1 },
  331. { var:thr0, type:set, val: 77.0},
  332. { var:upr0, type:set, val: -0.5},
  333. { var:lwr0, type:set, val: 3.0},
  334. { var:cbyp0, type:set, val: 0.0 },
  335. { var:cigain0, type:set, val:10.0 },
  336. { var:wgain0 type:set, val: 1.75}
  337. { var:sw0, type:set, val:0 },
  338. { var:mod1, type:set, val:1 },
  339. { var:thr1, type:set, val: 74.0 },
  340. { var:upr1, type:set, val: -0.5},
  341. { var:lwr1, type:set, val: 2.0},
  342. { var:cbyp1, type:set, val: 0.0 },
  343. { var:cigain1, type:set, val:10.0 },
  344. { var:wgain1 type:set, val: 1.75}
  345. { var:sw1, type:set, val:0 },
  346. */
  347. // Preset G-1 D (*)
  348. /*
  349. { loc:774 mod:m1 var:mod0, type:set, val: 4 },
  350. { var:thr0, type:set, val: 40.0 },
  351. { var:upr0, type:set, val: -0.4 },
  352. { var:lwr0, type:set, val: 7.0 },
  353. { var:off0, type:set, val: 60.0 }
  354. { var:cigain0, type:set, val: 10.0 },
  355. { var:wet0 type:set, val: 1.0 }
  356. { var:wgain0, type:set, val: 1.0 }
  357. { var:sw0, type:set, val:0 },
  358. { var:mod1, type:set, val: 4 },
  359. { var:thr1, type:set, val: 34.0 },
  360. { var:upr1, type:set, val: -0.3 },
  361. { var:lwr1, type:set, val: 5.0 },
  362. { var:off1, type:set, val: 64.0 }
  363. { var:cigain1, type:set, val: 10.0 },
  364. { var:wet1 type:set, val: 1.0 }
  365. { var:wgain1, type:set, val: 1.0 }
  366. { var:sw1, type:set, val:0 },
  367. */
  368. ]
  369. }