@libraz/libsonare 1.7.2 → 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 -203
  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 -5840
  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 -7431
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +3758 -1362
  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 -2515
  213. package/dist/worklet.d.ts.map +1 -0
  214. package/dist/worklet.js +2763 -501
  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 +282 -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 +61 -24
  255. package/src/project_class.ts +450 -27
  256. package/src/project_internal.ts +149 -42
  257. package/src/project_synth.ts +67 -1
  258. package/src/project_types.ts +268 -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 +711 -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 +1122 -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 +194 -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 +78 -26
  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 +272 -83
  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 +227 -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 +17 -0
  302. package/src/effects_transform.ts +0 -718
  303. package/src/mastering_repair.ts +0 -273
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature_resample.d.ts","sourceRoot":"","sources":["../src/feature_resample.ts"],"names":[],"mappings":"AAUA;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CAAC;AACjE,wBAAgB,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAAC"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * Frame-level spectral descriptors: the scalar shape measures taken per STFT
3
+ * frame, and the zero-crossing counts beside them.
4
+ */
5
+ import type { WasmMatrix2dResult } from './sonare.js';
6
+ /** Canonical request form for frame-based spectral feature extraction. */
7
+ export interface SpectralFrameRequest {
8
+ samples: Float32Array;
9
+ sampleRate?: number;
10
+ nFft?: number;
11
+ hopLength?: number;
12
+ }
13
+ export interface SpectralRolloffRequest extends SpectralFrameRequest {
14
+ rollPercent?: number;
15
+ }
16
+ export interface ZeroCrossingRateRequest {
17
+ samples: Float32Array;
18
+ sampleRate?: number;
19
+ frameLength?: number;
20
+ hopLength?: number;
21
+ }
22
+ export interface SpectralContrastRequest extends SpectralFrameRequest {
23
+ nBands?: number;
24
+ fmin?: number;
25
+ quantile?: number;
26
+ }
27
+ export interface PolyFeaturesRequest extends SpectralFrameRequest {
28
+ order?: number;
29
+ }
30
+ export interface ZeroCrossingsRequest {
31
+ samples: Float32Array;
32
+ threshold?: number;
33
+ refMagnitude?: boolean;
34
+ pad?: boolean;
35
+ zeroPos?: boolean;
36
+ }
37
+ /**
38
+ * Compute spectral centroid (center of mass of spectrum).
39
+ *
40
+ * @param samples - Audio samples (mono, float32)
41
+ * @param sampleRate - Sample rate in Hz (default: 22050)
42
+ * @param nFft - FFT size (default: 2048)
43
+ * @param hopLength - Hop length (default: 512)
44
+ * @returns Spectral centroid in Hz for each frame
45
+ */
46
+ export declare function spectralCentroid(request: SpectralFrameRequest): Float32Array;
47
+ export declare function spectralCentroid(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number): Float32Array;
48
+ /**
49
+ * Compute spectral contrast (librosa.feature.spectral_contrast).
50
+ *
51
+ * @remarks
52
+ * Band 0 spans `[0, fmin]`, so an `fmin` below one analysis bin
53
+ * (`sampleRate / nFft`) leaves it empty after the band trim. Row 0 is still
54
+ * finite, but comes from the other bands' extremes rather than from itself, and
55
+ * is neither level-invariant nor confined to the band. Keep `fmin` at or above
56
+ * one bin width for row 0 to mean anything — at the defaults (22050 Hz, 2048)
57
+ * one bin is 10.8 Hz, so only a small `nFft` or a tiny `fmin` reaches this.
58
+ *
59
+ * @returns Matrix2d of shape (nBands + 1) x nFrames.
60
+ */
61
+ export declare function spectralContrast(request: SpectralContrastRequest): WasmMatrix2dResult;
62
+ export declare function spectralContrast(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, nBands?: number, fmin?: number, quantile?: number): WasmMatrix2dResult;
63
+ /**
64
+ * Fit per-frame polynomial coefficients (librosa.feature.poly_features).
65
+ *
66
+ * @returns Matrix2d of shape (order + 1) x nFrames.
67
+ */
68
+ export declare function polyFeatures(request: PolyFeaturesRequest): WasmMatrix2dResult;
69
+ export declare function polyFeatures(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, order?: number): WasmMatrix2dResult;
70
+ /**
71
+ * Locate zero-crossing indices of a signal (librosa.zero_crossings).
72
+ */
73
+ export declare function zeroCrossings(request: ZeroCrossingsRequest): Int32Array;
74
+ export declare function zeroCrossings(samples: Float32Array, threshold?: number, refMagnitude?: boolean, pad?: boolean, zeroPos?: boolean): Int32Array;
75
+ /**
76
+ * Compute spectral bandwidth.
77
+ *
78
+ * @param samples - Audio samples (mono, float32)
79
+ * @param sampleRate - Sample rate in Hz (default: 22050)
80
+ * @param nFft - FFT size (default: 2048)
81
+ * @param hopLength - Hop length (default: 512)
82
+ * @returns Spectral bandwidth in Hz for each frame
83
+ */
84
+ export declare function spectralBandwidth(request: SpectralFrameRequest & {
85
+ p?: number;
86
+ }): Float32Array;
87
+ export declare function spectralBandwidth(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, p?: number): Float32Array;
88
+ /**
89
+ * Compute spectral rolloff frequency.
90
+ *
91
+ * @param samples - Audio samples (mono, float32)
92
+ * @param sampleRate - Sample rate in Hz (default: 22050)
93
+ * @param nFft - FFT size (default: 2048)
94
+ * @param hopLength - Hop length (default: 512)
95
+ * @param rollPercent - Percentage threshold (default: 0.85)
96
+ * @returns Rolloff frequency in Hz for each frame
97
+ */
98
+ export declare function spectralRolloff(request: SpectralRolloffRequest): Float32Array;
99
+ export declare function spectralRolloff(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, rollPercent?: number): Float32Array;
100
+ /**
101
+ * Compute spectral flatness.
102
+ *
103
+ * @param samples - Audio samples (mono, float32)
104
+ * @param sampleRate - Sample rate in Hz (default: 22050)
105
+ * @param nFft - FFT size (default: 2048)
106
+ * @param hopLength - Hop length (default: 512)
107
+ * @returns Spectral flatness for each frame (0 = tonal, 1 = noise-like)
108
+ */
109
+ export declare function spectralFlatness(request: SpectralFrameRequest): Float32Array;
110
+ export declare function spectralFlatness(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number): Float32Array;
111
+ export declare function spectralFlux(request: SpectralFrameRequest & {
112
+ lag?: number;
113
+ }): Float32Array;
114
+ export declare function spectralFlux(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, lag?: number): Float32Array;
115
+ /**
116
+ * Compute zero crossing rate.
117
+ *
118
+ * @param samples - Audio samples (mono, float32)
119
+ * @param sampleRate - Sample rate in Hz (default: 22050)
120
+ * @param frameLength - Frame length (default: 2048)
121
+ * @param hopLength - Hop length (default: 512)
122
+ * @returns Zero crossing rate for each frame
123
+ */
124
+ export declare function zeroCrossingRate(request: ZeroCrossingRateRequest): Float32Array;
125
+ export declare function zeroCrossingRate(samples: Float32Array, sampleRate?: number, frameLength?: number, hopLength?: number): Float32Array;
126
+ /**
127
+ * Compute RMS energy.
128
+ *
129
+ * @param samples - Audio samples (mono, float32)
130
+ * @param sampleRate - Sample rate in Hz (default: 22050)
131
+ * @param frameLength - Frame length (default: 2048)
132
+ * @param hopLength - Hop length (default: 512)
133
+ * @returns RMS energy for each frame
134
+ */
135
+ export declare function rmsEnergy(request: ZeroCrossingRateRequest): Float32Array;
136
+ export declare function rmsEnergy(samples: Float32Array, sampleRate?: number, frameLength?: number, hopLength?: number): Float32Array;
137
+ //# sourceMappingURL=feature_spectral.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature_spectral.d.ts","sourceRoot":"","sources":["../src/feature_spectral.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * Spectrogram and chroma representations, and the silence trim that shares
3
+ * their input checks.
4
+ */
5
+ import type { GuardedOptions } from './_feature_validation';
6
+ import type { ChromaResult, MelSpectrogramResult, MfccResult, ReassignedSpectrogramResult, StftResult } from './public_types';
7
+ /** Canonical request form for basic frame-based spectrogram features. */
8
+ export interface SpectrogramRequest extends GuardedOptions {
9
+ samples: Float32Array;
10
+ sampleRate?: number;
11
+ nFft?: number;
12
+ hopLength?: number;
13
+ }
14
+ /**
15
+ * Options for the constant-Q chroma variants.
16
+ *
17
+ * Carries no `nFft`: these are built on a constant-Q transform, which resolves
18
+ * frequency through per-bin filter lengths rather than a framed FFT, so there
19
+ * is no FFT size to set. Use `chroma` for the STFT-framed chromagram.
20
+ */
21
+ export interface ChromaSpectrogramRequest extends GuardedOptions {
22
+ samples: Float32Array;
23
+ sampleRate?: number;
24
+ hopLength?: number;
25
+ nChroma?: number;
26
+ binsPerOctave?: number;
27
+ }
28
+ /**
29
+ * Options for the bass-focused chroma.
30
+ *
31
+ * Unlike {@link ChromaSpectrogramRequest} this carries no `binsPerOctave`: the
32
+ * bass chroma fixes its bin count and its lowest frequency together, so the
33
+ * resolution is not independently settable through this entry point.
34
+ */
35
+ export interface BassChromaSpectrogramRequest extends GuardedOptions {
36
+ samples: Float32Array;
37
+ sampleRate?: number;
38
+ hopLength?: number;
39
+ nChroma?: number;
40
+ }
41
+ export interface MelSpectrogramRequest extends SpectrogramRequest {
42
+ nMels?: number;
43
+ fmin?: number;
44
+ fmax?: number;
45
+ htk?: boolean;
46
+ }
47
+ export interface MfccRequest extends MelSpectrogramRequest {
48
+ nMfcc?: number;
49
+ lifter?: number;
50
+ }
51
+ export interface MelDeltaRequest extends GuardedOptions {
52
+ features: Float32Array;
53
+ nFeatures: number;
54
+ nFrames: number;
55
+ width?: number;
56
+ }
57
+ export interface ReassignedSpectrogramRequest extends SpectrogramRequest {
58
+ refPower?: number;
59
+ fillNan?: boolean;
60
+ }
61
+ export interface TrimRequest extends GuardedOptions {
62
+ samples: Float32Array;
63
+ sampleRate: number;
64
+ thresholdDb?: number;
65
+ frameLength?: number;
66
+ hopLength?: number;
67
+ }
68
+ /**
69
+ * Trim silence from beginning and end of audio.
70
+ *
71
+ * @param samples - Audio samples (mono, float32)
72
+ * @param sampleRate - Sample rate in Hz
73
+ * @param thresholdDb - Silence threshold in dB (default: -60 dB)
74
+ * @returns Trimmed audio
75
+ */
76
+ export declare function trim(request: TrimRequest): Float32Array;
77
+ export declare function trim(samples: Float32Array, sampleRate: number, thresholdDb?: number, options?: GuardedOptions): Float32Array;
78
+ export declare function trim(samples: Float32Array, sampleRate: number, thresholdDb?: number, frameLength?: number, hopLength?: number, options?: GuardedOptions): Float32Array;
79
+ /**
80
+ * Compute Short-Time Fourier Transform (STFT).
81
+ *
82
+ * @param samples - Audio samples (mono, float32)
83
+ * @param sampleRate - Sample rate in Hz (default: 22050)
84
+ * @param nFft - FFT size (default: 2048)
85
+ * @param hopLength - Hop length (default: 512)
86
+ * @returns STFT result with magnitude and power spectrograms
87
+ */
88
+ export declare function stft(request: SpectrogramRequest): StftResult;
89
+ export declare function stft(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, options?: GuardedOptions): StftResult;
90
+ /**
91
+ * Compute STFT and return magnitude in decibels.
92
+ *
93
+ * @param samples - Audio samples (mono, float32)
94
+ * @param sampleRate - Sample rate in Hz (default: 22050)
95
+ * @param nFft - FFT size (default: 2048)
96
+ * @param hopLength - Hop length (default: 512)
97
+ * @returns STFT result with dB values
98
+ */
99
+ export declare function stftDb(request: SpectrogramRequest): {
100
+ nBins: number;
101
+ nFrames: number;
102
+ db: Float32Array;
103
+ };
104
+ export declare function stftDb(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, options?: GuardedOptions): {
105
+ nBins: number;
106
+ nFrames: number;
107
+ db: Float32Array;
108
+ };
109
+ /**
110
+ * Compute Chroma Energy Normalized Statistics.
111
+ *
112
+ * @param samples - Audio samples (mono, float32)
113
+ * @param sampleRate - Sample rate in Hz (default: 22050)
114
+ * @param hopLength - Hop length (default: 512)
115
+ * @param nChroma - Number of chroma bins (default: 12)
116
+ * @returns Chroma result
117
+ */
118
+ export declare function chromaCens(request: ChromaSpectrogramRequest): ChromaResult;
119
+ export declare function chromaCens(samples: Float32Array, sampleRate?: number, hopLength?: number, nChroma?: number, binsPerOctave?: number, options?: GuardedOptions): ChromaResult;
120
+ /**
121
+ * Compute a constant-Q chromagram (librosa.feature.chroma_cqt).
122
+ *
123
+ * @param samples - Audio samples (mono, float32)
124
+ * @param sampleRate - Sample rate in Hz (default: 22050)
125
+ * @param hopLength - Hop length (default: 512)
126
+ * @param nChroma - Number of chroma bins (default: 12)
127
+ * @returns Chroma result
128
+ */
129
+ export declare function chromaCqt(request: ChromaSpectrogramRequest): ChromaResult;
130
+ export declare function chromaCqt(samples: Float32Array, sampleRate?: number, hopLength?: number, nChroma?: number, binsPerOctave?: number, options?: GuardedOptions): ChromaResult;
131
+ /**
132
+ * Compute low-frequency bass chroma.
133
+ *
134
+ * @param samples - Audio samples (mono, float32)
135
+ * @param sampleRate - Sample rate in Hz (default: 22050)
136
+ * @param hopLength - Hop length (default: 512)
137
+ * @param nChroma - Number of chroma bins (default: 12)
138
+ * @returns Chroma result
139
+ */
140
+ export declare function bassChroma(request: BassChromaSpectrogramRequest): ChromaResult;
141
+ export declare function bassChroma(samples: Float32Array, sampleRate?: number, hopLength?: number, nChroma?: number, options?: GuardedOptions): ChromaResult;
142
+ /**
143
+ * Compute Mel spectrogram.
144
+ *
145
+ * @param samples - Audio samples (mono, float32)
146
+ * @param sampleRate - Sample rate in Hz (default: 22050)
147
+ * @param nFft - FFT size (default: 2048)
148
+ * @param hopLength - Hop length (default: 512)
149
+ * @param nMels - Number of Mel bands (default: 128)
150
+ * @param fmin - Minimum Mel frequency in Hz (default: 0 = librosa default).
151
+ * Set with `fmax` to round-trip with `melToStft` / `melToAudio`.
152
+ * @param fmax - Maximum Mel frequency in Hz (default: 0 = sampleRate / 2)
153
+ * @param htk - Use the HTK Mel formula instead of Slaney (default: false)
154
+ * @returns Mel spectrogram result
155
+ */
156
+ export declare function melSpectrogram(request: MelSpectrogramRequest): MelSpectrogramResult;
157
+ export declare function melSpectrogram(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, nMels?: number, fmin?: number, fmax?: number, htk?: boolean, options?: GuardedOptions): MelSpectrogramResult;
158
+ /**
159
+ * Compute MFCC (Mel-Frequency Cepstral Coefficients).
160
+ *
161
+ * @param samples - Audio samples (mono, float32)
162
+ * @param sampleRate - Sample rate in Hz (default: 22050)
163
+ * @param nFft - FFT size (default: 2048)
164
+ * @param hopLength - Hop length (default: 512)
165
+ * @param nMels - Number of Mel bands (default: 128)
166
+ * @param nMfcc - Number of MFCC coefficients (default: 20)
167
+ * @param fmin - Minimum Mel frequency in Hz (default: 0 = librosa default)
168
+ * @param fmax - Maximum Mel frequency in Hz (default: 0 = sampleRate / 2)
169
+ * @param htk - Use the HTK Mel formula instead of Slaney (default: false)
170
+ * @param lifter - Cepstral liftering coefficient (default: 0 = no liftering)
171
+ * @returns MFCC result
172
+ */
173
+ export declare function mfcc(request: MfccRequest): MfccResult;
174
+ export declare function mfcc(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, nMels?: number, nMfcc?: number, fmin?: number, fmax?: number, htk?: boolean, lifter?: number, options?: GuardedOptions): MfccResult;
175
+ /** First-order regression delta of a row-major feature matrix. */
176
+ export declare function melDelta(request: MelDeltaRequest): Float32Array;
177
+ export declare function melDelta(features: Float32Array, nFeatures: number, nFrames: number, width?: number): Float32Array;
178
+ /** Auger-Flandrin reassigned spectrogram (row-major [nBins x nFrames] arrays). */
179
+ export declare function reassignedSpectrogram(request: ReassignedSpectrogramRequest): ReassignedSpectrogramResult;
180
+ export declare function reassignedSpectrogram(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, refPower?: number, fillNan?: boolean): ReassignedSpectrogramResult;
181
+ /**
182
+ * Compute STFT chromagram (librosa.feature.chroma_stft).
183
+ *
184
+ * The chroma filterbank uses a fixed tuning of 0 (concert A440). Unlike
185
+ * librosa.feature.chroma_stft — which estimates tuning from the signal when none
186
+ * is given — this does NOT auto-estimate and takes no tuning argument. A
187
+ * tuning offset from {@link estimateTuning} is applied through `analyze`'s
188
+ * `tuning` option (and to chords through `detectChords`).
189
+ *
190
+ * @param samples - Audio samples (mono, float32)
191
+ * @param sampleRate - Sample rate in Hz (default: 22050)
192
+ * @param nFft - FFT size (default: 2048)
193
+ * @param hopLength - Hop length (default: 512)
194
+ * @returns Chroma features result
195
+ */
196
+ export declare function chroma(request: SpectrogramRequest): ChromaResult;
197
+ export declare function chroma(samples: Float32Array, sampleRate?: number, nFft?: number, hopLength?: number, options?: GuardedOptions): ChromaResult;
198
+ //# sourceMappingURL=feature_spectrogram.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature_spectrogram.d.ts","sourceRoot":"","sources":["../src/feature_spectrogram.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ export { amplitudeToDb, chirp, clicks, cyclicTempogram, dbToAmplitude, dbToPower, deemphasis, fixFrames, fixLength, frameSignal, framesToSamples, framesToTime, hzToMel, hzToMidi, hzToNote, melToHz, midiToHz, noteToHz, onsetBacktrack, padCenter, pcen, peakPick, plp, powerToDb, preemphasis, samplesToFrames, splitSilence, splitSilenceCommon, splitSilenceCommonWithReport, tempogram, timeToFrames, tone, tonnetz, trimSilence, vectorNormalize, } from './feature_core';
2
+ export { decompose, decomposeStems, decomposeStemsLinked, decomposeWithInit, hpssWithResidual, nnFilter, remix, remixAlignedIntervals, segmentAgglomerative, segmentCrossSimilarity, segmentLagToRecurrence, segmentPathEnhance, segmentRecurrenceMatrix, segmentRecurrenceToLag, segmentSubsegment, } from './feature_decompose';
3
+ export { griffinLim, melToAudio, melToStft, mfccToAudio, mfccToMel, phaseVocoder, } from './feature_inverse';
4
+ export { ebur128LoudnessRange, lufsInterleaved, lufsSeriesInterleaved } from './feature_loudness';
5
+ export { analyzeMelody, analyzeSections, cqt, cqtToAudio, detectBoundaries, fourierTempogram, hybridCqt, lufs, momentaryLufs, nnlsChroma, onsetEnvelope, onsetStrengthMulti, pseudoCqt, shortTermLufs, tempogramRatio, vqt, vqtToAudio, } from './feature_music';
6
+ export { estimateTuning, noteSegments, piptrack, pitchPyin, pitchTuning, pitchYin, } from './feature_pitch';
7
+ export { resample } from './feature_resample';
8
+ export { polyFeatures, rmsEnergy, spectralBandwidth, spectralCentroid, spectralContrast, spectralFlatness, spectralFlux, spectralRolloff, zeroCrossingRate, zeroCrossings, } from './feature_spectral';
9
+ export { bassChroma, chroma, chromaCens, chromaCqt, melDelta, melSpectrogram, mfcc, reassignedSpectrogram, stft, stftDb, trim, } from './feature_spectrogram';
10
+ //# sourceMappingURL=features.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../src/features.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,KAAK,EACL,MAAM,EACN,eAAe,EACf,aAAa,EACb,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,WAAW,EACX,eAAe,EACf,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,SAAS,EACT,WAAW,EACX,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,4BAA4B,EAC5B,SAAS,EACT,YAAY,EACZ,IAAI,EACJ,OAAO,EACP,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,SAAS,EACT,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EACR,KAAK,EACL,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,YAAY,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EACL,aAAa,EACb,eAAe,EACf,GAAG,EACH,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,IAAI,EACJ,aAAa,EACb,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,SAAS,EACT,aAAa,EACb,cAAc,EACd,GAAG,EACH,UAAU,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,WAAW,EACX,QAAQ,GACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,UAAU,EACV,MAAM,EACN,UAAU,EACV,SAAS,EACT,QAAQ,EACR,cAAc,EACd,IAAI,EACJ,qBAAqB,EACrB,IAAI,EACJ,MAAM,EACN,IAAI,GACL,MAAM,uBAAuB,CAAC"}
Binary file