@libraz/libsonare 1.7.1 → 1.8.0

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 (303) hide show
  1. package/NOTICE +178 -0
  2. package/README.md +26 -170
  3. package/dist/_chain_config.d.ts +14 -0
  4. package/dist/_chain_config.d.ts.map +1 -0
  5. package/dist/_effects_common.d.ts +6 -0
  6. package/dist/_effects_common.d.ts.map +1 -0
  7. package/dist/_feature_validation.d.ts +8 -0
  8. package/dist/_feature_validation.d.ts.map +1 -0
  9. package/dist/_fft_options.d.ts +24 -0
  10. package/dist/_fft_options.d.ts.map +1 -0
  11. package/dist/align_take.d.ts +50 -0
  12. package/dist/align_take.d.ts.map +1 -0
  13. package/dist/analysis.d.ts +29 -5837
  14. package/dist/analysis.d.ts.map +1 -0
  15. package/dist/analysis.js +873 -722
  16. package/dist/analysis.js.map +1 -1
  17. package/dist/analysis_helpers.d.ts +9 -0
  18. package/dist/analysis_helpers.d.ts.map +1 -0
  19. package/dist/audio.d.ts +163 -0
  20. package/dist/audio.d.ts.map +1 -0
  21. package/dist/clip_page_streamer.d.ts +133 -0
  22. package/dist/clip_page_streamer.d.ts.map +1 -0
  23. package/dist/codes.d.ts +44 -0
  24. package/dist/codes.d.ts.map +1 -0
  25. package/dist/effects_mastering.d.ts +23 -0
  26. package/dist/effects_mastering.d.ts.map +1 -0
  27. package/dist/effects_note_ops.d.ts +477 -0
  28. package/dist/effects_note_ops.d.ts.map +1 -0
  29. package/dist/effects_percussive.d.ts +185 -0
  30. package/dist/effects_percussive.d.ts.map +1 -0
  31. package/dist/effects_separation.d.ts +65 -0
  32. package/dist/effects_separation.d.ts.map +1 -0
  33. package/dist/effects_spectral.d.ts +28 -0
  34. package/dist/effects_spectral.d.ts.map +1 -0
  35. package/dist/effects_timepitch.d.ts +129 -0
  36. package/dist/effects_timepitch.d.ts.map +1 -0
  37. package/dist/effects_voice_change.d.ts +53 -0
  38. package/dist/effects_voice_change.d.ts.map +1 -0
  39. package/dist/errors.d.ts +51 -0
  40. package/dist/errors.d.ts.map +1 -0
  41. package/dist/feature_core.d.ts +341 -0
  42. package/dist/feature_core.d.ts.map +1 -0
  43. package/dist/feature_decompose.d.ts +278 -0
  44. package/dist/feature_decompose.d.ts.map +1 -0
  45. package/dist/feature_inverse.d.ts +128 -0
  46. package/dist/feature_inverse.d.ts.map +1 -0
  47. package/dist/feature_loudness.d.ts +66 -0
  48. package/dist/feature_loudness.d.ts.map +1 -0
  49. package/dist/feature_music.d.ts +307 -0
  50. package/dist/feature_music.d.ts.map +1 -0
  51. package/dist/feature_pitch.d.ts +108 -0
  52. package/dist/feature_pitch.d.ts.map +1 -0
  53. package/dist/feature_resample.d.ts +16 -0
  54. package/dist/feature_resample.d.ts.map +1 -0
  55. package/dist/feature_spectral.d.ts +137 -0
  56. package/dist/feature_spectral.d.ts.map +1 -0
  57. package/dist/feature_spectrogram.d.ts +198 -0
  58. package/dist/feature_spectrogram.d.ts.map +1 -0
  59. package/dist/features.d.ts +10 -0
  60. package/dist/features.d.ts.map +1 -0
  61. package/dist/hrtf/default.shrf +0 -0
  62. package/dist/index.d.ts +74 -7329
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +3816 -1359
  65. package/dist/index.js.map +1 -1
  66. package/dist/instrument_types.d.ts +517 -0
  67. package/dist/instrument_types.d.ts.map +1 -0
  68. package/dist/live_audio.d.ts +35 -0
  69. package/dist/live_audio.d.ts.map +1 -0
  70. package/dist/mastering_chain.d.ts +213 -0
  71. package/dist/mastering_chain.d.ts.map +1 -0
  72. package/dist/mastering_core.d.ts +457 -0
  73. package/dist/mastering_core.d.ts.map +1 -0
  74. package/dist/mastering_dynamics.d.ts +80 -0
  75. package/dist/mastering_dynamics.d.ts.map +1 -0
  76. package/dist/metering.d.ts +287 -0
  77. package/dist/metering.d.ts.map +1 -0
  78. package/dist/mixer.d.ts +464 -0
  79. package/dist/mixer.d.ts.map +1 -0
  80. package/dist/mixing_assistant.d.ts +62 -0
  81. package/dist/mixing_assistant.d.ts.map +1 -0
  82. package/dist/mixing_oneshot.d.ts +40 -0
  83. package/dist/mixing_oneshot.d.ts.map +1 -0
  84. package/dist/module_state.d.ts +15 -0
  85. package/dist/module_state.d.ts.map +1 -0
  86. package/dist/opfs_clip_pages.d.ts +28 -0
  87. package/dist/opfs_clip_pages.d.ts.map +1 -0
  88. package/dist/playback_renderer.d.ts +128 -0
  89. package/dist/playback_renderer.d.ts.map +1 -0
  90. package/dist/polyphony.d.ts +202 -0
  91. package/dist/polyphony.d.ts.map +1 -0
  92. package/dist/project.d.ts +8 -0
  93. package/dist/project.d.ts.map +1 -0
  94. package/dist/project_class.d.ts +562 -0
  95. package/dist/project_class.d.ts.map +1 -0
  96. package/dist/project_internal.d.ts +194 -0
  97. package/dist/project_internal.d.ts.map +1 -0
  98. package/dist/project_synth.d.ts +74 -0
  99. package/dist/project_synth.d.ts.map +1 -0
  100. package/dist/project_types.d.ts +652 -0
  101. package/dist/project_types.d.ts.map +1 -0
  102. package/dist/public_types.d.ts +185 -0
  103. package/dist/public_types.d.ts.map +1 -0
  104. package/dist/public_types_acoustic.d.ts +215 -0
  105. package/dist/public_types_acoustic.d.ts.map +1 -0
  106. package/dist/public_types_mastering.d.ts +510 -0
  107. package/dist/public_types_mastering.d.ts.map +1 -0
  108. package/dist/public_types_mixing.d.ts +436 -0
  109. package/dist/public_types_mixing.d.ts.map +1 -0
  110. package/dist/public_types_music.d.ts +619 -0
  111. package/dist/public_types_music.d.ts.map +1 -0
  112. package/dist/public_types_playback.d.ts +164 -0
  113. package/dist/public_types_playback.d.ts.map +1 -0
  114. package/dist/public_types_realtime.d.ts +174 -0
  115. package/dist/public_types_realtime.d.ts.map +1 -0
  116. package/dist/public_types_repair.d.ts +424 -0
  117. package/dist/public_types_repair.d.ts.map +1 -0
  118. package/dist/public_types_spectral.d.ts +697 -0
  119. package/dist/public_types_spectral.d.ts.map +1 -0
  120. package/dist/quick_analysis.d.ts +445 -0
  121. package/dist/quick_analysis.d.ts.map +1 -0
  122. package/dist/realtime_engine.d.ts +850 -0
  123. package/dist/realtime_engine.d.ts.map +1 -0
  124. package/dist/realtime_voice_changer.d.ts +158 -0
  125. package/dist/realtime_voice_changer.d.ts.map +1 -0
  126. package/dist/repair_dereverb.d.ts +187 -0
  127. package/dist/repair_dereverb.d.ts.map +1 -0
  128. package/dist/repair_impulsive.d.ts +186 -0
  129. package/dist/repair_impulsive.d.ts.map +1 -0
  130. package/dist/repair_noise.d.ts +239 -0
  131. package/dist/repair_noise.d.ts.map +1 -0
  132. package/dist/repair_trim.d.ts +123 -0
  133. package/dist/repair_trim.d.ts.map +1 -0
  134. package/dist/sample_bank.d.ts +84 -0
  135. package/dist/sample_bank.d.ts.map +1 -0
  136. package/dist/scale.d.ts +10 -0
  137. package/dist/scale.d.ts.map +1 -0
  138. package/dist/schemas/mixer-scene.schema.json +393 -0
  139. package/dist/schemas/playback-renderer-config.schema.json +392 -0
  140. package/dist/sonare-analysis.d.ts +8 -0
  141. package/dist/sonare-analysis.js +2 -2
  142. package/dist/sonare-analysis.wasm +0 -0
  143. package/dist/sonare.d.ts +3909 -0
  144. package/dist/sonare.js +2 -2
  145. package/dist/sonare.wasm +0 -0
  146. package/dist/stream_analyzer.d.ts +163 -0
  147. package/dist/stream_analyzer.d.ts.map +1 -0
  148. package/dist/stream_types.d.ts +214 -0
  149. package/dist/stream_types.d.ts.map +1 -0
  150. package/dist/streaming_mixing.d.ts +6 -0
  151. package/dist/streaming_mixing.d.ts.map +1 -0
  152. package/dist/streaming_processors.d.ts +335 -0
  153. package/dist/streaming_processors.d.ts.map +1 -0
  154. package/dist/transcribe.d.ts +77 -0
  155. package/dist/transcribe.d.ts.map +1 -0
  156. package/dist/validation.d.ts +140 -0
  157. package/dist/validation.d.ts.map +1 -0
  158. package/dist/web_midi.d.ts +77 -0
  159. package/dist/web_midi.d.ts.map +1 -0
  160. package/dist/worker.d.ts +5 -48
  161. package/dist/worker.d.ts.map +1 -0
  162. package/dist/worker.js +94 -41
  163. package/dist/worker.js.map +1 -1
  164. package/dist/worker_client.d.ts +96 -0
  165. package/dist/worker_client.d.ts.map +1 -0
  166. package/dist/worker_protocol.d.ts +43 -0
  167. package/dist/worker_protocol.d.ts.map +1 -0
  168. package/dist/worklet/audio_types.d.ts +21 -0
  169. package/dist/worklet/audio_types.d.ts.map +1 -0
  170. package/dist/worklet/engine-automation.d.ts +29 -0
  171. package/dist/worklet/engine-automation.d.ts.map +1 -0
  172. package/dist/worklet/engine-capture-facade.d.ts +35 -0
  173. package/dist/worklet/engine-capture-facade.d.ts.map +1 -0
  174. package/dist/worklet/engine-clips.d.ts +23 -0
  175. package/dist/worklet/engine-clips.d.ts.map +1 -0
  176. package/dist/worklet/engine-markers.d.ts +40 -0
  177. package/dist/worklet/engine-markers.d.ts.map +1 -0
  178. package/dist/worklet/engine-mixer-facade.d.ts +128 -0
  179. package/dist/worklet/engine-mixer-facade.d.ts.map +1 -0
  180. package/dist/worklet/engine-node.d.ts +81 -0
  181. package/dist/worklet/engine-node.d.ts.map +1 -0
  182. package/dist/worklet/engine-offline.d.ts +81 -0
  183. package/dist/worklet/engine-offline.d.ts.map +1 -0
  184. package/dist/worklet/engine-options.d.ts +12 -0
  185. package/dist/worklet/engine-options.d.ts.map +1 -0
  186. package/dist/worklet/engine-parameter-facade.d.ts +106 -0
  187. package/dist/worklet/engine-parameter-facade.d.ts.map +1 -0
  188. package/dist/worklet/engine-processor.d.ts +68 -0
  189. package/dist/worklet/engine-processor.d.ts.map +1 -0
  190. package/dist/worklet/engine-register.d.ts +2 -0
  191. package/dist/worklet/engine-register.d.ts.map +1 -0
  192. package/dist/worklet/engine-strips.d.ts +73 -0
  193. package/dist/worklet/engine-strips.d.ts.map +1 -0
  194. package/dist/worklet/engine-sync.d.ts +37 -0
  195. package/dist/worklet/engine-sync.d.ts.map +1 -0
  196. package/dist/worklet/engine-tempo-facade.d.ts +48 -0
  197. package/dist/worklet/engine-tempo-facade.d.ts.map +1 -0
  198. package/dist/worklet/engine.d.ts +397 -0
  199. package/dist/worklet/engine.d.ts.map +1 -0
  200. package/dist/worklet/guards.d.ts +47 -0
  201. package/dist/worklet/guards.d.ts.map +1 -0
  202. package/dist/worklet/messages.d.ts +710 -0
  203. package/dist/worklet/messages.d.ts.map +1 -0
  204. package/dist/worklet/mixer-processor.d.ts +46 -0
  205. package/dist/worklet/mixer-processor.d.ts.map +1 -0
  206. package/dist/worklet/playback-processor.d.ts +62 -0
  207. package/dist/worklet/playback-processor.d.ts.map +1 -0
  208. package/dist/worklet/protocol.d.ts +323 -0
  209. package/dist/worklet/protocol.d.ts.map +1 -0
  210. package/dist/worklet/voice-changer-processor.d.ts +41 -0
  211. package/dist/worklet/voice-changer-processor.d.ts.map +1 -0
  212. package/dist/worklet.d.ts +16 -2142
  213. package/dist/worklet.d.ts.map +1 -0
  214. package/dist/worklet.js +2889 -466
  215. package/dist/worklet.js.map +1 -1
  216. package/package.json +23 -12
  217. package/src/_effects_common.ts +17 -0
  218. package/src/_feature_validation.ts +34 -0
  219. package/src/_fft_options.ts +39 -0
  220. package/src/align_take.ts +64 -0
  221. package/src/analysis.ts +56 -3
  222. package/src/analysis_helpers.ts +7 -0
  223. package/src/audio.ts +106 -3
  224. package/src/codes.ts +39 -2
  225. package/src/effects_mastering.ts +97 -22
  226. package/src/effects_note_ops.ts +635 -0
  227. package/src/effects_percussive.ts +217 -0
  228. package/src/effects_separation.ts +150 -0
  229. package/src/effects_spectral.ts +60 -0
  230. package/src/effects_timepitch.ts +377 -0
  231. package/src/errors.ts +23 -1
  232. package/src/feature_core.ts +127 -2
  233. package/src/feature_decompose.ts +633 -0
  234. package/src/feature_inverse.ts +454 -0
  235. package/src/feature_loudness.ts +125 -0
  236. package/src/feature_music.ts +107 -14
  237. package/src/feature_pitch.ts +96 -1
  238. package/src/feature_spectral.ts +16 -611
  239. package/src/feature_spectrogram.ts +63 -450
  240. package/src/features.ts +36 -22
  241. package/src/index.ts +285 -30
  242. package/src/instrument_types.ts +645 -0
  243. package/src/live_audio.ts +27 -1
  244. package/src/mastering_chain.ts +184 -0
  245. package/src/mastering_core.ts +346 -32
  246. package/src/mastering_dynamics.ts +22 -11
  247. package/src/metering.ts +67 -24
  248. package/src/mixer.ts +212 -3
  249. package/src/mixing_assistant.ts +138 -0
  250. package/src/mixing_oneshot.ts +10 -5
  251. package/src/module_state.ts +24 -2
  252. package/src/playback_renderer.ts +252 -0
  253. package/src/polyphony.ts +279 -0
  254. package/src/project.ts +64 -24
  255. package/src/project_class.ts +502 -29
  256. package/src/project_internal.ts +151 -42
  257. package/src/project_synth.ts +67 -1
  258. package/src/project_types.ts +302 -270
  259. package/src/public_types.ts +122 -3
  260. package/src/public_types_acoustic.ts +112 -3
  261. package/src/public_types_mastering.ts +254 -73
  262. package/src/public_types_mixing.ts +363 -1
  263. package/src/public_types_music.ts +312 -2
  264. package/src/public_types_playback.ts +195 -0
  265. package/src/public_types_realtime.ts +39 -7
  266. package/src/public_types_repair.ts +446 -0
  267. package/src/public_types_spectral.ts +487 -1
  268. package/src/quick_analysis.ts +203 -26
  269. package/src/realtime_engine.ts +750 -28
  270. package/src/realtime_voice_changer.ts +55 -1
  271. package/src/repair_dereverb.ts +299 -0
  272. package/src/repair_impulsive.ts +395 -0
  273. package/src/repair_noise.ts +425 -0
  274. package/src/repair_trim.ts +226 -0
  275. package/src/sample_bank.ts +113 -0
  276. package/src/sonare.js.d.ts +1125 -30
  277. package/src/stream_analyzer.ts +36 -4
  278. package/src/stream_types.ts +37 -0
  279. package/src/streaming_mixing.ts +1 -1
  280. package/src/streaming_processors.ts +212 -10
  281. package/src/transcribe.ts +89 -0
  282. package/src/validation.ts +285 -11
  283. package/src/web_midi.ts +1 -6
  284. package/src/worker.ts +18 -2
  285. package/src/worklet/audio_types.ts +37 -0
  286. package/src/worklet/engine-mixer-facade.ts +444 -10
  287. package/src/worklet/engine-node.ts +85 -28
  288. package/src/worklet/engine-offline.ts +14 -8
  289. package/src/worklet/engine-parameter-facade.ts +21 -0
  290. package/src/worklet/engine-processor.ts +307 -71
  291. package/src/worklet/engine-register.ts +32 -18
  292. package/src/worklet/engine-strips.ts +280 -9
  293. package/src/worklet/engine-sync.ts +14 -6
  294. package/src/worklet/engine.ts +365 -31
  295. package/src/worklet/guards.ts +140 -44
  296. package/src/worklet/messages.ts +239 -2
  297. package/src/worklet/mixer-processor.ts +109 -47
  298. package/src/worklet/playback-processor.ts +300 -0
  299. package/src/worklet/protocol.ts +53 -3
  300. package/src/worklet/voice-changer-processor.ts +17 -11
  301. package/src/worklet.ts +22 -0
  302. package/src/effects_transform.ts +0 -718
  303. package/src/mastering_repair.ts +0 -273
