@drop-ai/core 0.2.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (513) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +734 -316
  3. package/dist/actions/ActionRegistry.d.ts.map +1 -1
  4. package/dist/actions/ActionRegistry.js +7 -2
  5. package/dist/actions/ActionRegistry.js.map +1 -1
  6. package/dist/actions/types.d.ts +7 -1
  7. package/dist/actions/types.d.ts.map +1 -1
  8. package/dist/analysis/AudioAnalyzer.d.ts +69 -0
  9. package/dist/analysis/AudioAnalyzer.d.ts.map +1 -0
  10. package/dist/analysis/AudioAnalyzer.js +567 -0
  11. package/dist/analysis/AudioAnalyzer.js.map +1 -0
  12. package/dist/audio/AudioEngine.d.ts +14 -1
  13. package/dist/audio/AudioEngine.d.ts.map +1 -1
  14. package/dist/audio/AudioEngine.js +115 -35
  15. package/dist/audio/AudioEngine.js.map +1 -1
  16. package/dist/audio/Auditioner.d.ts +102 -0
  17. package/dist/audio/Auditioner.d.ts.map +1 -0
  18. package/dist/audio/Auditioner.js +237 -0
  19. package/dist/audio/Auditioner.js.map +1 -0
  20. package/dist/audio/BWFMetadata.d.ts +114 -0
  21. package/dist/audio/BWFMetadata.d.ts.map +1 -0
  22. package/dist/audio/BWFMetadata.js +392 -0
  23. package/dist/audio/BWFMetadata.js.map +1 -0
  24. package/dist/audio/BufferPool.d.ts +0 -3
  25. package/dist/audio/BufferPool.d.ts.map +1 -1
  26. package/dist/audio/BufferPool.js +0 -3
  27. package/dist/audio/BufferPool.js.map +1 -1
  28. package/dist/audio/ChannelSplitter.d.ts +36 -0
  29. package/dist/audio/ChannelSplitter.d.ts.map +1 -0
  30. package/dist/audio/ChannelSplitter.js +81 -0
  31. package/dist/audio/ChannelSplitter.js.map +1 -0
  32. package/dist/audio/ExportAnalyzer.d.ts +38 -0
  33. package/dist/audio/ExportAnalyzer.d.ts.map +1 -0
  34. package/dist/audio/ExportAnalyzer.js +75 -0
  35. package/dist/audio/ExportAnalyzer.js.map +1 -0
  36. package/dist/audio/LufsNormalizer.d.ts +36 -0
  37. package/dist/audio/LufsNormalizer.d.ts.map +1 -0
  38. package/dist/audio/LufsNormalizer.js +216 -0
  39. package/dist/audio/LufsNormalizer.js.map +1 -0
  40. package/dist/audio/MeterUtils.d.ts +0 -2
  41. package/dist/audio/MeterUtils.d.ts.map +1 -1
  42. package/dist/audio/MeterUtils.js +0 -2
  43. package/dist/audio/MeterUtils.js.map +1 -1
  44. package/dist/audio/OfflineExporter.d.ts +1 -7
  45. package/dist/audio/OfflineExporter.d.ts.map +1 -1
  46. package/dist/audio/OfflineExporter.js +31 -11
  47. package/dist/audio/OfflineExporter.js.map +1 -1
  48. package/dist/audio/ProcessingGraph.d.ts +0 -1
  49. package/dist/audio/ProcessingGraph.d.ts.map +1 -1
  50. package/dist/audio/ProcessingGraph.js +0 -1
  51. package/dist/audio/ProcessingGraph.js.map +1 -1
  52. package/dist/audio/RoutingGraph.d.ts +134 -0
  53. package/dist/audio/RoutingGraph.d.ts.map +1 -0
  54. package/dist/audio/RoutingGraph.js +547 -0
  55. package/dist/audio/RoutingGraph.js.map +1 -0
  56. package/dist/audio/SampleRateConverter.d.ts +20 -0
  57. package/dist/audio/SampleRateConverter.d.ts.map +1 -0
  58. package/dist/audio/SampleRateConverter.js +83 -0
  59. package/dist/audio/SampleRateConverter.js.map +1 -0
  60. package/dist/audio/SilencePadding.d.ts +27 -0
  61. package/dist/audio/SilencePadding.d.ts.map +1 -0
  62. package/dist/audio/SilencePadding.js +84 -0
  63. package/dist/audio/SilencePadding.js.map +1 -0
  64. package/dist/audio/SourceCache.d.ts +13 -19
  65. package/dist/audio/SourceCache.d.ts.map +1 -1
  66. package/dist/audio/SourceCache.js +21 -36
  67. package/dist/audio/SourceCache.js.map +1 -1
  68. package/dist/audio/engine/Declick.d.ts +97 -0
  69. package/dist/audio/engine/Declick.d.ts.map +1 -0
  70. package/dist/audio/engine/Declick.js +203 -0
  71. package/dist/audio/engine/Declick.js.map +1 -0
  72. package/dist/audio/engine/DiskIO.d.ts +170 -0
  73. package/dist/audio/engine/DiskIO.d.ts.map +1 -0
  74. package/dist/audio/engine/DiskIO.js +382 -0
  75. package/dist/audio/engine/DiskIO.js.map +1 -0
  76. package/dist/audio/engine/LatencyCompensator.d.ts +46 -0
  77. package/dist/audio/engine/LatencyCompensator.d.ts.map +1 -0
  78. package/dist/audio/engine/LatencyCompensator.js +84 -0
  79. package/dist/audio/engine/LatencyCompensator.js.map +1 -0
  80. package/dist/audio/engine/MultiTrackRecorder.d.ts +144 -0
  81. package/dist/audio/engine/MultiTrackRecorder.d.ts.map +1 -0
  82. package/dist/audio/engine/MultiTrackRecorder.js +359 -0
  83. package/dist/audio/engine/MultiTrackRecorder.js.map +1 -0
  84. package/dist/audio/engine/PlaylistEngine.d.ts +1 -1
  85. package/dist/audio/engine/PlaylistEngine.d.ts.map +1 -1
  86. package/dist/audio/engine/PlaylistEngine.js +10 -3
  87. package/dist/audio/engine/PlaylistEngine.js.map +1 -1
  88. package/dist/audio/engine/PunchRecordManager.d.ts +111 -0
  89. package/dist/audio/engine/PunchRecordManager.d.ts.map +1 -0
  90. package/dist/audio/engine/PunchRecordManager.js +191 -0
  91. package/dist/audio/engine/PunchRecordManager.js.map +1 -0
  92. package/dist/audio/engine/RoutingGraph.d.ts +133 -0
  93. package/dist/audio/engine/RoutingGraph.d.ts.map +1 -0
  94. package/dist/audio/engine/RoutingGraph.js +436 -0
  95. package/dist/audio/engine/RoutingGraph.js.map +1 -0
  96. package/dist/audio/engine/SidechainRouter.d.ts +137 -0
  97. package/dist/audio/engine/SidechainRouter.d.ts.map +1 -0
  98. package/dist/audio/engine/SidechainRouter.js +290 -0
  99. package/dist/audio/engine/SidechainRouter.js.map +1 -0
  100. package/dist/audio/engine/XrunTracker.d.ts +71 -0
  101. package/dist/audio/engine/XrunTracker.d.ts.map +1 -0
  102. package/dist/audio/engine/XrunTracker.js +118 -0
  103. package/dist/audio/engine/XrunTracker.js.map +1 -0
  104. package/dist/audio/export/CDMarkerExporter.d.ts +60 -0
  105. package/dist/audio/export/CDMarkerExporter.d.ts.map +1 -0
  106. package/dist/audio/export/CDMarkerExporter.js +162 -0
  107. package/dist/audio/export/CDMarkerExporter.js.map +1 -0
  108. package/dist/audio/export/ExportGraphBuilder.d.ts +119 -0
  109. package/dist/audio/export/ExportGraphBuilder.d.ts.map +1 -0
  110. package/dist/audio/export/ExportGraphBuilder.js +520 -0
  111. package/dist/audio/export/ExportGraphBuilder.js.map +1 -0
  112. package/dist/audio/export/ExportPresetManager.d.ts +85 -0
  113. package/dist/audio/export/ExportPresetManager.d.ts.map +1 -0
  114. package/dist/audio/export/ExportPresetManager.js +304 -0
  115. package/dist/audio/export/ExportPresetManager.js.map +1 -0
  116. package/dist/automation/AutomationList.d.ts +0 -1
  117. package/dist/automation/AutomationList.d.ts.map +1 -1
  118. package/dist/automation/AutomationList.js +0 -1
  119. package/dist/automation/AutomationList.js.map +1 -1
  120. package/dist/automation/AutomationMode.d.ts +0 -1
  121. package/dist/automation/AutomationMode.d.ts.map +1 -1
  122. package/dist/automation/AutomationMode.js +0 -1
  123. package/dist/automation/AutomationMode.js.map +1 -1
  124. package/dist/commands/CommandHistory.d.ts +1 -4
  125. package/dist/commands/CommandHistory.d.ts.map +1 -1
  126. package/dist/commands/CommandHistory.js +6 -9
  127. package/dist/commands/CommandHistory.js.map +1 -1
  128. package/dist/commands/CommandRegistry.d.ts +1 -2
  129. package/dist/commands/CommandRegistry.d.ts.map +1 -1
  130. package/dist/commands/CommandRegistry.js +1 -2
  131. package/dist/commands/CommandRegistry.js.map +1 -1
  132. package/dist/commands/UndoTransaction.d.ts +0 -2
  133. package/dist/commands/UndoTransaction.d.ts.map +1 -1
  134. package/dist/commands/UndoTransaction.js +1 -3
  135. package/dist/commands/UndoTransaction.js.map +1 -1
  136. package/dist/commands/handlers/HistoryHandler.d.ts +5 -5
  137. package/dist/commands/handlers/HistoryHandler.js +10 -10
  138. package/dist/commands/handlers/HistoryHandler.js.map +1 -1
  139. package/dist/commands/handlers/MarkerHandler.d.ts +0 -1
  140. package/dist/commands/handlers/MarkerHandler.d.ts.map +1 -1
  141. package/dist/commands/handlers/MarkerHandler.js +0 -1
  142. package/dist/commands/handlers/MarkerHandler.js.map +1 -1
  143. package/dist/commands/handlers/RegionHandler.d.ts.map +1 -1
  144. package/dist/commands/handlers/RegionHandler.js +25 -1
  145. package/dist/commands/handlers/RegionHandler.js.map +1 -1
  146. package/dist/commands/handlers/TrackHandler.js +1 -1
  147. package/dist/commands/handlers/TrackHandler.js.map +1 -1
  148. package/dist/commands/impl/CopyRegionCommand.d.ts +0 -1
  149. package/dist/commands/impl/CopyRegionCommand.d.ts.map +1 -1
  150. package/dist/commands/impl/CopyRegionCommand.js +0 -1
  151. package/dist/commands/impl/CopyRegionCommand.js.map +1 -1
  152. package/dist/commands/impl/DuplicateRegionCommand.d.ts +0 -1
  153. package/dist/commands/impl/DuplicateRegionCommand.d.ts.map +1 -1
  154. package/dist/commands/impl/DuplicateRegionCommand.js +0 -1
  155. package/dist/commands/impl/DuplicateRegionCommand.js.map +1 -1
  156. package/dist/commands/impl/ExportCommand.d.ts +0 -1
  157. package/dist/commands/impl/ExportCommand.d.ts.map +1 -1
  158. package/dist/commands/impl/ExportCommand.js +0 -1
  159. package/dist/commands/impl/ExportCommand.js.map +1 -1
  160. package/dist/commands/impl/FreezeTrackCommand.d.ts +1 -1
  161. package/dist/commands/impl/FreezeTrackCommand.d.ts.map +1 -1
  162. package/dist/commands/impl/FreezeTrackCommand.js +38 -37
  163. package/dist/commands/impl/FreezeTrackCommand.js.map +1 -1
  164. package/dist/commands/impl/PasteRegionCommand.d.ts +0 -1
  165. package/dist/commands/impl/PasteRegionCommand.d.ts.map +1 -1
  166. package/dist/commands/impl/PasteRegionCommand.js +0 -1
  167. package/dist/commands/impl/PasteRegionCommand.js.map +1 -1
  168. package/dist/commands/impl/SaveSnapshotCommand.d.ts +1 -1
  169. package/dist/commands/impl/SaveSnapshotCommand.js +1 -1
  170. package/dist/commands/impl/SetLoopRangeCommand.d.ts +0 -1
  171. package/dist/commands/impl/SetLoopRangeCommand.d.ts.map +1 -1
  172. package/dist/commands/impl/SetLoopRangeCommand.js +0 -1
  173. package/dist/commands/impl/SetLoopRangeCommand.js.map +1 -1
  174. package/dist/commands/impl/SetPunchRangeCommand.d.ts +0 -1
  175. package/dist/commands/impl/SetPunchRangeCommand.d.ts.map +1 -1
  176. package/dist/commands/impl/SetPunchRangeCommand.js +0 -1
  177. package/dist/commands/impl/SetPunchRangeCommand.js.map +1 -1
  178. package/dist/commands/impl/SetRegionTimeDomainCommand.d.ts.map +1 -1
  179. package/dist/commands/impl/SetRegionTimeDomainCommand.js +3 -3
  180. package/dist/commands/impl/SetRegionTimeDomainCommand.js.map +1 -1
  181. package/dist/commands/impl/SplitAtPlayheadCommand.d.ts +0 -2
  182. package/dist/commands/impl/SplitAtPlayheadCommand.d.ts.map +1 -1
  183. package/dist/commands/impl/SplitAtPlayheadCommand.js +0 -2
  184. package/dist/commands/impl/SplitAtPlayheadCommand.js.map +1 -1
  185. package/dist/commands/impl/SplitRegionCommand.d.ts +0 -1
  186. package/dist/commands/impl/SplitRegionCommand.d.ts.map +1 -1
  187. package/dist/commands/impl/SplitRegionCommand.js +0 -1
  188. package/dist/commands/impl/SplitRegionCommand.js.map +1 -1
  189. package/dist/commands/impl/StripSilenceCommand.d.ts +0 -1
  190. package/dist/commands/impl/StripSilenceCommand.d.ts.map +1 -1
  191. package/dist/commands/impl/StripSilenceCommand.js +0 -1
  192. package/dist/commands/impl/StripSilenceCommand.js.map +1 -1
  193. package/dist/commands/impl/TimeStretchRegionCommand.d.ts +1 -2
  194. package/dist/commands/impl/TimeStretchRegionCommand.d.ts.map +1 -1
  195. package/dist/commands/impl/TimeStretchRegionCommand.js +1 -2
  196. package/dist/commands/impl/TimeStretchRegionCommand.js.map +1 -1
  197. package/dist/commands/impl/ToggleLoopCommand.d.ts +1 -0
  198. package/dist/commands/impl/ToggleLoopCommand.d.ts.map +1 -1
  199. package/dist/commands/impl/ToggleLoopCommand.js +10 -0
  200. package/dist/commands/impl/ToggleLoopCommand.js.map +1 -1
  201. package/dist/commands/impl/TrimRegionCommand.d.ts +14 -1
  202. package/dist/commands/impl/TrimRegionCommand.d.ts.map +1 -1
  203. package/dist/commands/impl/TrimRegionCommand.js +138 -33
  204. package/dist/commands/impl/TrimRegionCommand.js.map +1 -1
  205. package/dist/commands/impl/TrimRegionToPlayheadCommand.d.ts +26 -0
  206. package/dist/commands/impl/TrimRegionToPlayheadCommand.d.ts.map +1 -0
  207. package/dist/commands/impl/TrimRegionToPlayheadCommand.js +68 -0
  208. package/dist/commands/impl/TrimRegionToPlayheadCommand.js.map +1 -0
  209. package/dist/commands/impl/TrimRegionToRangeCommand.d.ts +27 -0
  210. package/dist/commands/impl/TrimRegionToRangeCommand.d.ts.map +1 -0
  211. package/dist/commands/impl/TrimRegionToRangeCommand.js +68 -0
  212. package/dist/commands/impl/TrimRegionToRangeCommand.js.map +1 -0
  213. package/dist/commands/impl/TrimToAdjacentRegionCommand.d.ts +26 -0
  214. package/dist/commands/impl/TrimToAdjacentRegionCommand.d.ts.map +1 -0
  215. package/dist/commands/impl/TrimToAdjacentRegionCommand.js +76 -0
  216. package/dist/commands/impl/TrimToAdjacentRegionCommand.js.map +1 -0
  217. package/dist/commands/types.d.ts +19 -0
  218. package/dist/commands/types.d.ts.map +1 -1
  219. package/dist/commands/types.js +21 -0
  220. package/dist/commands/types.js.map +1 -1
  221. package/dist/domain/ABComparison.d.ts +0 -1
  222. package/dist/domain/ABComparison.d.ts.map +1 -1
  223. package/dist/domain/ABComparison.js +0 -1
  224. package/dist/domain/ABComparison.js.map +1 -1
  225. package/dist/domain/CDMarker.d.ts +0 -1
  226. package/dist/domain/CDMarker.d.ts.map +1 -1
  227. package/dist/domain/CDMarker.js +0 -1
  228. package/dist/domain/CDMarker.js.map +1 -1
  229. package/dist/domain/ClockMode.d.ts +0 -1
  230. package/dist/domain/ClockMode.d.ts.map +1 -1
  231. package/dist/domain/ClockMode.js +0 -1
  232. package/dist/domain/ClockMode.js.map +1 -1
  233. package/dist/domain/Crossfade.d.ts +78 -0
  234. package/dist/domain/Crossfade.d.ts.map +1 -0
  235. package/dist/domain/Crossfade.js +216 -0
  236. package/dist/domain/Crossfade.js.map +1 -0
  237. package/dist/domain/DragManager.d.ts +0 -2
  238. package/dist/domain/DragManager.d.ts.map +1 -1
  239. package/dist/domain/DragManager.js +0 -2
  240. package/dist/domain/DragManager.js.map +1 -1
  241. package/dist/domain/EditMode.d.ts +0 -1
  242. package/dist/domain/EditMode.d.ts.map +1 -1
  243. package/dist/domain/EditMode.js +0 -1
  244. package/dist/domain/EditMode.js.map +1 -1
  245. package/dist/domain/ExportConfig.d.ts +98 -2
  246. package/dist/domain/ExportConfig.d.ts.map +1 -1
  247. package/dist/domain/ExportConfig.js +154 -2
  248. package/dist/domain/ExportConfig.js.map +1 -1
  249. package/dist/domain/ExportPreset.d.ts +60 -0
  250. package/dist/domain/ExportPreset.d.ts.map +1 -0
  251. package/dist/domain/ExportPreset.js +77 -0
  252. package/dist/domain/ExportPreset.js.map +1 -0
  253. package/dist/domain/ExportStatus.d.ts +0 -1
  254. package/dist/domain/ExportStatus.d.ts.map +1 -1
  255. package/dist/domain/ExportStatus.js +0 -1
  256. package/dist/domain/ExportStatus.js.map +1 -1
  257. package/dist/domain/GridSettings.d.ts +0 -3
  258. package/dist/domain/GridSettings.d.ts.map +1 -1
  259. package/dist/domain/GridSettings.js +0 -3
  260. package/dist/domain/GridSettings.js.map +1 -1
  261. package/dist/domain/ImportStatus.d.ts +40 -0
  262. package/dist/domain/ImportStatus.d.ts.map +1 -0
  263. package/dist/domain/ImportStatus.js +86 -0
  264. package/dist/domain/ImportStatus.js.map +1 -0
  265. package/dist/domain/Marker.d.ts +0 -1
  266. package/dist/domain/Marker.d.ts.map +1 -1
  267. package/dist/domain/Marker.js +0 -1
  268. package/dist/domain/Marker.js.map +1 -1
  269. package/dist/domain/MeterData.d.ts +0 -2
  270. package/dist/domain/MeterData.d.ts.map +1 -1
  271. package/dist/domain/MeterType.d.ts +0 -2
  272. package/dist/domain/MeterType.d.ts.map +1 -1
  273. package/dist/domain/MeterType.js +0 -2
  274. package/dist/domain/MeterType.js.map +1 -1
  275. package/dist/domain/MonitorMode.d.ts +0 -1
  276. package/dist/domain/MonitorMode.d.ts.map +1 -1
  277. package/dist/domain/MonitorMode.js +0 -1
  278. package/dist/domain/MonitorMode.js.map +1 -1
  279. package/dist/domain/MouseMode.d.ts +0 -1
  280. package/dist/domain/MouseMode.d.ts.map +1 -1
  281. package/dist/domain/MouseMode.js +0 -1
  282. package/dist/domain/MouseMode.js.map +1 -1
  283. package/dist/domain/OverlapType.d.ts +0 -2
  284. package/dist/domain/OverlapType.d.ts.map +1 -1
  285. package/dist/domain/OverlapType.js +0 -2
  286. package/dist/domain/OverlapType.js.map +1 -1
  287. package/dist/domain/Playlist.d.ts +72 -0
  288. package/dist/domain/Playlist.d.ts.map +1 -1
  289. package/dist/domain/Playlist.js +231 -6
  290. package/dist/domain/Playlist.js.map +1 -1
  291. package/dist/domain/Range.d.ts +0 -1
  292. package/dist/domain/Range.d.ts.map +1 -1
  293. package/dist/domain/Range.js +0 -1
  294. package/dist/domain/Range.js.map +1 -1
  295. package/dist/domain/RecordMode.d.ts +0 -1
  296. package/dist/domain/RecordMode.d.ts.map +1 -1
  297. package/dist/domain/RecordMode.js +0 -1
  298. package/dist/domain/RecordMode.js.map +1 -1
  299. package/dist/domain/Region.d.ts +76 -0
  300. package/dist/domain/Region.d.ts.map +1 -1
  301. package/dist/domain/Region.js +234 -1
  302. package/dist/domain/Region.js.map +1 -1
  303. package/dist/domain/RegionClipboard.d.ts +1 -3
  304. package/dist/domain/RegionClipboard.d.ts.map +1 -1
  305. package/dist/domain/RegionClipboard.js +1 -2
  306. package/dist/domain/RegionClipboard.js.map +1 -1
  307. package/dist/domain/Route.d.ts +43 -3
  308. package/dist/domain/Route.d.ts.map +1 -1
  309. package/dist/domain/Route.js +92 -6
  310. package/dist/domain/Route.js.map +1 -1
  311. package/dist/domain/RulerType.d.ts +0 -1
  312. package/dist/domain/RulerType.d.ts.map +1 -1
  313. package/dist/domain/RulerType.js +0 -1
  314. package/dist/domain/RulerType.js.map +1 -1
  315. package/dist/domain/SelectionHistory.d.ts +0 -3
  316. package/dist/domain/SelectionHistory.d.ts.map +1 -1
  317. package/dist/domain/SelectionHistory.js +0 -3
  318. package/dist/domain/SelectionHistory.js.map +1 -1
  319. package/dist/domain/SendBus.d.ts +0 -1
  320. package/dist/domain/SendBus.d.ts.map +1 -1
  321. package/dist/domain/SendBus.js +0 -1
  322. package/dist/domain/SendBus.js.map +1 -1
  323. package/dist/domain/Session.d.ts +31 -0
  324. package/dist/domain/Session.d.ts.map +1 -1
  325. package/dist/domain/Session.js +70 -0
  326. package/dist/domain/Session.js.map +1 -1
  327. package/dist/domain/SidechainConfig.d.ts +0 -1
  328. package/dist/domain/SidechainConfig.d.ts.map +1 -1
  329. package/dist/domain/SidechainConfig.js +0 -1
  330. package/dist/domain/SidechainConfig.js.map +1 -1
  331. package/dist/domain/Source.d.ts +145 -1
  332. package/dist/domain/Source.d.ts.map +1 -1
  333. package/dist/domain/Source.js +144 -1
  334. package/dist/domain/Source.js.map +1 -1
  335. package/dist/domain/Take.d.ts +0 -1
  336. package/dist/domain/Take.d.ts.map +1 -1
  337. package/dist/domain/Take.js +0 -1
  338. package/dist/domain/Take.js.map +1 -1
  339. package/dist/domain/ThawList.d.ts +36 -0
  340. package/dist/domain/ThawList.d.ts.map +1 -0
  341. package/dist/domain/ThawList.js +72 -0
  342. package/dist/domain/ThawList.js.map +1 -0
  343. package/dist/domain/Track.d.ts +93 -1
  344. package/dist/domain/Track.d.ts.map +1 -1
  345. package/dist/domain/Track.js +136 -0
  346. package/dist/domain/Track.js.map +1 -1
  347. package/dist/domain/TrackGroup.d.ts +0 -1
  348. package/dist/domain/TrackGroup.d.ts.map +1 -1
  349. package/dist/domain/TrackGroup.js +0 -1
  350. package/dist/domain/TrackGroup.js.map +1 -1
  351. package/dist/domain/TransportFSM.d.ts +0 -1
  352. package/dist/domain/TransportFSM.d.ts.map +1 -1
  353. package/dist/domain/TransportFSM.js +0 -1
  354. package/dist/domain/TransportFSM.js.map +1 -1
  355. package/dist/domain/TransportMode.d.ts +0 -1
  356. package/dist/domain/TransportMode.d.ts.map +1 -1
  357. package/dist/domain/TransportMode.js +0 -1
  358. package/dist/domain/TransportMode.js.map +1 -1
  359. package/dist/domain/TriggerBox.d.ts +121 -0
  360. package/dist/domain/TriggerBox.d.ts.map +1 -0
  361. package/dist/domain/TriggerBox.js +428 -0
  362. package/dist/domain/TriggerBox.js.map +1 -0
  363. package/dist/domain/VCATrack.d.ts +63 -2
  364. package/dist/domain/VCATrack.d.ts.map +1 -1
  365. package/dist/domain/VCATrack.js +127 -2
  366. package/dist/domain/VCATrack.js.map +1 -1
  367. package/dist/domain/VideoExportConfig.d.ts +116 -0
  368. package/dist/domain/VideoExportConfig.d.ts.map +1 -0
  369. package/dist/domain/VideoExportConfig.js +243 -0
  370. package/dist/domain/VideoExportConfig.js.map +1 -0
  371. package/dist/domain/VideoExportStatus.d.ts +89 -0
  372. package/dist/domain/VideoExportStatus.d.ts.map +1 -0
  373. package/dist/domain/VideoExportStatus.js +192 -0
  374. package/dist/domain/VideoExportStatus.js.map +1 -0
  375. package/dist/domain/VideoMetadata.d.ts +46 -0
  376. package/dist/domain/VideoMetadata.d.ts.map +1 -0
  377. package/dist/domain/VideoMetadata.js +2 -0
  378. package/dist/domain/VideoMetadata.js.map +1 -0
  379. package/dist/domain/ZoomFocus.d.ts +0 -1
  380. package/dist/domain/ZoomFocus.d.ts.map +1 -1
  381. package/dist/domain/ZoomFocus.js +0 -1
  382. package/dist/domain/ZoomFocus.js.map +1 -1
  383. package/dist/domain/index.d.ts +5 -0
  384. package/dist/domain/index.d.ts.map +1 -1
  385. package/dist/domain/index.js +5 -0
  386. package/dist/domain/index.js.map +1 -1
  387. package/dist/domain/temporal/TempoMap.d.ts +198 -2
  388. package/dist/domain/temporal/TempoMap.d.ts.map +1 -1
  389. package/dist/domain/temporal/TempoMap.js +464 -30
  390. package/dist/domain/temporal/TempoMap.js.map +1 -1
  391. package/dist/domain/temporal/types.d.ts +1 -1
  392. package/dist/domain/temporal/types.d.ts.map +1 -1
  393. package/dist/domain/temporal/types.js +1 -1
  394. package/dist/domain/temporal/types.js.map +1 -1
  395. package/dist/index.d.ts +43 -1
  396. package/dist/index.d.ts.map +1 -1
  397. package/dist/index.js +32 -1
  398. package/dist/index.js.map +1 -1
  399. package/dist/lib/Signal.d.ts +1 -1
  400. package/dist/lib/ThawList.d.ts +98 -0
  401. package/dist/lib/ThawList.d.ts.map +1 -0
  402. package/dist/lib/ThawList.js +151 -0
  403. package/dist/lib/ThawList.js.map +1 -0
  404. package/dist/midi/MidiFileParser.d.ts +32 -0
  405. package/dist/midi/MidiFileParser.d.ts.map +1 -0
  406. package/dist/midi/MidiFileParser.js +245 -0
  407. package/dist/midi/MidiFileParser.js.map +1 -0
  408. package/dist/midi/MidiFileWriter.d.ts +30 -0
  409. package/dist/midi/MidiFileWriter.d.ts.map +1 -0
  410. package/dist/midi/MidiFileWriter.js +159 -0
  411. package/dist/midi/MidiFileWriter.js.map +1 -0
  412. package/dist/midi/MidiImporter.d.ts +37 -0
  413. package/dist/midi/MidiImporter.d.ts.map +1 -0
  414. package/dist/midi/MidiImporter.js +62 -0
  415. package/dist/midi/MidiImporter.js.map +1 -0
  416. package/dist/plugins/PluginManager.js +2 -2
  417. package/dist/plugins/PluginManager.js.map +1 -1
  418. package/dist/plugins/PluginPresetManager.d.ts +86 -0
  419. package/dist/plugins/PluginPresetManager.d.ts.map +1 -0
  420. package/dist/plugins/PluginPresetManager.js +140 -0
  421. package/dist/plugins/PluginPresetManager.js.map +1 -0
  422. package/dist/plugins/impl/ExpanderPlugin.d.ts +1 -1
  423. package/dist/plugins/impl/ExpanderPlugin.js +1 -1
  424. package/dist/plugins/impl/ParametricEQPlugin.d.ts +1 -1
  425. package/dist/plugins/impl/ParametricEQPlugin.js +1 -1
  426. package/dist/processing/IO.d.ts +15 -1
  427. package/dist/processing/IO.d.ts.map +1 -1
  428. package/dist/processing/IO.js +29 -1
  429. package/dist/processing/IO.js.map +1 -1
  430. package/dist/processing/InternalSend.d.ts +102 -0
  431. package/dist/processing/InternalSend.d.ts.map +1 -0
  432. package/dist/processing/InternalSend.js +175 -0
  433. package/dist/processing/InternalSend.js.map +1 -0
  434. package/dist/processing/MeterDSP.d.ts +165 -0
  435. package/dist/processing/MeterDSP.d.ts.map +1 -0
  436. package/dist/processing/MeterDSP.js +753 -0
  437. package/dist/processing/MeterDSP.js.map +1 -0
  438. package/dist/processing/MeterProcessor.d.ts +0 -1
  439. package/dist/processing/MeterProcessor.d.ts.map +1 -1
  440. package/dist/processing/MeterProcessor.js +0 -1
  441. package/dist/processing/MeterProcessor.js.map +1 -1
  442. package/dist/processing/Panner.d.ts +144 -0
  443. package/dist/processing/Panner.d.ts.map +1 -0
  444. package/dist/processing/Panner.js +280 -0
  445. package/dist/processing/Panner.js.map +1 -0
  446. package/dist/processing/PluginInsert.d.ts +56 -1
  447. package/dist/processing/PluginInsert.d.ts.map +1 -1
  448. package/dist/processing/PluginInsert.js +180 -2
  449. package/dist/processing/PluginInsert.js.map +1 -1
  450. package/dist/processing/PolarityProcessor.d.ts +1 -1
  451. package/dist/processing/PolarityProcessor.js +1 -1
  452. package/dist/processing/Processor.d.ts +38 -0
  453. package/dist/processing/Processor.d.ts.map +1 -1
  454. package/dist/processing/Processor.js +60 -1
  455. package/dist/processing/Processor.js.map +1 -1
  456. package/dist/processing/SendProcessor.d.ts +0 -1
  457. package/dist/processing/SendProcessor.d.ts.map +1 -1
  458. package/dist/processing/SendProcessor.js +0 -1
  459. package/dist/processing/SendProcessor.js.map +1 -1
  460. package/dist/processing/SurroundPanner.d.ts +120 -0
  461. package/dist/processing/SurroundPanner.d.ts.map +1 -0
  462. package/dist/processing/SurroundPanner.js +374 -0
  463. package/dist/processing/SurroundPanner.js.map +1 -0
  464. package/dist/processing/TruePeakLimiter.d.ts +32 -0
  465. package/dist/processing/TruePeakLimiter.d.ts.map +1 -0
  466. package/dist/processing/TruePeakLimiter.js +142 -0
  467. package/dist/processing/TruePeakLimiter.js.map +1 -0
  468. package/dist/storage/ExportPresetStorage.d.ts +33 -0
  469. package/dist/storage/ExportPresetStorage.d.ts.map +1 -0
  470. package/dist/storage/ExportPresetStorage.js +121 -0
  471. package/dist/storage/ExportPresetStorage.js.map +1 -0
  472. package/dist/storage/SessionArchive.d.ts +73 -0
  473. package/dist/storage/SessionArchive.d.ts.map +1 -0
  474. package/dist/storage/SessionArchive.js +211 -0
  475. package/dist/storage/SessionArchive.js.map +1 -0
  476. package/dist/storage/SessionStorage.d.ts +1 -1
  477. package/dist/storage/SessionTemplate.d.ts +74 -5
  478. package/dist/storage/SessionTemplate.d.ts.map +1 -1
  479. package/dist/storage/SessionTemplate.js +247 -53
  480. package/dist/storage/SessionTemplate.js.map +1 -1
  481. package/dist/utils/BwfMetadataWriter.d.ts +41 -0
  482. package/dist/utils/BwfMetadataWriter.d.ts.map +1 -0
  483. package/dist/utils/BwfMetadataWriter.js +130 -0
  484. package/dist/utils/BwfMetadataWriter.js.map +1 -0
  485. package/dist/utils/DitherProcessor.d.ts +0 -1
  486. package/dist/utils/DitherProcessor.d.ts.map +1 -1
  487. package/dist/utils/DitherProcessor.js +0 -1
  488. package/dist/utils/DitherProcessor.js.map +1 -1
  489. package/dist/utils/FilenameTemplate.d.ts +39 -0
  490. package/dist/utils/FilenameTemplate.d.ts.map +1 -0
  491. package/dist/utils/FilenameTemplate.js +77 -0
  492. package/dist/utils/FilenameTemplate.js.map +1 -0
  493. package/dist/utils/FlacEncoder.d.ts +0 -1
  494. package/dist/utils/FlacEncoder.d.ts.map +1 -1
  495. package/dist/utils/FlacEncoder.js +0 -1
  496. package/dist/utils/FlacEncoder.js.map +1 -1
  497. package/dist/utils/Logger.d.ts +28 -0
  498. package/dist/utils/Logger.d.ts.map +1 -0
  499. package/dist/utils/Logger.js +46 -0
  500. package/dist/utils/Logger.js.map +1 -0
  501. package/dist/utils/Mp4ChapterGenerator.d.ts +16 -0
  502. package/dist/utils/Mp4ChapterGenerator.d.ts.map +1 -0
  503. package/dist/utils/Mp4ChapterGenerator.js +32 -0
  504. package/dist/utils/Mp4ChapterGenerator.js.map +1 -0
  505. package/dist/utils/OggEncoder.d.ts +19 -21
  506. package/dist/utils/OggEncoder.d.ts.map +1 -1
  507. package/dist/utils/OggEncoder.js +113 -51
  508. package/dist/utils/OggEncoder.js.map +1 -1
  509. package/dist/utils/TocGenerator.d.ts +16 -0
  510. package/dist/utils/TocGenerator.d.ts.map +1 -0
  511. package/dist/utils/TocGenerator.js +46 -0
  512. package/dist/utils/TocGenerator.js.map +1 -0
  513. package/package.json +7 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MeterDSP.js","sourceRoot":"","sources":["../../src/processing/MeterDSP.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,6 @@ import { MeterPoint } from '../domain/MeterType';
