@nice2dev/ui-audio 0.1.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 (401) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/LICENSE +21 -0
  3. package/README.md +175 -0
  4. package/dist/assets/pitchWorker-BgAp5Z97.js +1 -0
  5. package/dist/assets/scoringWorker-B1PkYu_m.js +1 -0
  6. package/dist/config/noteSoundSets.d.ts +29 -0
  7. package/dist/config/noteSoundSets.d.ts.map +1 -0
  8. package/dist/constants/audioColors.d.ts +2 -0
  9. package/dist/constants/audioColors.d.ts.map +1 -0
  10. package/dist/constants/debugKaraoke.d.ts +20 -0
  11. package/dist/constants/debugKaraoke.d.ts.map +1 -0
  12. package/dist/constants/karaokeScoringConfig.d.ts +18 -0
  13. package/dist/constants/karaokeScoringConfig.d.ts.map +1 -0
  14. package/dist/constants/playerColors.d.ts +5 -0
  15. package/dist/constants/playerColors.d.ts.map +1 -0
  16. package/dist/constants/ui.d.ts +3 -0
  17. package/dist/constants/ui.d.ts.map +1 -0
  18. package/dist/core/i18n.d.ts +11 -0
  19. package/dist/core/i18n.d.ts.map +1 -0
  20. package/dist/dmx/DmxChannelControls.d.ts +14 -0
  21. package/dist/dmx/DmxChannelControls.d.ts.map +1 -0
  22. package/dist/dmx/DmxEditor.d.ts +13 -0
  23. package/dist/dmx/DmxEditor.d.ts.map +1 -0
  24. package/dist/dmx/dmxService.d.ts +20 -0
  25. package/dist/dmx/dmxService.d.ts.map +1 -0
  26. package/dist/editor/AudioClipBox.d.ts +9 -0
  27. package/dist/editor/AudioClipBox.d.ts.map +1 -0
  28. package/dist/editor/AudioClipInfo.d.ts +7 -0
  29. package/dist/editor/AudioClipInfo.d.ts.map +1 -0
  30. package/dist/editor/AudioEditorPianoRoll.d.ts +20 -0
  31. package/dist/editor/AudioEditorPianoRoll.d.ts.map +1 -0
  32. package/dist/editor/AudioEditorPianoRollContainer.d.ts +20 -0
  33. package/dist/editor/AudioEditorPianoRollContainer.d.ts.map +1 -0
  34. package/dist/editor/AudioLayerDetails.d.ts +10 -0
  35. package/dist/editor/AudioLayerDetails.d.ts.map +1 -0
  36. package/dist/editor/AudioLayerDetailsContainer.d.ts +10 -0
  37. package/dist/editor/AudioLayerDetailsContainer.d.ts.map +1 -0
  38. package/dist/editor/AudioLayersNavContainer.d.ts +9 -0
  39. package/dist/editor/AudioLayersNavContainer.d.ts.map +1 -0
  40. package/dist/editor/AudioMiniMap.d.ts +11 -0
  41. package/dist/editor/AudioMiniMap.d.ts.map +1 -0
  42. package/dist/editor/AudioMiniMapContainer.d.ts +10 -0
  43. package/dist/editor/AudioMiniMapContainer.d.ts.map +1 -0
  44. package/dist/editor/AudioSourceDetails.d.ts +12 -0
  45. package/dist/editor/AudioSourceDetails.d.ts.map +1 -0
  46. package/dist/editor/AudioTimeline.d.ts +22 -0
  47. package/dist/editor/AudioTimeline.d.ts.map +1 -0
  48. package/dist/editor/AudioTimelineContainer.d.ts +18 -0
  49. package/dist/editor/AudioTimelineContainer.d.ts.map +1 -0
  50. package/dist/editor/AudioTimelineNavContainer.d.ts +14 -0
  51. package/dist/editor/AudioTimelineNavContainer.d.ts.map +1 -0
  52. package/dist/editor/CCLane.d.ts +23 -0
  53. package/dist/editor/CCLane.d.ts.map +1 -0
  54. package/dist/editor/CCLaneSelector.d.ts +14 -0
  55. package/dist/editor/CCLaneSelector.d.ts.map +1 -0
  56. package/dist/editor/PianoRoll.d.ts +14 -0
  57. package/dist/editor/PianoRoll.d.ts.map +1 -0
  58. package/dist/editor/Waveform.d.ts +9 -0
  59. package/dist/editor/Waveform.d.ts.map +1 -0
  60. package/dist/editor/editorDisplayModes.d.ts +37 -0
  61. package/dist/editor/editorDisplayModes.d.ts.map +1 -0
  62. package/dist/editor/editorIO.d.ts +11 -0
  63. package/dist/editor/editorIO.d.ts.map +1 -0
  64. package/dist/editor/hooks/index.d.ts +7 -0
  65. package/dist/editor/hooks/index.d.ts.map +1 -0
  66. package/dist/editor/hooks/useAutoSave.d.ts +13 -0
  67. package/dist/editor/hooks/useAutoSave.d.ts.map +1 -0
  68. package/dist/editor/hooks/usePlaybackEngine.d.ts +35 -0
  69. package/dist/editor/hooks/usePlaybackEngine.d.ts.map +1 -0
  70. package/dist/editor/hooks/useProjectCRUD.d.ts +45 -0
  71. package/dist/editor/hooks/useProjectCRUD.d.ts.map +1 -0
  72. package/dist/editor/hooks/useRecording.d.ts +46 -0
  73. package/dist/editor/hooks/useRecording.d.ts.map +1 -0
  74. package/dist/editor/nav/AudioLayersNav.d.ts +9 -0
  75. package/dist/editor/nav/AudioLayersNav.d.ts.map +1 -0
  76. package/dist/editor/nav/AudioProjectSectionNav.d.ts +12 -0
  77. package/dist/editor/nav/AudioProjectSectionNav.d.ts.map +1 -0
  78. package/dist/editor/nav/AudioTimelineNav.d.ts +14 -0
  79. package/dist/editor/nav/AudioTimelineNav.d.ts.map +1 -0
  80. package/dist/editor/nav/SaveLoadControls.d.ts +9 -0
  81. package/dist/editor/nav/SaveLoadControls.d.ts.map +1 -0
  82. package/dist/editor/panels/AdvancedEditingPanel.d.ts +30 -0
  83. package/dist/editor/panels/AdvancedEditingPanel.d.ts.map +1 -0
  84. package/dist/editor/panels/ArpeggiatorPanel.d.ts +12 -0
  85. package/dist/editor/panels/ArpeggiatorPanel.d.ts.map +1 -0
  86. package/dist/editor/panels/CCAutomationLaneEditor.d.ts +19 -0
  87. package/dist/editor/panels/CCAutomationLaneEditor.d.ts.map +1 -0
  88. package/dist/editor/panels/DisplayModeSelector.d.ts +9 -0
  89. package/dist/editor/panels/DisplayModeSelector.d.ts.map +1 -0
  90. package/dist/editor/panels/EditorPanels.d.ts +66 -0
  91. package/dist/editor/panels/EditorPanels.d.ts.map +1 -0
  92. package/dist/editor/panels/LFOPanel.d.ts +12 -0
  93. package/dist/editor/panels/LFOPanel.d.ts.map +1 -0
  94. package/dist/editor/panels/LayerTrack.d.ts +17 -0
  95. package/dist/editor/panels/LayerTrack.d.ts.map +1 -0
  96. package/dist/editor/panels/ProjectPanel.d.ts +23 -0
  97. package/dist/editor/panels/ProjectPanel.d.ts.map +1 -0
  98. package/dist/editor/panels/SectionPanel.d.ts +11 -0
  99. package/dist/editor/panels/SectionPanel.d.ts.map +1 -0
  100. package/dist/editor/panels/StepSequencerPanel.d.ts +8 -0
  101. package/dist/editor/panels/StepSequencerPanel.d.ts.map +1 -0
  102. package/dist/editor/useEditorRecording.d.ts +45 -0
  103. package/dist/editor/useEditorRecording.d.ts.map +1 -0
  104. package/dist/editor/useEditorTrack.d.ts +71 -0
  105. package/dist/editor/useEditorTrack.d.ts.map +1 -0
  106. package/dist/effects/NoteParticles.d.ts +2 -0
  107. package/dist/effects/NoteParticles.d.ts.map +1 -0
  108. package/dist/effects/NoteRiver.d.ts +15 -0
  109. package/dist/effects/NoteRiver.d.ts.map +1 -0
  110. package/dist/effects/noteThemeColors.d.ts +14 -0
  111. package/dist/effects/noteThemeColors.d.ts.map +1 -0
  112. package/dist/engine/audioContext.d.ts +12 -0
  113. package/dist/engine/audioContext.d.ts.map +1 -0
  114. package/dist/engine/audioKeyboard.d.ts +28 -0
  115. package/dist/engine/audioKeyboard.d.ts.map +1 -0
  116. package/dist/engine/audioLayerDetails.d.ts +13 -0
  117. package/dist/engine/audioLayerDetails.d.ts.map +1 -0
  118. package/dist/engine/audioPlaybackEngine.d.ts +186 -0
  119. package/dist/engine/audioPlaybackEngine.d.ts.map +1 -0
  120. package/dist/engine/audioProject.d.ts +10 -0
  121. package/dist/engine/audioProject.d.ts.map +1 -0
  122. package/dist/engine/audioSource.d.ts +38 -0
  123. package/dist/engine/audioSource.d.ts.map +1 -0
  124. package/dist/engine/audioTimeline.d.ts +54 -0
  125. package/dist/engine/audioTimeline.d.ts.map +1 -0
  126. package/dist/engine/audioUtils.d.ts +3 -0
  127. package/dist/engine/audioUtils.d.ts.map +1 -0
  128. package/dist/engine/generate-pitch-points.d.ts +2 -0
  129. package/dist/engine/generate-pitch-points.d.ts.map +1 -0
  130. package/dist/engine/instrumentPresets.d.ts +13 -0
  131. package/dist/engine/instrumentPresets.d.ts.map +1 -0
  132. package/dist/engine/pitch-worklet-processor.d.ts +11 -0
  133. package/dist/engine/pitch-worklet-processor.d.ts.map +1 -0
  134. package/dist/engine/pitch_client.d.ts +16 -0
  135. package/dist/engine/pitch_client.d.ts.map +1 -0
  136. package/dist/engine/recording.d.ts +31 -0
  137. package/dist/engine/recording.d.ts.map +1 -0
  138. package/dist/engine/simpleSynth.d.ts +46 -0
  139. package/dist/engine/simpleSynth.d.ts.map +1 -0
  140. package/dist/hooks/useCCAutomation.d.ts +36 -0
  141. package/dist/hooks/useCCAutomation.d.ts.map +1 -0
  142. package/dist/hooks/useStepSequencer.d.ts +48 -0
  143. package/dist/hooks/useStepSequencer.d.ts.map +1 -0
  144. package/dist/index.cjs +73 -0
  145. package/dist/index.d.ts +101 -0
  146. package/dist/index.d.ts.map +1 -0
  147. package/dist/index.mjs +13179 -0
  148. package/dist/karaoke/AudioPitchAnalyzer.d.ts +25 -0
  149. package/dist/karaoke/AudioPitchAnalyzer.d.ts.map +1 -0
  150. package/dist/karaoke/BarFillEditor.d.ts +14 -0
  151. package/dist/karaoke/BarFillEditor.d.ts.map +1 -0
  152. package/dist/karaoke/KaraokeLyrics.d.ts +9 -0
  153. package/dist/karaoke/KaraokeLyrics.d.ts.map +1 -0
  154. package/dist/karaoke/KaraokeTimeline.d.ts +21 -0
  155. package/dist/karaoke/KaraokeTimeline.d.ts.map +1 -0
  156. package/dist/karaoke/karaokeTimelineTypes.d.ts +77 -0
  157. package/dist/karaoke/karaokeTimelineTypes.d.ts.map +1 -0
  158. package/dist/karaoke/rendering/fontCatalog.d.ts +30 -0
  159. package/dist/karaoke/rendering/fontCatalog.d.ts.map +1 -0
  160. package/dist/karaoke/rendering/glossyBarCaps.d.ts +57 -0
  161. package/dist/karaoke/rendering/glossyBarCaps.d.ts.map +1 -0
  162. package/dist/karaoke/rendering/glossyBarPatterns.d.ts +16 -0
  163. package/dist/karaoke/rendering/glossyBarPatterns.d.ts.map +1 -0
  164. package/dist/karaoke/rendering/glossyBarRenderer.d.ts +65 -0
  165. package/dist/karaoke/rendering/glossyBarRenderer.d.ts.map +1 -0
  166. package/dist/karaoke/rendering/karaokeAnimations.d.ts +25 -0
  167. package/dist/karaoke/rendering/karaokeAnimations.d.ts.map +1 -0
  168. package/dist/karaoke/rendering/karaokeDisplaySettings.d.ts +65 -0
  169. package/dist/karaoke/rendering/karaokeDisplaySettings.d.ts.map +1 -0
  170. package/dist/karaoke/rendering/karaokeLyrics.d.ts +54 -0
  171. package/dist/karaoke/rendering/karaokeLyrics.d.ts.map +1 -0
  172. package/dist/karaoke/rendering/karaokeNoteParsing.d.ts +20 -0
  173. package/dist/karaoke/rendering/karaokeNoteParsing.d.ts.map +1 -0
  174. package/dist/karaoke/rendering/karaokeSettings.d.ts +143 -0
  175. package/dist/karaoke/rendering/karaokeSettings.d.ts.map +1 -0
  176. package/dist/karaoke/rendering/karaokeTimeline.d.ts +8 -0
  177. package/dist/karaoke/rendering/karaokeTimeline.d.ts.map +1 -0
  178. package/dist/karaoke/rendering/karaokeTimelineRenderer.d.ts +45 -0
  179. package/dist/karaoke/rendering/karaokeTimelineRenderer.d.ts.map +1 -0
  180. package/dist/karaoke/rendering/karaokeTimelineTypes.d.ts +32 -0
  181. package/dist/karaoke/rendering/karaokeTimelineTypes.d.ts.map +1 -0
  182. package/dist/karaoke/rendering/padNotePlayer.d.ts +73 -0
  183. package/dist/karaoke/rendering/padNotePlayer.d.ts.map +1 -0
  184. package/dist/karaoke/rendering/textureCache.d.ts +32 -0
  185. package/dist/karaoke/rendering/textureCache.d.ts.map +1 -0
  186. package/dist/karaoke/rendering/textureCatalog.d.ts +27 -0
  187. package/dist/karaoke/rendering/textureCatalog.d.ts.map +1 -0
  188. package/dist/karaokeEditor/KaraokeEditorManager.d.ts +21 -0
  189. package/dist/karaokeEditor/KaraokeEditorManager.d.ts.map +1 -0
  190. package/dist/karaokeEditor/KaraokePhaserRenderer.d.ts +11 -0
  191. package/dist/karaokeEditor/KaraokePhaserRenderer.d.ts.map +1 -0
  192. package/dist/midi/midiSeedGenerator.d.ts +45 -0
  193. package/dist/midi/midiSeedGenerator.d.ts.map +1 -0
  194. package/dist/midi/oxygen25Profile.d.ts +42 -0
  195. package/dist/midi/oxygen25Profile.d.ts.map +1 -0
  196. package/dist/midi/useMidiLearn.d.ts +94 -0
  197. package/dist/midi/useMidiLearn.d.ts.map +1 -0
  198. package/dist/midi/useOxygen25.d.ts +90 -0
  199. package/dist/midi/useOxygen25.d.ts.map +1 -0
  200. package/dist/midi/useWebMidi.d.ts +60 -0
  201. package/dist/midi/useWebMidi.d.ts.map +1 -0
  202. package/dist/models/editor/audioTypes.d.ts +35 -0
  203. package/dist/models/editor/audioTypes.d.ts.map +1 -0
  204. package/dist/models/editor/fxTypes.d.ts +9 -0
  205. package/dist/models/editor/fxTypes.d.ts.map +1 -0
  206. package/dist/models/editor/midiTypes.d.ts +15 -0
  207. package/dist/models/editor/midiTypes.d.ts.map +1 -0
  208. package/dist/models/editor/timelineTypes.d.ts +11 -0
  209. package/dist/models/editor/timelineTypes.d.ts.map +1 -0
  210. package/dist/models/game/modelsGame.d.ts +12 -0
  211. package/dist/models/game/modelsGame.d.ts.map +1 -0
  212. package/dist/models/modelsAiAudio.d.ts +121 -0
  213. package/dist/models/modelsAiAudio.d.ts.map +1 -0
  214. package/dist/models/modelsAiVideo.d.ts +75 -0
  215. package/dist/models/modelsAiVideo.d.ts.map +1 -0
  216. package/dist/models/modelsAudio.d.ts +160 -0
  217. package/dist/models/modelsAudio.d.ts.map +1 -0
  218. package/dist/models/modelsDmx.d.ts +75 -0
  219. package/dist/models/modelsDmx.d.ts.map +1 -0
  220. package/dist/models/modelsEditor.d.ts +112 -0
  221. package/dist/models/modelsEditor.d.ts.map +1 -0
  222. package/dist/models/modelsKaraoke.d.ts +75 -0
  223. package/dist/models/modelsKaraoke.d.ts.map +1 -0
  224. package/dist/models/modelsMusicPlatform.d.ts +8 -0
  225. package/dist/models/modelsMusicPlatform.d.ts.map +1 -0
  226. package/dist/models/modelsPlatforms.d.ts +52 -0
  227. package/dist/models/modelsPlatforms.d.ts.map +1 -0
  228. package/dist/models/modelsPlaylistManager.d.ts +197 -0
  229. package/dist/models/modelsPlaylistManager.d.ts.map +1 -0
  230. package/dist/models/modelsPlaylists.d.ts +97 -0
  231. package/dist/models/modelsPlaylists.d.ts.map +1 -0
  232. package/dist/player/GenericPlayer.d.ts +56 -0
  233. package/dist/player/GenericPlayer.d.ts.map +1 -0
  234. package/dist/player/GenericPlayerControls.d.ts +17 -0
  235. package/dist/player/GenericPlayerControls.d.ts.map +1 -0
  236. package/dist/player/GenericPlayerStage.d.ts +20 -0
  237. package/dist/player/GenericPlayerStage.d.ts.map +1 -0
  238. package/dist/player/GenericPlayerStageVisualizer.d.ts +32 -0
  239. package/dist/player/GenericPlayerStageVisualizer.d.ts.map +1 -0
  240. package/dist/player/GenericPlayerTrackList.d.ts +10 -0
  241. package/dist/player/GenericPlayerTrackList.d.ts.map +1 -0
  242. package/dist/player/YouTubePlayer.d.ts +13 -0
  243. package/dist/player/YouTubePlayer.d.ts.map +1 -0
  244. package/dist/player/nowPlayingAdapter.d.ts +19 -0
  245. package/dist/player/nowPlayingAdapter.d.ts.map +1 -0
  246. package/dist/player/visualizer/ModeSwitcher.d.ts +12 -0
  247. package/dist/player/visualizer/ModeSwitcher.d.ts.map +1 -0
  248. package/dist/player/visualizer/StageVisualizer.d.ts +23 -0
  249. package/dist/player/visualizer/StageVisualizer.d.ts.map +1 -0
  250. package/dist/player/visualizer/VuOverlay.d.ts +6 -0
  251. package/dist/player/visualizer/VuOverlay.d.ts.map +1 -0
  252. package/dist/player/visualizer/modes/BarsMode.d.ts +2 -0
  253. package/dist/player/visualizer/modes/BarsMode.d.ts.map +1 -0
  254. package/dist/player/visualizer/modes/BlobFlowMode.d.ts +11 -0
  255. package/dist/player/visualizer/modes/BlobFlowMode.d.ts.map +1 -0
  256. package/dist/player/visualizer/modes/ColorRipplesMode.d.ts +12 -0
  257. package/dist/player/visualizer/modes/ColorRipplesMode.d.ts.map +1 -0
  258. package/dist/player/visualizer/modes/CoverMode.d.ts +9 -0
  259. package/dist/player/visualizer/modes/CoverMode.d.ts.map +1 -0
  260. package/dist/player/visualizer/modes/CozyFireplaceMode.d.ts +14 -0
  261. package/dist/player/visualizer/modes/CozyFireplaceMode.d.ts.map +1 -0
  262. package/dist/player/visualizer/modes/EqualizerCircleMode.d.ts +2 -0
  263. package/dist/player/visualizer/modes/EqualizerCircleMode.d.ts.map +1 -0
  264. package/dist/player/visualizer/modes/GridMode.d.ts +2 -0
  265. package/dist/player/visualizer/modes/GridMode.d.ts.map +1 -0
  266. package/dist/player/visualizer/modes/ImageTornadoMode.d.ts +18 -0
  267. package/dist/player/visualizer/modes/ImageTornadoMode.d.ts.map +1 -0
  268. package/dist/player/visualizer/modes/LavaLampMode.d.ts +13 -0
  269. package/dist/player/visualizer/modes/LavaLampMode.d.ts.map +1 -0
  270. package/dist/player/visualizer/modes/NeonTrianglesMode.d.ts +11 -0
  271. package/dist/player/visualizer/modes/NeonTrianglesMode.d.ts.map +1 -0
  272. package/dist/player/visualizer/modes/OrbitalsMode.d.ts +2 -0
  273. package/dist/player/visualizer/modes/OrbitalsMode.d.ts.map +1 -0
  274. package/dist/player/visualizer/modes/PaletteMode.d.ts +2 -0
  275. package/dist/player/visualizer/modes/PaletteMode.d.ts.map +1 -0
  276. package/dist/player/visualizer/modes/ParticlesMode.d.ts +13 -0
  277. package/dist/player/visualizer/modes/ParticlesMode.d.ts.map +1 -0
  278. package/dist/player/visualizer/modes/PlasmaBallMode.d.ts +3 -0
  279. package/dist/player/visualizer/modes/PlasmaBallMode.d.ts.map +1 -0
  280. package/dist/player/visualizer/modes/RadialMode.d.ts +2 -0
  281. package/dist/player/visualizer/modes/RadialMode.d.ts.map +1 -0
  282. package/dist/player/visualizer/modes/RaysMode.d.ts +4 -0
  283. package/dist/player/visualizer/modes/RaysMode.d.ts.map +1 -0
  284. package/dist/player/visualizer/modes/RiftMode.d.ts +3 -0
  285. package/dist/player/visualizer/modes/RiftMode.d.ts.map +1 -0
  286. package/dist/player/visualizer/modes/RingsMode.d.ts +2 -0
  287. package/dist/player/visualizer/modes/RingsMode.d.ts.map +1 -0
  288. package/dist/player/visualizer/modes/SpectrumMode.d.ts +2 -0
  289. package/dist/player/visualizer/modes/SpectrumMode.d.ts.map +1 -0
  290. package/dist/player/visualizer/modes/StarfieldMode.d.ts +13 -0
  291. package/dist/player/visualizer/modes/StarfieldMode.d.ts.map +1 -0
  292. package/dist/player/visualizer/modes/WaveformMode.d.ts +2 -0
  293. package/dist/player/visualizer/modes/WaveformMode.d.ts.map +1 -0
  294. package/dist/player/visualizer/types.d.ts +3 -0
  295. package/dist/player/visualizer/types.d.ts.map +1 -0
  296. package/dist/player/visualizer/useLocalStorageState.d.ts +2 -0
  297. package/dist/player/visualizer/useLocalStorageState.d.ts.map +1 -0
  298. package/dist/playlist/DynamicRuleEditor.d.ts +11 -0
  299. package/dist/playlist/DynamicRuleEditor.d.ts.map +1 -0
  300. package/dist/playlist/GenericPlaylist.d.ts +22 -0
  301. package/dist/playlist/GenericPlaylist.d.ts.map +1 -0
  302. package/dist/playlist/GenericPlaylistItem.d.ts +41 -0
  303. package/dist/playlist/GenericPlaylistItem.d.ts.map +1 -0
  304. package/dist/playlist/PlaylistBrowser.d.ts +24 -0
  305. package/dist/playlist/PlaylistBrowser.d.ts.map +1 -0
  306. package/dist/playlist/PlaylistDualPane.d.ts +17 -0
  307. package/dist/playlist/PlaylistDualPane.d.ts.map +1 -0
  308. package/dist/playlist/PlaylistGridView.d.ts +12 -0
  309. package/dist/playlist/PlaylistGridView.d.ts.map +1 -0
  310. package/dist/playlist/PlaylistList.d.ts +23 -0
  311. package/dist/playlist/PlaylistList.d.ts.map +1 -0
  312. package/dist/playlist/PlaylistOverview.d.ts +14 -0
  313. package/dist/playlist/PlaylistOverview.d.ts.map +1 -0
  314. package/dist/playlist/PlaylistSearchBar.d.ts +22 -0
  315. package/dist/playlist/PlaylistSearchBar.d.ts.map +1 -0
  316. package/dist/playlist/PlaylistSidebar.d.ts +25 -0
  317. package/dist/playlist/PlaylistSidebar.d.ts.map +1 -0
  318. package/dist/playlist/PlaylistTagEditor.d.ts +15 -0
  319. package/dist/playlist/PlaylistTagEditor.d.ts.map +1 -0
  320. package/dist/playlist/PlaylistTrackList.d.ts +26 -0
  321. package/dist/playlist/PlaylistTrackList.d.ts.map +1 -0
  322. package/dist/playlist/useLocalPlaylists.d.ts +17 -0
  323. package/dist/playlist/useLocalPlaylists.d.ts.map +1 -0
  324. package/dist/ui-audio.css +1 -0
  325. package/dist/utils/BaseStreamClient.d.ts +64 -0
  326. package/dist/utils/BaseStreamClient.d.ts.map +1 -0
  327. package/dist/utils/arpeggiator.d.ts +49 -0
  328. package/dist/utils/arpeggiator.d.ts.map +1 -0
  329. package/dist/utils/articulationEngine.d.ts +69 -0
  330. package/dist/utils/articulationEngine.d.ts.map +1 -0
  331. package/dist/utils/audioEditorUtils.d.ts +2 -0
  332. package/dist/utils/audioEditorUtils.d.ts.map +1 -0
  333. package/dist/utils/audioFxUtils.d.ts +6 -0
  334. package/dist/utils/audioFxUtils.d.ts.map +1 -0
  335. package/dist/utils/audioMidiUtils.d.ts +18 -0
  336. package/dist/utils/audioMidiUtils.d.ts.map +1 -0
  337. package/dist/utils/audioPitchAlgorithms.d.ts +3 -0
  338. package/dist/utils/audioPitchAlgorithms.d.ts.map +1 -0
  339. package/dist/utils/audioPitchAnalyzeFile.d.ts +26 -0
  340. package/dist/utils/audioPitchAnalyzeFile.d.ts.map +1 -0
  341. package/dist/utils/audioTimelineUtils.d.ts +5 -0
  342. package/dist/utils/audioTimelineUtils.d.ts.map +1 -0
  343. package/dist/utils/ccAutomation.d.ts +51 -0
  344. package/dist/utils/ccAutomation.d.ts.map +1 -0
  345. package/dist/utils/chordScale.d.ts +47 -0
  346. package/dist/utils/chordScale.d.ts.map +1 -0
  347. package/dist/utils/clipLauncher.d.ts +97 -0
  348. package/dist/utils/clipLauncher.d.ts.map +1 -0
  349. package/dist/utils/colorResolver.d.ts +12 -0
  350. package/dist/utils/colorResolver.d.ts.map +1 -0
  351. package/dist/utils/crepeStreaming.d.ts +21 -0
  352. package/dist/utils/crepeStreaming.d.ts.map +1 -0
  353. package/dist/utils/drawTool.d.ts +31 -0
  354. package/dist/utils/drawTool.d.ts.map +1 -0
  355. package/dist/utils/envelopeFollower.d.ts +46 -0
  356. package/dist/utils/envelopeFollower.d.ts.map +1 -0
  357. package/dist/utils/gameAudio.d.ts +237 -0
  358. package/dist/utils/gameAudio.d.ts.map +1 -0
  359. package/dist/utils/grooveTemplates.d.ts +69 -0
  360. package/dist/utils/grooveTemplates.d.ts.map +1 -0
  361. package/dist/utils/karaokeHelpers.d.ts +61 -0
  362. package/dist/utils/karaokeHelpers.d.ts.map +1 -0
  363. package/dist/utils/karaokeMetadata.d.ts +27 -0
  364. package/dist/utils/karaokeMetadata.d.ts.map +1 -0
  365. package/dist/utils/karaokeScoring.d.ts +111 -0
  366. package/dist/utils/karaokeScoring.d.ts.map +1 -0
  367. package/dist/utils/latencyEstimate.d.ts +8 -0
  368. package/dist/utils/latencyEstimate.d.ts.map +1 -0
  369. package/dist/utils/lfoEngine.d.ts +55 -0
  370. package/dist/utils/lfoEngine.d.ts.map +1 -0
  371. package/dist/utils/librosaStreaming.d.ts +19 -0
  372. package/dist/utils/librosaStreaming.d.ts.map +1 -0
  373. package/dist/utils/logger.d.ts +31 -0
  374. package/dist/utils/logger.d.ts.map +1 -0
  375. package/dist/utils/macroSystem.d.ts +97 -0
  376. package/dist/utils/macroSystem.d.ts.map +1 -0
  377. package/dist/utils/musicPlayerUtils.d.ts +7 -0
  378. package/dist/utils/musicPlayerUtils.d.ts.map +1 -0
  379. package/dist/utils/padKaraokeSession.d.ts +50 -0
  380. package/dist/utils/padKaraokeSession.d.ts.map +1 -0
  381. package/dist/utils/songDataHelpers.d.ts +59 -0
  382. package/dist/utils/songDataHelpers.d.ts.map +1 -0
  383. package/dist/utils/stepSequencer.d.ts +62 -0
  384. package/dist/utils/stepSequencer.d.ts.map +1 -0
  385. package/dist/utils/undoRedoUtils.d.ts +5 -0
  386. package/dist/utils/undoRedoUtils.d.ts.map +1 -0
  387. package/dist/utils/vocalEffectsEngine.d.ts +64 -0
  388. package/dist/utils/vocalEffectsEngine.d.ts.map +1 -0
  389. package/dist/utils/vocalPerformanceMetrics.d.ts +117 -0
  390. package/dist/utils/vocalPerformanceMetrics.d.ts.map +1 -0
  391. package/dist/workers/pitchWorker.d.ts +11 -0
  392. package/dist/workers/pitchWorker.d.ts.map +1 -0
  393. package/dist/workers/scoringWorker.d.ts +71 -0
  394. package/dist/workers/scoringWorker.d.ts.map +1 -0
  395. package/dist/workers/usePitchWorker.d.ts +7 -0
  396. package/dist/workers/usePitchWorker.d.ts.map +1 -0
  397. package/dist/workers/useScoringWorker.d.ts +7 -0
  398. package/dist/workers/useScoringWorker.d.ts.map +1 -0
  399. package/dist/workers/useWorker.d.ts +12 -0
  400. package/dist/workers/useWorker.d.ts.map +1 -0
  401. package/package.json +84 -0