@@ -1,273 +0,0 @@
1
- import { getSonareModule } from './module_state';
2
-
3
- function requireModule() {
4
- return getSonareModule();
5
- }
6
-
7
- // ============================================================================
8
- // Mastering repair (declick, denoise_classical, declip, decrackle, dehum,
9
- // dereverb_classical, trim_silence) — hand-written bindings.
10
- // ============================================================================
11
-
12
- /** Options for `masteringRepairDeclick`. */
13
- export interface DeclickOptions {
14
- threshold?: number;
15
- neighborRatio?: number;
16
- maxClickSamples?: number;
17
- lpcOrder?: number;
18
- residualRatio?: number;
19
- }
20
- export interface MasteringRepairDeclickRequest extends DeclickOptions {
21
- samples: Float32Array;
22
- sampleRate: number;
23
- }
24
-
25
- /** Algorithms accepted by `masteringRepairDenoiseClassical`. */
26
- export type DenoiseClassicalMode = 'logMmse' | 'mmseStsa' | 'spectralSubtraction';
27
-
28
- /** Noise PSD estimators accepted by `masteringRepairDenoiseClassical`. */
29
- export type DenoiseClassicalNoiseEstimator = 'quantile' | 'mcra' | 'imcra';
30
-
31
- /** Options for `masteringRepairDenoiseClassical`. */
32
- export interface DenoiseClassicalOptions {
33
- mode?: DenoiseClassicalMode;
34
- noiseEstimator?: DenoiseClassicalNoiseEstimator;
35
- nFft?: number;
36
- hopLength?: number;
37
- ddAlpha?: number;
38
- gainFloor?: number;
39
- overSubtraction?: number;
40
- spectralFloor?: number;
41
- noiseEstimationQuantile?: number;
42
- speechPresenceGain?: boolean;
43
- gainSmoothing?: boolean;
44
- }
45
- export interface MasteringRepairDenoiseClassicalRequest extends DenoiseClassicalOptions {
46
- samples: Float32Array;
47
- sampleRate: number;
48
- }
49
-
50
- /** Offline LPC-based declicker. */
51
- export function masteringRepairDeclick(request: MasteringRepairDeclickRequest): Float32Array;
52
- export function masteringRepairDeclick(
53
- samples: Float32Array,
54
- sampleRate: number,
55
- options?: DeclickOptions,
56
- ): Float32Array;
57
- export function masteringRepairDeclick(
58
- samples: Float32Array | MasteringRepairDeclickRequest,
59
- sampleRate?: number,
60
- options: DeclickOptions = {},
61
- ): Float32Array {
62
- const request =
63
- samples instanceof Float32Array
64
- ? { samples, sampleRate: sampleRate as number, ...options }
65
- : samples;
66
- return requireModule().masteringRepairDeclick(request.samples, request.sampleRate, request);
67
- }
68
-
69
- /** Offline STFT-domain classical denoiser (LogMMSE / MMSE-STSA / SpectralSubtraction). */
70
- export function masteringRepairDenoiseClassical(
71
- request: MasteringRepairDenoiseClassicalRequest,
72
- ): Float32Array;
73
- export function masteringRepairDenoiseClassical(
74
- samples: Float32Array,
75
- sampleRate: number,
76
- options?: DenoiseClassicalOptions,
77
- ): Float32Array;
78
- export function masteringRepairDenoiseClassical(
79
- samples: Float32Array | MasteringRepairDenoiseClassicalRequest,
80
- sampleRate?: number,
81
- options: DenoiseClassicalOptions = {},
82
- ): Float32Array {
83
- const request =
84
- samples instanceof Float32Array
85
- ? { samples, sampleRate: sampleRate as number, ...options }
86
- : samples;
87
- return requireModule().masteringRepairDenoiseClassical(
88
- request.samples,
89
- request.sampleRate,
90
- request,
91
- );
92
- }
93
-
94
- /** Options for `masteringRepairDeclip`. */
95
- export interface DeclipOptions {
96
- clipThreshold?: number;
97
- lpcOrder?: number;
98
- iterations?: number;
99
- lpcBlend?: number;
100
- }
101
- export interface MasteringRepairDeclipRequest extends DeclipOptions {
102
- samples: Float32Array;
103
- sampleRate: number;
104
- }
105
-
106
- /** Algorithms accepted by `masteringRepairDecrackle`. */
107
- export type DecrackleMode = 'median' | 'waveletShrinkage';
108
-
109
- /** Options for `masteringRepairDecrackle`. */
110
- export interface DecrackleOptions {
111
- threshold?: number;
112
- mode?: DecrackleMode;
113
- levels?: number;
114
- }
115
- export interface MasteringRepairDecrackleRequest extends DecrackleOptions {
116
- samples: Float32Array;
117
- sampleRate: number;
118
- }
119
-
120
- /** Options for `masteringRepairDehum`. */
121
- export interface DehumOptions {
122
- fundamentalHz?: number;
123
- harmonics?: number;
124
- q?: number;
125
- adaptive?: boolean;
126
- searchRangeHz?: number;
127
- adaptation?: number;
128
- frameSize?: number;
129
- pllBandwidth?: number;
130
- }
131
- export interface MasteringRepairDehumRequest extends DehumOptions {
132
- samples: Float32Array;
133
- sampleRate: number;
134
- }
135
-
136
- /** Options for `masteringRepairDereverbClassical`. */
137
- export interface DereverbClassicalOptions {
138
- threshold?: number;
139
- attenuation?: number;
140
- nFft?: number;
141
- hopLength?: number;
142
- t60Sec?: number;
143
- lateDelayMs?: number;
144
- overSubtraction?: number;
145
- spectralFloor?: number;
146
- wpeEnabled?: boolean;
147
- wpeIterations?: number;
148
- wpeTaps?: number;
149
- wpeStrength?: number;
150
- }
151
- export interface MasteringRepairDereverbClassicalRequest extends DereverbClassicalOptions {
152
- samples: Float32Array;
153
- sampleRate: number;
154
- }
155
-
156
- /** Trimming modes accepted by `masteringRepairTrimSilence`. */
157
- export type TrimSilenceMode = 'peak' | 'lufsGated';
158
-
159
- /** Options for `masteringRepairTrimSilence`. */
160
- export interface TrimSilenceOptions {
161
- threshold?: number;
162
- paddingSamples?: number;
163
- mode?: TrimSilenceMode;
164
- gateLufs?: number;
165
- windowMs?: number;
166
- }
167
- export interface MasteringRepairTrimSilenceRequest extends TrimSilenceOptions {
168
- samples: Float32Array;
169
- sampleRate: number;
170
- }
171
-
172
- /** Offline LPC-based declipper. */
173
- export function masteringRepairDeclip(request: MasteringRepairDeclipRequest): Float32Array;
174
- export function masteringRepairDeclip(
175
- samples: Float32Array,
176
- sampleRate: number,
177
- options?: DeclipOptions,
178
- ): Float32Array;
179
- export function masteringRepairDeclip(
180
- samples: Float32Array | MasteringRepairDeclipRequest,
181
- sampleRate?: number,
182
- options: DeclipOptions = {},
183
- ): Float32Array {
184
- const request =
185
- samples instanceof Float32Array
186
- ? { samples, sampleRate: sampleRate as number, ...options }
187
- : samples;
188
- return requireModule().masteringRepairDeclip(request.samples, request.sampleRate, request);
189
- }
190
-
191
- /** Offline crackle suppressor (median or wavelet-shrinkage). */
192
- export function masteringRepairDecrackle(request: MasteringRepairDecrackleRequest): Float32Array;
193
- export function masteringRepairDecrackle(
194
- samples: Float32Array,
195
- sampleRate: number,
196
- options?: DecrackleOptions,
197
- ): Float32Array;
198
- export function masteringRepairDecrackle(
199
- samples: Float32Array | MasteringRepairDecrackleRequest,
200
- sampleRate?: number,
201
- options: DecrackleOptions = {},
202
- ): Float32Array {
203
- const request =
204
- samples instanceof Float32Array
205
- ? { samples, sampleRate: sampleRate as number, ...options }
206
- : samples;
207
- return requireModule().masteringRepairDecrackle(request.samples, request.sampleRate, request);
208
- }
209
-
210
- /** Offline mains-hum remover. */
211
- export function masteringRepairDehum(request: MasteringRepairDehumRequest): Float32Array;
212
- export function masteringRepairDehum(
213
- samples: Float32Array,
214
- sampleRate: number,
215
- options?: DehumOptions,
216
- ): Float32Array;
217
- export function masteringRepairDehum(
218
- samples: Float32Array | MasteringRepairDehumRequest,
219
- sampleRate?: number,
220
- options: DehumOptions = {},
221
- ): Float32Array {
222
- const request =
223
- samples instanceof Float32Array
224
- ? { samples, sampleRate: sampleRate as number, ...options }
225
- : samples;
226
- return requireModule().masteringRepairDehum(request.samples, request.sampleRate, request);
227
- }
228
-
229
- /** Offline classical dereverberator (spectral subtraction + optional WPE). */
230
- export function masteringRepairDereverbClassical(
231
- request: MasteringRepairDereverbClassicalRequest,
232
- ): Float32Array;
233
- export function masteringRepairDereverbClassical(
234
- samples: Float32Array,
235
- sampleRate: number,
236
- options?: DereverbClassicalOptions,
237
- ): Float32Array;
238
- export function masteringRepairDereverbClassical(
239
- samples: Float32Array | MasteringRepairDereverbClassicalRequest,
240
- sampleRate?: number,
241
- options: DereverbClassicalOptions = {},
242
- ): Float32Array {
243
- const request =
244
- samples instanceof Float32Array
245
- ? { samples, sampleRate: sampleRate as number, ...options }
246
- : samples;
247
- return requireModule().masteringRepairDereverbClassical(
248
- request.samples,
249
- request.sampleRate,
250
- request,
251
- );
252
- }
253
-
254
- /** Offline silence trimmer (peak threshold or LUFS-gated). */
255
- export function masteringRepairTrimSilence(
256
- request: MasteringRepairTrimSilenceRequest,
257
- ): Float32Array;
258
- export function masteringRepairTrimSilence(
259
- samples: Float32Array,
260
- sampleRate: number,
261
- options?: TrimSilenceOptions,
262
- ): Float32Array;
263
- export function masteringRepairTrimSilence(
264
- samples: Float32Array | MasteringRepairTrimSilenceRequest,
265
- sampleRate?: number,
266
- options: TrimSilenceOptions = {},
267
- ): Float32Array {
268
- const request =
269
- samples instanceof Float32Array
270
- ? { samples, sampleRate: sampleRate as number, ...options }
271
- : samples;
272
- return requireModule().masteringRepairTrimSilence(request.samples, request.sampleRate, request);
273
- }