5
5
  /**
6
6
  * Metering DSP processor.
7
7
  *
8
- * Modelled after Ardour's PeakMeter (libs/ardour/meter.cc).
9
8
  * Provides multi-channel peak, RMS, and peak-hold values along with
10
9
  * K-metering and VU calculation helpers.
11
10
  *
@@ -1 +1 @@
1
- {"version":3,"file":"MeterProcessor.d.ts","sourceRoot":"","sources":["../../src/processing/MeterProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;;;;;;;;GASG;AACH,qBAAa,cAAe,SAAQ,SAAS;IACzC,qDAAqD;IACrD,OAAO,CAAC,UAAU,CAAW;IAC7B,sCAAsC;IACtC,OAAO,CAAC,SAAS,CAAW;IAC5B,4DAA4D;IAC5D,OAAO,CAAC,QAAQ,CAAW;IAC3B,qDAAqD;IACrD,OAAO,CAAC,SAAS,CAAe;IAChC,kDAAkD;IAClD,OAAO,CAAC,YAAY,CAAS;IAE7B,sDAAsD;IACtD,OAAO,CAAC,WAAW,CAAa;IAEhC,0CAA0C;IAC1C,SAAgB,YAAY,oBAA2B;IACvD,4CAA4C;IAC5C,SAAgB,iBAAiB,qBAA4B;IAE7D;;;;OAIG;gBAEC,EAAE,EAAE,WAAW,EACf,UAAU,GAAE,UAAkC,EAC9C,QAAQ,GAAE,MAAU;IAYxB;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAQ7C,mCAAmC;IAC5B,aAAa,IAAI,UAAU;IAMlC;;;;;;;;;;OAUG;IACI,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAgBxE;;;;;;;;;;OAUG;IACI,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM;IAgBtD;;;;;;;OAOG;IACI,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,IAAI;IAsCjD;;;;;OAKG;IACI,YAAY,IAAI,SAAS;IAmBhC;;;;OAIG;IACI,mBAAmB,IAAI,SAAS,EAAE;IAazC;;OAEG;IACI,aAAa,IAAI,IAAI;IAI5B;;;OAGG;IACI,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAG1C"}
1
+ {"version":3,"file":"MeterProcessor.d.ts","sourceRoot":"","sources":["../../src/processing/MeterProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD;;;;;;;;GAQG;AACH,qBAAa,cAAe,SAAQ,SAAS;IACzC,qDAAqD;IACrD,OAAO,CAAC,UAAU,CAAW;IAC7B,sCAAsC;IACtC,OAAO,CAAC,SAAS,CAAW;IAC5B,4DAA4D;IAC5D,OAAO,CAAC,QAAQ,CAAW;IAC3B,qDAAqD;IACrD,OAAO,CAAC,SAAS,CAAe;IAChC,kDAAkD;IAClD,OAAO,CAAC,YAAY,CAAS;IAE7B,sDAAsD;IACtD,OAAO,CAAC,WAAW,CAAa;IAEhC,0CAA0C;IAC1C,SAAgB,YAAY,oBAA2B;IACvD,4CAA4C;IAC5C,SAAgB,iBAAiB,qBAA4B;IAE7D;;;;OAIG;gBAEC,EAAE,EAAE,WAAW,EACf,UAAU,GAAE,UAAkC,EAC9C,QAAQ,GAAE,MAAU;IAYxB;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAQ7C,mCAAmC;IAC5B,aAAa,IAAI,UAAU;IAMlC;;;;;;;;;;OAUG;IACI,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAgBxE;;;;;;;;;;OAUG;IACI,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM;IAgBtD;;;;;;;OAOG;IACI,OAAO,CAAC,WAAW,EAAE,YAAY,EAAE,GAAG,IAAI;IAsCjD;;;;;OAKG;IACI,YAAY,IAAI,SAAS;IAmBhC;;;;OAIG;IACI,mBAAmB,IAAI,SAAS,EAAE;IAazC;;OAEG;IACI,aAAa,IAAI,IAAI;IAI5B;;;OAGG;IACI,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAG1C"}
@@ -4,7 +4,6 @@ import { MeterPoint } from '../domain/MeterType';
4
4
  /**
5
5
  * Metering DSP processor.
6
6
  *
7
- * Modelled after Ardour's PeakMeter (libs/ardour/meter.cc).
8
7
  * Provides multi-channel peak, RMS, and peak-hold values along with
9
8
  * K-metering and VU calculation helpers.
10
9
  *
@@ -1 +1 @@
1
- {"version":3,"file":"MeterProcessor.js","sourceRoot":"","sources":["../../src/processing/MeterProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MeterProcessor.js","sourceRoot":"","sources":["../../src/processing/MeterProcessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ import { Processor, ProcessorId } from './Processor';
2
+ import { Signal } from '../lib/Signal';
3
+ /**
4
+ * Panning algorithm type.
5
+ */
6
+ export declare enum PannerType {
7
+ /** Simple left/right balance control. */
8
+ STEREO_BALANCE = "stereo_balance",
9
+ /** Stereo width (MS mid-side encoding). */
10
+ STEREO_WIDTH = "stereo_width",
11
+ /** Equal-power panning law (cosine/sine). */
12
+ EQUAL_POWER = "equal_power",
13
+ /** Linear panning law. */
14
+ LINEAR = "linear"
15
+ }
16
+ /**
17
+ * Pan law compensation applied at center position.
18
+ *
19
+ * When a mono signal is panned to center, both speakers reproduce the full
20
+ * signal, causing an apparent loudness increase. Pan laws attenuate the
21
+ * center position to compensate.
22
+ */
23
+ export declare enum PanLaw {
24
+ /** -3 dB center attenuation (equal power, default). */
25
+ MINUS_3DB = "-3dB",
26
+ /** -4.5 dB center attenuation (compromise). */
27
+ MINUS_4_5DB = "-4.5dB",
28
+ /** -6 dB center attenuation (linear). */
29
+ MINUS_6DB = "-6dB",
30
+ /** 0 dB center — no compensation. */
31
+ ZERO_DB = "0dB"
32
+ }
33
+ /**
34
+ * Full-featured stereo panner.
35
+ *
36
+ * Supports multiple panning algorithms ({@link PannerType}), configurable
37
+ * pan laws ({@link PanLaw}), stereo width control, and a future-proof
38
+ * elevation parameter for 3-D panning.
39
+ *
40
+ * Signal chain position (inside {@link Route}):
41
+ * … -> [Post-fader plugins] -> **Panner** -> Output
42
+ */
43
+ export declare class Panner extends Processor {
44
+ private _type;
45
+ private _panLaw;
46
+ /** Azimuth position: -1.0 (hard left) to 1.0 (hard right). */
47
+ private _azimuth;
48
+ /** Stereo width: 0.0 (mono) to 1.0 (normal) to 2.0 (extra wide). */
49
+ private _width;
50
+ /** Elevation: -1.0 to 1.0 (reserved for future 3-D / Atmos support). */
51
+ private _elevation;
52
+ readonly azimuthChanged: Signal<number>;
53
+ readonly widthChanged: Signal<number>;
54
+ readonly typeChanged: Signal<PannerType>;
55
+ constructor(id: ProcessorId, name?: string, type?: PannerType, panLaw?: PanLaw);
56
+ get type(): PannerType;
57
+ get panLaw(): PanLaw;
58
+ get azimuth(): number;
59
+ get width(): number;
60
+ get elevation(): number;
61
+ /**
62
+ * Set the pan position (azimuth).
63
+ * @param value -1.0 (hard left) to 1.0 (hard right).
64
+ */
65
+ setAzimuth(value: number): void;
66
+ /**
67
+ * Set the stereo width.
68
+ * @param value 0.0 (mono) through 1.0 (normal) to 2.0 (extra wide).
69
+ */
70
+ setWidth(value: number): void;
71
+ /**
72
+ * Set the elevation (reserved for 3-D panning).
73
+ * @param value -1.0 to 1.0.
74
+ */
75
+ setElevation(value: number): void;
76
+ /**
77
+ * Set the pan law.
78
+ */
79
+ setPanLaw(law: PanLaw): void;
80
+ /**
81
+ * Set the panner type (algorithm).
82
+ */
83
+ setType(type: PannerType): void;
84
+ /**
85
+ * Compute the left and right gain coefficients for the current pan
86
+ * position, width, type and pan law.
87
+ *
88
+ * @returns `[leftGain, rightGain]` — linear gain values.
89
+ */
90
+ computeGains(): [number, number];
91
+ /**
92
+ * Equal-power panning: left = cos(theta), right = sin(theta)
93
+ * where theta = normalizedPan * PI/2.
94
+ */
95
+ private _computeEqualPower;
96
+ /**
97
+ * Linear panning: left = 1 - pan, right = pan (pan 0..1).
98
+ */
99
+ private _computeLinear;
100
+ /**
101
+ * Stereo balance: attenuates the opposite channel rather than boosting.
102
+ * At center both channels pass at unity; panning left attenuates right.
103
+ */
104
+ private _computeStereoBalance;
105
+ /**
106
+ * Stereo width via mid/side (MS) encoding.
107
+ *
108
+ * Mid = (L + R) / 2
109
+ * Side = (L - R) / 2
110
+ *
111
+ * Recombine with width factor w:
112
+ * L' = Mid + w * Side
113
+ * R' = Mid - w * Side
114
+ *
115
+ * width = 0 -> mono, 1 -> normal stereo, 2 -> extra wide.
116
+ *
117
+ * Azimuth is applied on top as equal-power balance of the result.
118
+ */
119
+ private _computeStereoWidth;
120
+ /**
121
+ * Compute the gain multiplier that compensates between the raw algorithm's
122
+ * inherent center level and the user-selected pan law.
123
+ *
124
+ * @param rawLaw The pan law inherent to the raw algorithm.
125
+ * @returns A linear gain multiplier (>= 1 if boosting center, <= 1 if cutting).
126
+ */
127
+ private _centerCompensation;
128
+ /**
129
+ * Get the azimuth as a normalized 0..1 value (for automation lanes).
130
+ * 0 = hard left, 0.5 = center, 1 = hard right.
131
+ */
132
+ getNormalizedAzimuth(): number;
133
+ /**
134
+ * Set azimuth from a normalized 0..1 value.
135
+ */
136
+ setNormalizedAzimuth(normalized: number): void;
137
+ /**
138
+ * Human-readable string for the current pan position.
139
+ *
140
+ * Examples: `"L 30"`, `"C"`, `"R 45"`, `"L 100"`.
141
+ */
142
+ valueAsString(): string;
143
+ }
144
+ //# sourceMappingURL=Panner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Panner.d.ts","sourceRoot":"","sources":["../../src/processing/Panner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC;;GAEG;AACH,oBAAY,UAAU;IAClB,yCAAyC;IACzC,cAAc,mBAAmB;IACjC,2CAA2C;IAC3C,YAAY,iBAAiB;IAC7B,6CAA6C;IAC7C,WAAW,gBAAgB;IAC3B,0BAA0B;IAC1B,MAAM,WAAW;CACpB;AAED;;;;;;GAMG;AACH,oBAAY,MAAM;IACd,uDAAuD;IACvD,SAAS,SAAS;IAClB,+CAA+C;IAC/C,WAAW,WAAW;IACtB,yCAAyC;IACzC,SAAS,SAAS;IAClB,qCAAqC;IACrC,OAAO,QAAQ;CAClB;AAcD;;;;;;;;;GASG;AACH,qBAAa,MAAO,SAAQ,SAAS;IACjC,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,OAAO,CAAS;IAExB,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,CAAa;IAC7B,oEAAoE;IACpE,OAAO,CAAC,MAAM,CAAe;IAC7B,wEAAwE;IACxE,OAAO,CAAC,UAAU,CAAa;IAG/B,SAAgB,cAAc,iBAAwB;IACtD,SAAgB,YAAY,iBAAwB;IACpD,SAAgB,WAAW,qBAA4B;gBAGnD,EAAE,EAAE,WAAW,EACf,IAAI,GAAE,MAAiB,EACvB,IAAI,GAAE,UAAmC,EACzC,MAAM,GAAE,MAAyB;IASrC,IAAW,IAAI,IAAI,UAAU,CAAuB;IACpD,IAAW,MAAM,IAAI,MAAM,CAAyB;IACpD,IAAW,OAAO,IAAI,MAAM,CAA0B;IACtD,IAAW,KAAK,IAAI,MAAM,CAAwB;IAClD,IAAW,SAAS,IAAI,MAAM,CAA4B;IAI1D;;;OAGG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAStC;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IASpC;;;OAGG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKxC;;OAEG;IACI,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKnC;;OAEG;IACI,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAUtC;;;;;OAKG;IACI,YAAY,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;IAavC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAatB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAmB7B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,mBAAmB;IA4B3B;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAS3B;;;OAGG;IACI,oBAAoB,IAAI,MAAM;IAIrC;;OAEG;IACI,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAOrD;;;;OAIG;IACI,aAAa,IAAI,MAAM;CAUjC"}
@@ -0,0 +1,280 @@
1
+ import { Processor } from './Processor';
2
+ import { Signal } from '../lib/Signal';
3
+ /**
4
+ * Panning algorithm type.
5
+ */
6
+ export var PannerType;
7
+ (function (PannerType) {
8
+ /** Simple left/right balance control. */
9
+ PannerType["STEREO_BALANCE"] = "stereo_balance";
10
+ /** Stereo width (MS mid-side encoding). */
11
+ PannerType["STEREO_WIDTH"] = "stereo_width";
12
+ /** Equal-power panning law (cosine/sine). */
13
+ PannerType["EQUAL_POWER"] = "equal_power";
14
+ /** Linear panning law. */
15
+ PannerType["LINEAR"] = "linear";
16
+ })(PannerType || (PannerType = {}));
17
+ /**
18
+ * Pan law compensation applied at center position.
19
+ *
20
+ * When a mono signal is panned to center, both speakers reproduce the full
21
+ * signal, causing an apparent loudness increase. Pan laws attenuate the
22
+ * center position to compensate.
23
+ */
24
+ export var PanLaw;
25
+ (function (PanLaw) {
26
+ /** -3 dB center attenuation (equal power, default). */
27
+ PanLaw["MINUS_3DB"] = "-3dB";
28
+ /** -4.5 dB center attenuation (compromise). */
29
+ PanLaw["MINUS_4_5DB"] = "-4.5dB";
30
+ /** -6 dB center attenuation (linear). */
31
+ PanLaw["MINUS_6DB"] = "-6dB";
32
+ /** 0 dB center — no compensation. */
33
+ PanLaw["ZERO_DB"] = "0dB";
34
+ })(PanLaw || (PanLaw = {}));
35
+ /**
36
+ * Map from PanLaw to the linear gain factor applied at dead center.
37
+ */
38
+ function panLawCenterGain(law) {
39
+ switch (law) {
40
+ case PanLaw.MINUS_3DB: return Math.pow(10, -3.0 / 20); // ~0.7071
41
+ case PanLaw.MINUS_4_5DB: return Math.pow(10, -4.5 / 20); // ~0.5957
42
+ case PanLaw.MINUS_6DB: return Math.pow(10, -6.0 / 20); // ~0.5012
43
+ case PanLaw.ZERO_DB: return 1.0;
44
+ }
45
+ }
46
+ /**
47
+ * Full-featured stereo panner.
48
+ *
49
+ * Supports multiple panning algorithms ({@link PannerType}), configurable
50
+ * pan laws ({@link PanLaw}), stereo width control, and a future-proof
51
+ * elevation parameter for 3-D panning.
52
+ *
53
+ * Signal chain position (inside {@link Route}):
54
+ * … -> [Post-fader plugins] -> **Panner** -> Output
55
+ */
56
+ export class Panner extends Processor {
57
+ constructor(id, name = 'Panner', type = PannerType.EQUAL_POWER, panLaw = PanLaw.MINUS_3DB) {
58
+ super(id, name);
59
+ /** Azimuth position: -1.0 (hard left) to 1.0 (hard right). */
60
+ this._azimuth = 0;
61
+ /** Stereo width: 0.0 (mono) to 1.0 (normal) to 2.0 (extra wide). */
62
+ this._width = 1.0;
63
+ /** Elevation: -1.0 to 1.0 (reserved for future 3-D / Atmos support). */
64
+ this._elevation = 0;
65
+ // ── Signals ─────────────────────────────────────────────────────────────
66
+ this.azimuthChanged = new Signal();
67
+ this.widthChanged = new Signal();
68
+ this.typeChanged = new Signal();
69
+ this._type = type;
70
+ this._panLaw = panLaw;
71
+ }
72
+ // ── Getters ─────────────────────────────────────────────────────────────
73
+ get type() { return this._type; }
74
+ get panLaw() { return this._panLaw; }
75
+ get azimuth() { return this._azimuth; }
76
+ get width() { return this._width; }
77
+ get elevation() { return this._elevation; }
78
+ // ── Setters ─────────────────────────────────────────────────────────────
79
+ /**
80
+ * Set the pan position (azimuth).
81
+ * @param value -1.0 (hard left) to 1.0 (hard right).
82
+ */
83
+ setAzimuth(value) {
84
+ const clamped = Math.max(-1, Math.min(1, value));
85
+ if (this._azimuth !== clamped) {
86
+ this._azimuth = clamped;
87
+ this.azimuthChanged.emit(clamped);
88
+ this.stateChanged.emit();
89
+ }
90
+ }
91
+ /**
92
+ * Set the stereo width.
93
+ * @param value 0.0 (mono) through 1.0 (normal) to 2.0 (extra wide).
94
+ */
95
+ setWidth(value) {
96
+ const clamped = Math.max(0, Math.min(2, value));
97
+ if (this._width !== clamped) {
98
+ this._width = clamped;
99
+ this.widthChanged.emit(clamped);
100
+ this.stateChanged.emit();
101
+ }
102
+ }
103
+ /**
104
+ * Set the elevation (reserved for 3-D panning).
105
+ * @param value -1.0 to 1.0.
106
+ */
107
+ setElevation(value) {
108
+ const clamped = Math.max(-1, Math.min(1, value));
109
+ this._elevation = clamped;
110
+ }
111
+ /**
112
+ * Set the pan law.
113
+ */
114
+ setPanLaw(law) {
115
+ this._panLaw = law;
116
+ this.stateChanged.emit();
117
+ }
118
+ /**
119
+ * Set the panner type (algorithm).
120
+ */
121
+ setType(type) {
122
+ if (this._type !== type) {
123
+ this._type = type;
124
+ this.typeChanged.emit(type);
125
+ this.stateChanged.emit();
126
+ }
127
+ }
128
+ // ── Core computation ────────────────────────────────────────────────────
129
+ /**
130
+ * Compute the left and right gain coefficients for the current pan
131
+ * position, width, type and pan law.
132
+ *
133
+ * @returns `[leftGain, rightGain]` — linear gain values.
134
+ */
135
+ computeGains() {
136
+ switch (this._type) {
137
+ case PannerType.EQUAL_POWER:
138
+ return this._computeEqualPower();
139
+ case PannerType.LINEAR:
140
+ return this._computeLinear();
141
+ case PannerType.STEREO_BALANCE:
142
+ return this._computeStereoBalance();
143
+ case PannerType.STEREO_WIDTH:
144
+ return this._computeStereoWidth();
145
+ }
146
+ }
147
+ /**
148
+ * Equal-power panning: left = cos(theta), right = sin(theta)
149
+ * where theta = normalizedPan * PI/2.
150
+ */
151
+ _computeEqualPower() {
152
+ const normalized = (this._azimuth + 1) / 2; // 0..1
153
+ const angle = normalized * Math.PI / 2;
154
+ let leftGain = Math.cos(angle);
155
+ let rightGain = Math.sin(angle);
156
+ // Apply pan-law compensation at center.
157
+ // At center (normalized = 0.5) the raw equal-power gains are both
158
+ // ~0.7071 (-3 dB). To map to a different pan law we scale so that
159
+ // the center level matches the chosen law.
160
+ const compensation = this._centerCompensation(PanLaw.MINUS_3DB);
161
+ leftGain *= compensation;
162
+ rightGain *= compensation;
163
+ return [leftGain, rightGain];
164
+ }
165
+ /**
166
+ * Linear panning: left = 1 - pan, right = pan (pan 0..1).
167
+ */
168
+ _computeLinear() {
169
+ const normalized = (this._azimuth + 1) / 2; // 0..1
170
+ let leftGain = 1 - normalized;
171
+ let rightGain = normalized;
172
+ // Raw linear center is 0.5 each (-6 dB).
173
+ const compensation = this._centerCompensation(PanLaw.MINUS_6DB);
174
+ leftGain *= compensation;
175
+ rightGain *= compensation;
176
+ return [leftGain, rightGain];
177
+ }
178
+ /**
179
+ * Stereo balance: attenuates the opposite channel rather than boosting.
180
+ * At center both channels pass at unity; panning left attenuates right.
181
+ */
182
+ _computeStereoBalance() {
183
+ // normalized: 0 = hard left, 0.5 = center, 1 = hard right
184
+ const normalized = (this._azimuth + 1) / 2;
185
+ let leftGain;
186
+ let rightGain;
187
+ if (normalized <= 0.5) {
188
+ // Panned left — attenuate right channel
189
+ leftGain = 1.0;
190
+ rightGain = normalized * 2; // 0..1
191
+ }
192
+ else {
193
+ // Panned right — attenuate left channel
194
+ leftGain = (1 - normalized) * 2; // 1..0
195
+ rightGain = 1.0;
196
+ }
197
+ return [leftGain, rightGain];
198
+ }
199
+ /**
200
+ * Stereo width via mid/side (MS) encoding.
201
+ *
202
+ * Mid = (L + R) / 2
203
+ * Side = (L - R) / 2
204
+ *
205
+ * Recombine with width factor w:
206
+ * L' = Mid + w * Side
207
+ * R' = Mid - w * Side
208
+ *
209
+ * width = 0 -> mono, 1 -> normal stereo, 2 -> extra wide.
210
+ *
211
+ * Azimuth is applied on top as equal-power balance of the result.
212
+ */
213
+ _computeStereoWidth() {
214
+ // Start with equal-power base for the azimuth component
215
+ const normalized = (this._azimuth + 1) / 2;
216
+ const angle = normalized * Math.PI / 2;
217
+ let leftGain = Math.cos(angle);
218
+ let rightGain = Math.sin(angle);
219
+ // Apply width via MS transform coefficients.
220
+ // For a mono input treated as mid-only (side = 0):
221
+ // L = mid, R = mid -> both get equal-power panned gains.
222
+ // For a stereo signal with width:
223
+ // The width scales the side component. We express this as
224
+ // gain adjustments that can be applied per-channel.
225
+ const mid = 1.0;
226
+ const side = this._width;
227
+ const lScale = (mid + side) / 2;
228
+ const rScale = (mid + side) / 2;
229
+ leftGain *= lScale;
230
+ rightGain *= rScale;
231
+ const compensation = this._centerCompensation(PanLaw.MINUS_3DB);
232
+ leftGain *= compensation;
233
+ rightGain *= compensation;
234
+ return [leftGain, rightGain];
235
+ }
236
+ /**
237
+ * Compute the gain multiplier that compensates between the raw algorithm's
238
+ * inherent center level and the user-selected pan law.
239
+ *
240
+ * @param rawLaw The pan law inherent to the raw algorithm.
241
+ * @returns A linear gain multiplier (>= 1 if boosting center, <= 1 if cutting).
242
+ */
243
+ _centerCompensation(rawLaw) {
244
+ const rawCenter = panLawCenterGain(rawLaw);
245
+ const targetCenter = panLawCenterGain(this._panLaw);
246
+ // Scale so that at center, the actual level matches `targetCenter`.
247
+ return targetCenter / rawCenter;
248
+ }
249
+ // ── Normalized / automation helpers ──────────────────────────────────────
250
+ /**
251
+ * Get the azimuth as a normalized 0..1 value (for automation lanes).
252
+ * 0 = hard left, 0.5 = center, 1 = hard right.
253
+ */
254
+ getNormalizedAzimuth() {
255
+ return (this._azimuth + 1) / 2;
256
+ }
257
+ /**
258
+ * Set azimuth from a normalized 0..1 value.
259
+ */
260
+ setNormalizedAzimuth(normalized) {
261
+ const clamped = Math.max(0, Math.min(1, normalized));
262
+ this.setAzimuth(clamped * 2 - 1);
263
+ }
264
+ // ── Display ─────────────────────────────────────────────────────────────
265
+ /**
266
+ * Human-readable string for the current pan position.
267
+ *
268
+ * Examples: `"L 30"`, `"C"`, `"R 45"`, `"L 100"`.
269
+ */
270
+ valueAsString() {
271
+ if (this._azimuth === 0) {
272
+ return 'C';
273
+ }
274
+ // Convert -1..1 to percentage-like 0..100
275
+ const pct = Math.round(Math.abs(this._azimuth) * 100);
276
+ const dir = this._azimuth < 0 ? 'L' : 'R';
277
+ return `${dir} ${pct}`;
278
+ }
279
+ }
280
+ //# sourceMappingURL=Panner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Panner.js","sourceRoot":"","sources":["../../src/processing/Panner.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,64 @@
1
1
  import { Processor, ProcessorId } from './Processor';