@@ -0,0 +1,62 @@
1
+ export interface Step {
2
+ /** Whether this step is active */
3
+ active: boolean;
4
+ /** MIDI note number (0-127) */
5
+ note: number;
6
+ /** Velocity (0-127) */
7
+ velocity: number;
8
+ /** Gate length as fraction of step duration (0-1) */
9
+ gate: number;
10
+ /** Probability of triggering (0-1, 1 = always) */
11
+ probability: number;
12
+ /** Optional slide/glide to next note */
13
+ slide: boolean;
14
+ }
15
+ export interface SequencerPattern {
16
+ /** Pattern name */
17
+ name: string;
18
+ /** Number of steps (16, 32, or 64) */
19
+ length: 16 | 32 | 64;
20
+ /** Steps data */
21
+ steps: Step[];
22
+ /** BPM (for standalone playback or sync reference) */
23
+ bpm: number;
24
+ /** Swing amount (0-1, 0 = straight, 0.67 = standard swing) */
25
+ swing: number;
26
+ /** Root note for pattern transposition */
27
+ rootNote: number;
28
+ /** CC lane to output to (optional) */
29
+ ccOutput?: number;
30
+ }
31
+ export declare function createEmptyStep(note?: number): Step;
32
+ export declare function createEmptyPattern(name?: string, length?: 16 | 32 | 64, bpm?: number): SequencerPattern;
33
+ export declare function toggleStep(pattern: SequencerPattern, index: number): SequencerPattern;
34
+ export declare function setStepNote(pattern: SequencerPattern, index: number, note: number): SequencerPattern;
35
+ export declare function setStepVelocity(pattern: SequencerPattern, index: number, velocity: number): SequencerPattern;
36
+ export declare function setStepGate(pattern: SequencerPattern, index: number, gate: number): SequencerPattern;
37
+ export declare function setStepProbability(pattern: SequencerPattern, index: number, prob: number): SequencerPattern;
38
+ export declare function toggleStepSlide(pattern: SequencerPattern, index: number): SequencerPattern;
39
+ /** Transpose all active steps by semitones */
40
+ export declare function transposePattern(pattern: SequencerPattern, semitones: number): SequencerPattern;
41
+ /** Reverse the pattern */
42
+ export declare function reversePattern(pattern: SequencerPattern): SequencerPattern;
43
+ /** Shift pattern left/right by N steps (wrapping) */
44
+ export declare function shiftPattern(pattern: SequencerPattern, amount: number): SequencerPattern;
45
+ /** Randomize velocity for all active steps */
46
+ export declare function randomizeVelocity(pattern: SequencerPattern, min?: number, max?: number): SequencerPattern;
47
+ /** Clear all steps (keep pattern structure) */
48
+ export declare function clearPattern(pattern: SequencerPattern): SequencerPattern;
49
+ /** Get the duration of one step in seconds */
50
+ export declare function stepDuration(bpm: number, stepsPerBeat?: number): number;
51
+ /** Get time offset for a step index, accounting for swing */
52
+ export declare function stepTimeOffset(index: number, bpm: number, swing?: number, stepsPerBeat?: number): number;
53
+ /** Should this step trigger? (probability check) */
54
+ export declare function shouldTrigger(step: Step): boolean;
55
+ export declare function createKickPattern(): SequencerPattern;
56
+ export declare function createSnarePattern(): SequencerPattern;
57
+ export declare function createHiHatPattern(): SequencerPattern;
58
+ export declare function createArpPattern(rootNote?: number): SequencerPattern;
59
+ export declare function createBasslinePattern(rootNote?: number): SequencerPattern;
60
+ export declare function serializePattern(pattern: SequencerPattern): string;
61
+ export declare function deserializePattern(json: string): SequencerPattern | null;
62
+ //# sourceMappingURL=stepSequencer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stepSequencer.d.ts","sourceRoot":"","sources":["../../src/utils/stepSequencer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { AudioProject } from '../models/modelsEditor';
2
+ export declare function setProjectWithUndo(next: AudioProject, project: AudioProject | null, setUndoStack: React.Dispatch<React.SetStateAction<AudioProject[]>>, setRedoStack: React.Dispatch<React.SetStateAction<AudioProject[]>>, setProject: React.Dispatch<React.SetStateAction<AudioProject | null>>): void;
3
+ export declare function handleUndo(project: AudioProject | null, setUndoStack: React.Dispatch<React.SetStateAction<AudioProject[]>>, setRedoStack: React.Dispatch<React.SetStateAction<AudioProject[]>>, setProject: React.Dispatch<React.SetStateAction<AudioProject | null>>): void;
4
+ export declare function handleRedo(project: AudioProject | null, setUndoStack: React.Dispatch<React.SetStateAction<AudioProject[]>>, setRedoStack: React.Dispatch<React.SetStateAction<AudioProject[]>>, setProject: React.Dispatch<React.SetStateAction<AudioProject | null>>): void;
5
+ //# sourceMappingURL=undoRedoUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"undoRedoUtils.d.ts","sourceRoot":"","sources":["../../src/utils/undoRedoUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,wBAAgB,kBAAkB,CAC9B,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,YAAY,GAAG,IAAI,EAC5B,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,EAClE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,EAClE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,QAKxE;AAED,wBAAgB,UAAU,CACtB,OAAO,EAAE,YAAY,GAAG,IAAI,EAC5B,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,EAClE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,EAClE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,QASxE;AAED,wBAAgB,UAAU,CACtB,OAAO,EAAE,YAAY,GAAG,IAAI,EAC5B,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,EAClE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,EAClE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC,QASxE"}
@@ -0,0 +1,64 @@
1
+ export type VocalEffectType = "chipmunk" | "deep" | "robot" | "echo" | "reverb" | "chorus" | "flanger" | "distortion" | "telephone" | "megaphone" | "whisper" | "alien" | "underwater" | "radio" | "cave" | "helium" | "demon" | "tremolo" | "autotune" | "vocoder";
2
+ export interface VocalEffectConfig {
3
+ type: VocalEffectType;
4
+ enabled: boolean;
5
+ /** Effect-specific parameter (0-100). Meaning depends on effect type. */
6
+ intensity: number;
7
+ /** Display name */
8
+ label: string;
9
+ /** Emoji icon */
10
+ icon: string;
11
+ }
12
+ export declare const ALL_EFFECTS: VocalEffectConfig[];
13
+ export declare class VocalEffectsEngine {
14
+ private audioCtx;
15
+ private mediaStream;
16
+ private sourceNode;
17
+ private inputGain;
18
+ private outputGain;
19
+ private activeEffects;
20
+ private effectOrder;
21
+ private monitoring;
22
+ private _volume;
23
+ private _inputVolume;
24
+ private started;
25
+ private externalStream;
26
+ private analyser;
27
+ get isStarted(): boolean;
28
+ get context(): AudioContext | null;
29
+ get activeEffectTypes(): VocalEffectType[];
30
+ start(deviceId?: string): Promise<void>;
31
+ startWithStream(stream: MediaStream): Promise<void>;
32
+ stop(): void;
33
+ setMonitoring(enabled: boolean): void;
34
+ setVolume(vol: number): void;
35
+ setInputGain(gain: number): void;
36
+ /** Get current audio level (RMS) */
37
+ getLevel(): number;
38
+ addEffect(type: VocalEffectType, intensity?: number): void;
39
+ removeEffect(type: VocalEffectType): void;
40
+ toggleEffect(type: VocalEffectType, intensity?: number): boolean;
41
+ updateIntensity(type: VocalEffectType, intensity: number): void;
42
+ clearAllEffects(): void;
43
+ private reconnectChain;
44
+ private buildEffectChain;
45
+ private buildPitchShift;
46
+ private buildRobot;
47
+ private buildAlien;
48
+ private buildDelay;
49
+ private buildCave;
50
+ private buildReverb;
51
+ private buildChorus;
52
+ private buildFlanger;
53
+ private buildDistortion;
54
+ private buildBandpass;
55
+ private buildMegaphone;
56
+ private buildRadio;
57
+ private buildUnderwater;
58
+ private buildWhisper;
59
+ private buildDemon;
60
+ private buildTremolo;
61
+ private buildAutotune;
62
+ private buildVocoder;
63
+ }
64
+ //# sourceMappingURL=vocalEffectsEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocalEffectsEngine.d.ts","sourceRoot":"","sources":["../../src/utils/vocalEffectsEngine.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,eAAe,GACrB,UAAU,GACV,MAAM,GACN,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,YAAY,GACZ,WAAW,GACX,WAAW,GACX,SAAS,GACT,OAAO,GACP,YAAY,GACZ,OAAO,GACP,MAAM,GACN,QAAQ,GACR,OAAO,GACP,SAAS,GACT,UAAU,GACV,SAAS,CAAC;AAEhB,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,WAAW,EAAE,iBAAiB,EAqB1C,CAAC;AAyCF,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,UAAU,CAA2C;IAC7D,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,aAAa,CAAqD;IAC1E,OAAO,CAAC,WAAW,CAAyB;IAC5C,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,YAAY,CAAO;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAA6B;IAE7C,IAAI,SAAS,IAAI,OAAO,CAAyB;IACjD,IAAI,OAAO,IAAI,YAAY,GAAG,IAAI,CAA0B;IAC5D,IAAI,iBAAiB,IAAI,eAAe,EAAE,CAAkC;IAItE,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BvC,eAAe,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBzD,IAAI,IAAI,IAAI;IAqBZ,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAOrC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAO5B,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAOhC,oCAAoC;IACpC,QAAQ,IAAI,MAAM;IAclB,SAAS,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,SAAK,GAAG,IAAI;IAYtD,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;IAYzC,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,SAAK,GAAG,OAAO;IAU5D,eAAe,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D,eAAe,IAAI,IAAI;IAgBvB,OAAO,CAAC,cAAc;IA8BtB,OAAO,CAAC,gBAAgB;IAoDxB,OAAO,CAAC,eAAe;IAoEvB,OAAO,CAAC,UAAU;IAkClB,OAAO,CAAC,UAAU;IA4ClB,OAAO,CAAC,UAAU;IA+BlB,OAAO,CAAC,SAAS;IA8CjB,OAAO,CAAC,WAAW;IAyBnB,OAAO,CAAC,WAAW;IAgDnB,OAAO,CAAC,YAAY;IAwCpB,OAAO,CAAC,eAAe;IA0BvB,OAAO,CAAC,aAAa;IAyBrB,OAAO,CAAC,cAAc;IAqCtB,OAAO,CAAC,UAAU;IAiClB,OAAO,CAAC,eAAe;IAuCvB,OAAO,CAAC,YAAY;IAqCpB,OAAO,CAAC,UAAU;IAiDlB,OAAO,CAAC,YAAY;IA2BpB,OAAO,CAAC,aAAa;IAuDrB,OAAO,CAAC,YAAY;CAmEvB"}
@@ -0,0 +1,117 @@
1
+ import { PitchPoint, NoteDescriptor, ComboResult } from './karaokeScoring';
2
+ /** Loose VerseRating that accepts label: string (compatible with useKaraokeManager) */
3
+ export interface VerseRatingInput {
4
+ verseIndex: number;
5
+ hitFraction: number;
6
+ label: string;
7
+ comboBonus: number;
8
+ }
9
+ /** Single point in pitch-over-time chart data */
10
+ export interface PitchChartPoint {
11
+ t: number;
12
+ sung: number;
13
+ expected: number;
14
+ }
15
+ /** Histogram bin for pitch deviation */
16
+ export interface DeviationBin {
17
+ centRange: string;
18
+ count: number;
19
+ pct: number;
20
+ }
21
+ /** Pitch class usage (chromagram) */
22
+ export interface PitchClassUsage {
23
+ note: string;
24
+ count: number;
25
+ pct: number;
26
+ }
27
+ /** Per-verse performance snapshot */
28
+ export interface VerseMetric {
29
+ verseIndex: number;
30
+ label: string;
31
+ hitFraction: number;
32
+ avgCentDeviation: number;
33
+ noteCount: number;
34
+ notesHit: number;
35
+ comboBonus: number;
36
+ }
37
+ /** Vibrato analysis result */
38
+ export interface VibratoStats {
39
+ detected: boolean;
40
+ avgRateHz: number;
41
+ avgExtentCents: number;
42
+ regularityPct: number;
43
+ }
44
+ /** Microphone settings snapshot */
45
+ export interface MicSettingsSnapshot {
46
+ deviceId: string;
47
+ deviceLabel: string;
48
+ algorithm: string;
49
+ gain: number;
50
+ rmsThreshold: number;
51
+ pitchThreshold: number;
52
+ smoothingWindow: number;
53
+ hysteresisFrames: number;
54
+ useHanning: boolean;
55
+ latencyOffsetMs: number;
56
+ monitorEnabled: boolean;
57
+ monitorVolume: number;
58
+ }
59
+ /** Complete performance report for one player */
60
+ export interface VocalPerformanceReport {
61
+ playerName: string;
62
+ playerColor: string;
63
+ songTitle: string;
64
+ songArtist: string;
65
+ songBpm: number;
66
+ difficulty: string;
67
+ timestamp: string;
68
+ classicScore: number;
69
+ bonusScore: number;
70
+ totalScore: number;
71
+ maxCombo: number;
72
+ totalComboBonus: number;
73
+ totalPitchPoints: number;
74
+ avgCentDeviation: number;
75
+ medianCentDeviation: number;
76
+ stdDevCents: number;
77
+ intonationAccuracyPct: number;
78
+ perfectHitPct: number;
79
+ pitchDeviationHistogram: DeviationBin[];
80
+ lowestHz: number;
81
+ highestHz: number;
82
+ lowestNote: string;
83
+ highestNote: string;
84
+ rangeInSemitones: number;
85
+ tessituraLow: string;
86
+ tessituraHigh: string;
87
+ pitchClassDistribution: PitchClassUsage[];
88
+ vibrato: VibratoStats;
89
+ avgOnsetDeviationMs: number;
90
+ rhythmStabilityPct: number;
91
+ jitterPct: number;
92
+ shimmerProxy: number;
93
+ verseMetrics: VerseMetric[];
94
+ micSettings: MicSettingsSnapshot | null;
95
+ pitchOverTime: PitchChartPoint[];
96
+ accuracyOverTime: {
97
+ t: number;
98
+ accuracy: number;
99
+ }[];
100
+ }
101
+ export declare function computeVocalPerformanceReport(params: {
102
+ playerName: string;
103
+ playerColor: string;
104
+ songTitle: string;
105
+ songArtist: string;
106
+ songBpm: number;
107
+ difficulty: string;
108
+ pitchPoints: PitchPoint[];
109
+ notes: NoteDescriptor[];
110
+ verseRatings: VerseRatingInput[];
111
+ combo: ComboResult | null;
112
+ classicScore: number;
113
+ bonusScore: number;
114
+ totalScore: number;
115
+ micSettings: MicSettingsSnapshot | null;
116
+ }): VocalPerformanceReport;
117
+ //# sourceMappingURL=vocalPerformanceMetrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocalPerformanceMetrics.d.ts","sourceRoot":"","sources":["../../src/utils/vocalPerformanceMetrics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface PitchWorkerRequest {
2
+ id: number;
3
+ buffer: Float32Array;
4
+ sampleRate: number;
5
+ rmsThreshold: number;
6
+ }
7
+ export interface PitchWorkerResponse {
8
+ id: number;
9
+ hz: number;
10
+ }
11
+ //# sourceMappingURL=pitchWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pitchWorker.d.ts","sourceRoot":"","sources":["../../src/workers/pitchWorker.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ"}
@@ -0,0 +1,71 @@
1
+ interface NoteDescriptor {
2
+ startTime: number;
3
+ duration: number;
4
+ pitch: number;
5
+ isGold?: boolean;
6
+ line?: number;
7
+ idx?: number;
8
+ }
9
+ interface PitchPoint {
10
+ t: number;
11
+ hz: number;
12
+ }
13
+ interface ScoringParams {
14
+ semitoneTolerance: number;
15
+ preWindow: number;
16
+ postExtra: number;
17
+ segMs?: number;
18
+ completionBonusFactor?: number;
19
+ goldFullBonusFactor?: number;
20
+ difficultyMult?: number;
21
+ disableGoldNotes?: boolean;
22
+ }
23
+ interface NoteScoreResult {
24
+ noteKey: string;
25
+ segments: Array<{
26
+ segIndex: number;
27
+ frac: number;
28
+ add: number;
29
+ segStart: number;
30
+ segEnd: number;
31
+ visualStart: number;
32
+ visualEnd: number;
33
+ }>;
34
+ totalAdded: number;
35
+ completed?: boolean;
36
+ completionBonus?: number;
37
+ goldFullBonus?: number;
38
+ }
39
+ interface ScoringResult {
40
+ classicScore: number;
41
+ bonusScore: number;
42
+ totalScore: number;
43
+ total: number;
44
+ perNote: NoteScoreResult[];
45
+ combo?: ComboResult;
46
+ verseRatings?: VerseRating[];
47
+ }
48
+ type VerseRatingLabel = 'Awful' | 'Bad' | 'OK' | 'Good' | 'Great' | 'Perfect';
49
+ interface VerseRating {
50
+ verseIndex: number;
51
+ hitFraction: number;
52
+ label: VerseRatingLabel;
53
+ comboBonus: number;
54
+ }
55
+ interface ComboResult {
56
+ maxCombo: number;
57
+ currentCombo: number;
58
+ totalComboBonus: number;
59
+ }
60
+ export interface ScoringWorkerRequest {
61
+ id: number;
62
+ notes: NoteDescriptor[];
63
+ points: PitchPoint[];
64
+ params: ScoringParams;
65
+ }
66
+ export interface ScoringWorkerResponse {
67
+ id: number;
68
+ result: ScoringResult;
69
+ }
70
+ export {};
71
+ //# sourceMappingURL=scoringWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoringWorker.d.ts","sourceRoot":"","sources":["../../src/workers/scoringWorker.ts"],"names":[],"mappings":"AAKA,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,UAAU,UAAU;IAAG,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE;AAE9C,UAAU,aAAa;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,UAAU,eAAe;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3I,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,aAAa;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B;AAED,KAAK,gBAAgB,GAAG,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAE9E,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,gBAAgB,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,WAAW;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,MAAM,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,aAAa,CAAC;CACvB"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Hook that offloads autoCorrelate pitch detection to a Web Worker.
3
+ * Returns `detectPitch(buffer, sampleRate, rmsThreshold)` → Promise<number>.
4
+ * Falls back to main-thread computation if Worker is unavailable.
5
+ */
6
+ export declare function usePitchWorker(): (buffer: Float32Array, sampleRate: number, rmsThreshold?: number) => Promise<number>;
7
+ //# sourceMappingURL=usePitchWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePitchWorker.d.ts","sourceRoot":"","sources":["../../src/workers/usePitchWorker.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,wBAAgB,cAAc,aASX,YAAY,cAAc,MAAM,iBAAgB,MAAM,KAAU,OAAO,CAAC,MAAM,CAAC,CAQjG"}
@@ -0,0 +1,7 @@
1
+ import { NoteDescriptor, PitchPoint, ScoringParams, ScoringResult } from '../utils/karaokeScoring';
2
+ /**
3
+ * Hook that offloads karaoke scoring to a Web Worker.
4
+ * Returns `computeScore(notes, points, params)` → Promise<ScoringResult>.
5
+ */
6
+ export declare function useScoringWorker(): (notes: NoteDescriptor[], points: PitchPoint[], params: ScoringParams) => Promise<ScoringResult>;
7
+ //# sourceMappingURL=useScoringWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useScoringWorker.d.ts","sourceRoot":"","sources":["../../src/workers/useScoringWorker.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExG;;;GAGG;AACH,wBAAgB,gBAAgB,YASd,cAAc,EAAE,UAAU,UAAU,EAAE,UAAU,aAAa,KAAG,OAAO,CAAC,aAAa,CAAC,CAQvG"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Generic hook that wraps a Web Worker in a promise-based API.
3
+ * - Lazily creates the worker on first call
4
+ * - Auto-terminates on unmount
5
+ * - Returns an `invoke(data)` function that returns a promise
6
+ */
7
+ export declare function useWorker<Req extends {
8
+ id: number;
9
+ }, Res extends {
10
+ id: number;
11
+ }>(factory: () => Worker): (data: Omit<Req, "id">, transferables?: Transferable[]) => Promise<Res>;
12
+ //# sourceMappingURL=useWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWorker.d.ts","sourceRoot":"","sources":["../../src/workers/useWorker.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,GAAG,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,SAAS;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,EAC9E,OAAO,EAAE,MAAM,MAAM,UA+BZ,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,kBAAkB,YAAY,EAAE,KAAG,OAAO,CAAC,GAAG,CAAC,CAYxE"}
package/package.json ADDED
@@ -0,0 +1,84 @@
1
+ {
2
+ "name": "@nice2dev/ui-audio",
3
+ "version": "0.1.0",
4
+ "description": "Nice2Dev Audio UI — DAW editor, karaoke engine, player, playlist, DMX, music visualizers for React",
5
+ "type": "module",
6
+ "main": "dist/index.cjs",
7
+ "module": "dist/index.mjs",
8
+ "types": "dist/index.d.ts",
9
+ "exports": {
10
+ ".": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.mjs",
13
+ "require": "./dist/index.cjs"
14
+ },
15
+ "./style.css": "./dist/style.css"
16
+ },
17
+ "files": ["dist", "LICENSE", "CHANGELOG.md", "README.md"],
18
+ "sideEffects": ["*.css"],
19
+ "scripts": {
20
+ "dev": "vite",
21
+ "build": "tsc -p tsconfig.build.json && vite build",
22
+ "test": "vitest run",
23
+ "test:watch": "vitest",
24
+ "test:coverage": "vitest run --coverage",
25
+ "typecheck": "tsc --noEmit",
26
+ "demo": "vite --config vite.demo.config.ts",
27
+ "demo:build": "vite build --config vite.demo.config.ts",
28
+ "prepublishOnly": "npm run build"
29
+ },
30
+ "keywords": [
31
+ "react", "audio", "daw", "karaoke", "player", "playlist", "dmx",
32
+ "visualizer", "midi", "pitch-detection", "scoring", "music",
33
+ "piano-roll", "waveform", "nicetodev"
34
+ ],
35
+ "author": "NiceToDev <contact@nicetodev.com>",
36
+ "license": "MIT",
37
+ "repository": {
38
+ "type": "git",
39
+ "url": "git+https://github.com/NiceToDev/NiceToDev.UI.git",
40
+ "directory": "nice2dev-ui-audio"
41
+ },
42
+ "homepage": "https://github.com/NiceToDev/NiceToDev.UI#readme",
43
+ "bugs": {
44
+ "url": "https://github.com/NiceToDev/NiceToDev.UI/issues"
45
+ },
46
+ "peerDependencies": {
47
+ "react": ">=17.0.0",
48
+ "react-dom": ">=17.0.0"
49
+ },
50
+ "peerDependenciesMeta": {
51
+ "react-window": { "optional": true },
52
+ "react-youtube": { "optional": true },
53
+ "hls.js": { "optional": true },
54
+ "pitchy": { "optional": true },
55
+ "phaser": { "optional": true },
56
+ "framer-motion": { "optional": true },
57
+ "@fortawesome/react-fontawesome": { "optional": true },
58
+ "@fortawesome/free-solid-svg-icons": { "optional": true },
59
+ "@fortawesome/free-brands-svg-icons": { "optional": true },
60
+ "music-metadata-browser": { "optional": true },
61
+ "fflate": { "optional": true },
62
+ "@ffmpeg/ffmpeg": { "optional": true },
63
+ "@monaco-editor/react": { "optional": true }
64
+ },
65
+ "devDependencies": {
66
+ "@testing-library/jest-dom": "^6.9.1",
67
+ "@testing-library/react": "^16.3.2",
68
+ "@types/node": "^22.0.0",
69
+ "@types/react": "^18.2.0",
70
+ "@types/react-dom": "^18.2.0",
71
+ "@vitejs/plugin-react": "^4.2.0",
72
+ "hls.js": "^1.5.0",
73
+ "jsdom": "^29.0.0",
74
+ "pitchy": "^4.1.0",
75
+ "react": "^18.2.0",
76
+ "react-dom": "^18.2.0",
77
+ "react-window": "^1.8.0",
78
+ "react-youtube": "^10.1.0",
79
+ "typescript": "^5.3.0",
80
+ "vite": "^6.2.0",
81
+ "vite-plugin-dts": "^4.5.0",
82
+ "vitest": "^4.1.0"
83
+ }
84
+ }