2
2
  import { Plugin } from '../plugins/Plugin';
3
+ /**
4
+ * PluginInsert wraps a Plugin instance inside the Processor graph, bridging
5
+ * the plugin parameter world with the route's latency-compensation and
6
+ * tail-length bookkeeping.
7
+ *
8
+ * It automatically estimates processing latency and tail time based on the
9
+ * plugin type and name, and re-evaluates those estimates whenever a plugin
10
+ * parameter changes.
11
+ */
3
12
  export declare class PluginInsert extends Processor {
4
13
  private _plugin;
5
- constructor(id: ProcessorId, plugin: Plugin);
14
+ private _sampleRate;
15
+ private _parameterSubscription;
16
+ constructor(id: ProcessorId, plugin: Plugin, sampleRate?: number);
6
17
  get plugin(): Plugin;
18
+ /** The sample rate used for time-to-sample conversions in tail estimation. */
19
+ get sampleRate(): number;
20
+ set sampleRate(rate: number);
7
21
  set active(value: boolean);
22
+ get active(): boolean;
23
+ /**
24
+ * Estimate latency (in samples) based on plugin name / type heuristics.
25
+ *
26
+ * Real-world plugins would report their exact latency; here we use
27
+ * conservative estimates for common processor categories:
28
+ *
29
+ * - Linear-phase EQ: ~512 samples (FIR filter latency)
30
+ * - Compressor / Limiter: ~64-256 samples (look-ahead)
31
+ * - De-esser: ~64 samples
32
+ * - Other effects / instruments / analyzers: 0
33
+ */
34
+ updateLatencyFromPlugin(): void;
35
+ /**
36
+ * Estimate the tail length (in frames / samples) based on plugin name and
37
+ * parameter state.
38
+ *
39
+ * - Reverb / convolution: 2-5 seconds, scaled by decay / wet parameters.
40
+ * - Delay: delay-time * estimated feedback-loop count.
41
+ * - Everything else: 0.
42
+ */
43
+ updateTailFromPlugin(): void;
44
+ /**
45
+ * Estimate reverb tail between 2 and 5 seconds.
46
+ * Uses 'decay' or 'time' parameters for the base, and 'wet' / 'mix' to
47
+ * scale down when the effect is barely audible.
48
+ */
49
+ private _estimateReverbTail;
50
+ /**
51
+ * Estimate delay tail based on delay-time and feedback.
52
+ *
53
+ * The effective tail is roughly `delayTime * loops` where loops is
54
+ * derived from the feedback amount: loops ≈ log(threshold) / log(feedback).
55
+ * We cap at a sensible maximum (10 s).
56
+ */
57
+ private _estimateDelayTail;
58
+ /**
59
+ * Dispose of internal subscriptions. Call when removing the insert from
60
+ * the processing chain.
61
+ */
62
+ dispose(): void;
8
63
  }
9
64
  //# sourceMappingURL=PluginInsert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PluginInsert.d.ts","sourceRoot":"","sources":["../../src/processing/PluginInsert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,qBAAa,YAAa,SAAQ,SAAS;IACvC,OAAO,CAAC,OAAO,CAAS;gBAEZ,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;IAK3C,IAAW,MAAM,IAAI,MAAM,CAE1B;IAGD,IAAW,MAAM,CAAC,KAAK,EAAE,OAAO,EAG/B;CACJ"}
1
+ {"version":3,"file":"PluginInsert.d.ts","sourceRoot":"","sources":["../../src/processing/PluginInsert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,MAAM,EAAe,MAAM,mBAAmB,CAAC;AAQxD;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,SAAS;IACvC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,sBAAsB,CAA0B;gBAE5C,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,MAA4B;IAkBrF,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,8EAA8E;IAC9E,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,IAAW,UAAU,CAAC,IAAI,EAAE,MAAM,EAOjC;IAGD,IAAW,MAAM,CAAC,KAAK,EAAE,OAAO,EAU/B;IAED,IAAW,MAAM,IAAI,OAAO,CAE3B;IAID;;;;;;;;;;OAUG;IACI,uBAAuB,IAAI,IAAI;IA4BtC;;;;;;;OAOG;IACI,oBAAoB,IAAI,IAAI;IAkBnC;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAiC1B;;;OAGG;IACI,OAAO,IAAI,IAAI;CAGzB"}