echogarden 2.10.2 → 3.0.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.
- package/LICENSE.MIT.md +7 -0
- package/README.md +9 -1
- package/data/lexicons/heteronyms.en.json +44 -10
- package/data/lexicons/words.en.json +726 -22
- package/data/schemas/options.json +91 -153
- package/dist/alignment/DTWMfccSequenceAlignment.js.map +1 -1
- package/dist/alignment/SemanticTextAlignment.d.ts +4 -2
- package/dist/alignment/SemanticTextAlignment.d.ts.map +1 -1
- package/dist/alignment/SemanticTextAlignment.js +7 -7
- package/dist/alignment/SemanticTextAlignment.js.map +1 -1
- package/dist/alignment/SpeechAlignment.d.ts +9 -10
- package/dist/alignment/SpeechAlignment.d.ts.map +1 -1
- package/dist/alignment/SpeechAlignment.js +23 -96
- package/dist/alignment/SpeechAlignment.js.map +1 -1
- package/dist/api/APIOptions.d.ts +1 -1
- package/dist/api/APIOptions.d.ts.map +1 -1
- package/dist/api/Alignment.d.ts +8 -6
- package/dist/api/Alignment.d.ts.map +1 -1
- package/dist/api/Alignment.js +31 -40
- package/dist/api/Alignment.js.map +1 -1
- package/dist/api/Common.d.ts +7 -0
- package/dist/api/Common.d.ts.map +1 -1
- package/dist/api/Common.js.map +1 -1
- package/dist/api/Denoising.d.ts +5 -2
- package/dist/api/Denoising.d.ts.map +1 -1
- package/dist/api/Denoising.js +15 -15
- package/dist/api/Denoising.js.map +1 -1
- package/dist/api/GlobalOptions.d.ts +2 -8
- package/dist/api/GlobalOptions.d.ts.map +1 -1
- package/dist/api/GlobalOptions.js +2 -13
- package/dist/api/GlobalOptions.js.map +1 -1
- package/dist/api/Recognition.d.ts +11 -12
- package/dist/api/Recognition.d.ts.map +1 -1
- package/dist/api/Recognition.js +32 -82
- package/dist/api/Recognition.js.map +1 -1
- package/dist/api/SourceSeparation.d.ts +7 -2
- package/dist/api/SourceSeparation.d.ts.map +1 -1
- package/dist/api/SourceSeparation.js +12 -10
- package/dist/api/SourceSeparation.js.map +1 -1
- package/dist/api/SpeechLanguageDetection.d.ts +11 -7
- package/dist/api/SpeechLanguageDetection.d.ts.map +1 -1
- package/dist/api/SpeechLanguageDetection.js +37 -30
- package/dist/api/SpeechLanguageDetection.js.map +1 -1
- package/dist/api/SpeechSearch.d.ts +4 -1
- package/dist/api/SpeechSearch.d.ts.map +1 -1
- package/dist/api/SpeechSearch.js.map +1 -1
- package/dist/api/SpeechTranslation.d.ts +10 -6
- package/dist/api/SpeechTranslation.d.ts.map +1 -1
- package/dist/api/SpeechTranslation.js +28 -26
- package/dist/api/SpeechTranslation.js.map +1 -1
- package/dist/api/Synthesis.d.ts +13 -8
- package/dist/api/Synthesis.d.ts.map +1 -1
- package/dist/api/Synthesis.js +67 -89
- package/dist/api/Synthesis.js.map +1 -1
- package/dist/api/TextLanguageDetection.d.ts +4 -2
- package/dist/api/TextLanguageDetection.d.ts.map +1 -1
- package/dist/api/TextLanguageDetection.js +4 -7
- package/dist/api/TextLanguageDetection.js.map +1 -1
- package/dist/api/TextTranslation.d.ts +4 -2
- package/dist/api/TextTranslation.d.ts.map +1 -1
- package/dist/api/TextTranslation.js +13 -24
- package/dist/api/TextTranslation.js.map +1 -1
- package/dist/api/TimelineTranslationAlignment.d.ts +6 -3
- package/dist/api/TimelineTranslationAlignment.d.ts.map +1 -1
- package/dist/api/TimelineTranslationAlignment.js +20 -11
- package/dist/api/TimelineTranslationAlignment.js.map +1 -1
- package/dist/api/TranscriptAndTranslationAlignment.d.ts +6 -4
- package/dist/api/TranscriptAndTranslationAlignment.d.ts.map +1 -1
- package/dist/api/TranscriptAndTranslationAlignment.js +11 -12
- package/dist/api/TranscriptAndTranslationAlignment.js.map +1 -1
- package/dist/api/TranslationAlignment.d.ts +6 -4
- package/dist/api/TranslationAlignment.d.ts.map +1 -1
- package/dist/api/TranslationAlignment.js +20 -21
- package/dist/api/TranslationAlignment.js.map +1 -1
- package/dist/api/VoiceActivityDetection.d.ts +9 -8
- package/dist/api/VoiceActivityDetection.d.ts.map +1 -1
- package/dist/api/VoiceActivityDetection.js +20 -43
- package/dist/api/VoiceActivityDetection.js.map +1 -1
- package/dist/audio/AudioBufferConversion.js.map +1 -1
- package/dist/audio/AudioPlayer.d.ts +1 -3
- package/dist/audio/AudioPlayer.d.ts.map +1 -1
- package/dist/audio/AudioPlayer.js +3 -188
- package/dist/audio/AudioPlayer.js.map +1 -1
- package/dist/audio/AudioUtilities.d.ts +2 -1
- package/dist/audio/AudioUtilities.d.ts.map +1 -1
- package/dist/audio/AudioUtilities.js +2 -2
- package/dist/audio/AudioUtilities.js.map +1 -1
- package/dist/build-tools/MakeTarballsForInstalledPackages.js +3 -3
- package/dist/build-tools/MakeTarballsForInstalledPackages.js.map +1 -1
- package/dist/cli/CLI.d.ts.map +1 -1
- package/dist/cli/CLI.js +139 -92
- package/dist/cli/CLI.js.map +1 -1
- package/dist/codecs/FFMpegTranscoder.d.ts +4 -3
- package/dist/codecs/FFMpegTranscoder.d.ts.map +1 -1
- package/dist/codecs/FFMpegTranscoder.js +16 -14
- package/dist/codecs/FFMpegTranscoder.js.map +1 -1
- package/dist/codecs/TIMITCodec.d.ts.map +1 -1
- package/dist/data-structures/DynamicTypedArray.d.ts.map +1 -1
- package/dist/data-structures/DynamicTypedArray.js.map +1 -1
- package/dist/data-structures/Queue.d.ts.map +1 -1
- package/dist/data-structures/WindowedList.d.ts.map +1 -1
- package/dist/data-structures/WindowedList.js.map +1 -1
- package/dist/denoising/NSNet2.d.ts +3 -2
- package/dist/denoising/NSNet2.d.ts.map +1 -1
- package/dist/denoising/NSNet2.js +4 -4
- package/dist/denoising/NSNet2.js.map +1 -1
- package/dist/denoising/RNNoise.d.ts +2 -1
- package/dist/denoising/RNNoise.d.ts.map +1 -1
- package/dist/denoising/RNNoise.js +10 -6
- package/dist/denoising/RNNoise.js.map +1 -1
- package/dist/dsp/BiquadFilter.d.ts.map +1 -1
- package/dist/dsp/DecayingPeakEstimator.d.ts.map +1 -1
- package/dist/dsp/DecayingPeakEstimator.js.map +1 -1
- package/dist/dsp/FFT.d.ts.map +1 -1
- package/dist/dsp/FFT.js +2 -1
- package/dist/dsp/FFT.js.map +1 -1
- package/dist/dsp/KWeightingFilter.d.ts.map +1 -1
- package/dist/dsp/KWeightingFilter.js.map +1 -1
- package/dist/dsp/LoudnessEstimator.d.ts.map +1 -1
- package/dist/dsp/LoudnessEstimator.js.map +1 -1
- package/dist/dsp/MFCC.d.ts +3 -2
- package/dist/dsp/MFCC.d.ts.map +1 -1
- package/dist/dsp/MFCC.js +4 -4
- package/dist/dsp/MFCC.js.map +1 -1
- package/dist/dsp/MelSpectrogram.d.ts +10 -8
- package/dist/dsp/MelSpectrogram.d.ts.map +1 -1
- package/dist/dsp/MelSpectrogram.js +31 -34
- package/dist/dsp/MelSpectrogram.js.map +1 -1
- package/dist/dsp/Rubberband.d.ts.map +1 -1
- package/dist/dsp/Rubberband.js +8 -3
- package/dist/dsp/Rubberband.js.map +1 -1
- package/dist/dsp/Sonic.d.ts.map +1 -1
- package/dist/dsp/Sonic.js +1 -1
- package/dist/dsp/Sonic.js.map +1 -1
- package/dist/dsp/SpeexResampler.d.ts.map +1 -1
- package/dist/dsp/SpeexResampler.js +1 -1
- package/dist/dsp/SpeexResampler.js.map +1 -1
- package/dist/encodings/Ascii.d.ts +1 -1
- package/dist/encodings/Ascii.d.ts.map +1 -1
- package/dist/encodings/Base64.js.map +1 -1
- package/dist/encodings/Utf16.d.ts.map +1 -1
- package/dist/encodings/Utf8.d.ts.map +1 -1
- package/dist/math/VectorMath.d.ts +1 -0
- package/dist/math/VectorMath.d.ts.map +1 -1
- package/dist/math/VectorMath.js +9 -5
- package/dist/math/VectorMath.js.map +1 -1
- package/dist/nlp/ChineseSegmentation.d.ts +1 -1
- package/dist/nlp/ChineseSegmentation.d.ts.map +1 -1
- package/dist/nlp/EspeakPhonemizer.d.ts +1 -1
- package/dist/nlp/EspeakPhonemizer.d.ts.map +1 -1
- package/dist/nlp/EspeakPhonemizer.js +2 -2
- package/dist/nlp/EspeakPhonemizer.js.map +1 -1
- package/dist/nlp/IPA.d.ts +2 -2
- package/dist/nlp/Segmentation.d.ts +1 -1
- package/dist/nlp/Segmentation.d.ts.map +1 -1
- package/dist/nlp/Segmentation.js +8 -4
- package/dist/nlp/Segmentation.js.map +1 -1
- package/dist/recognition/AmazonTranscribeSTT.d.ts +2 -1
- package/dist/recognition/AmazonTranscribeSTT.d.ts.map +1 -1
- package/dist/recognition/AmazonTranscribeSTT.js +3 -3
- package/dist/recognition/AmazonTranscribeSTT.js.map +1 -1
- package/dist/recognition/AzureCognitiveServicesSTT.d.ts +2 -1
- package/dist/recognition/AzureCognitiveServicesSTT.d.ts.map +1 -1
- package/dist/recognition/AzureCognitiveServicesSTT.js +4 -4
- package/dist/recognition/AzureCognitiveServicesSTT.js.map +1 -1
- package/dist/recognition/DeepgramSTT.d.ts +2 -1
- package/dist/recognition/DeepgramSTT.d.ts.map +1 -1
- package/dist/recognition/DeepgramSTT.js +12 -13
- package/dist/recognition/DeepgramSTT.js.map +1 -1
- package/dist/recognition/GoogleCloudSTT.d.ts +2 -1
- package/dist/recognition/GoogleCloudSTT.d.ts.map +1 -1
- package/dist/recognition/GoogleCloudSTT.js +11 -10
- package/dist/recognition/GoogleCloudSTT.js.map +1 -1
- package/dist/recognition/OpenAICloudSTT.d.ts +2 -1
- package/dist/recognition/OpenAICloudSTT.d.ts.map +1 -1
- package/dist/recognition/OpenAICloudSTT.js +6 -6
- package/dist/recognition/OpenAICloudSTT.js.map +1 -1
- package/dist/recognition/WhisperCommon.d.ts +9 -0
- package/dist/recognition/WhisperCommon.d.ts.map +1 -0
- package/dist/recognition/WhisperCommon.js +52 -0
- package/dist/recognition/WhisperCommon.js.map +1 -0
- package/dist/recognition/{WhisperCppSTT.d.ts → WhisperCppCliSTT.d.ts} +14 -16
- package/dist/recognition/WhisperCppCliSTT.d.ts.map +1 -0
- package/dist/recognition/{WhisperCppSTT.js → WhisperCppCliSTT.js} +55 -84
- package/dist/recognition/WhisperCppCliSTT.js.map +1 -0
- package/dist/recognition/WhisperSTT.d.ts +72 -85
- package/dist/recognition/WhisperSTT.d.ts.map +1 -1
- package/dist/recognition/WhisperSTT.js +384 -519
- package/dist/recognition/WhisperSTT.js.map +1 -1
- package/dist/server/Client.d.ts +2 -2
- package/dist/server/Client.d.ts.map +1 -1
- package/dist/server/Client.js.map +1 -1
- package/dist/server/Worker.d.ts +6 -7
- package/dist/server/Worker.d.ts.map +1 -1
- package/dist/server/Worker.js +42 -44
- package/dist/server/Worker.js.map +1 -1
- package/dist/source-separation/MDXNetSourceSeparation.d.ts +3 -2
- package/dist/source-separation/MDXNetSourceSeparation.d.ts.map +1 -1
- package/dist/source-separation/MDXNetSourceSeparation.js +10 -8
- package/dist/source-separation/MDXNetSourceSeparation.js.map +1 -1
- package/dist/speech-embeddings/WavToVec2BertFeatureEmbeddings.d.ts +3 -2
- package/dist/speech-embeddings/WavToVec2BertFeatureEmbeddings.d.ts.map +1 -1
- package/dist/speech-embeddings/WavToVec2BertFeatureEmbeddings.js +5 -5
- package/dist/speech-embeddings/WavToVec2BertFeatureEmbeddings.js.map +1 -1
- package/dist/speech-language-detection/SileroLanguageDetection.d.ts +5 -3
- package/dist/speech-language-detection/SileroLanguageDetection.d.ts.map +1 -1
- package/dist/speech-language-detection/SileroLanguageDetection.js +8 -8
- package/dist/speech-language-detection/SileroLanguageDetection.js.map +1 -1
- package/dist/speech-search/DTWSpeechSearch.d.ts +2 -1
- package/dist/speech-search/DTWSpeechSearch.d.ts.map +1 -1
- package/dist/speech-search/DTWSpeechSearch.js +4 -4
- package/dist/speech-search/DTWSpeechSearch.js.map +1 -1
- package/dist/subtitles/Subtitles.d.ts +13 -1
- package/dist/subtitles/Subtitles.d.ts.map +1 -1
- package/dist/subtitles/Subtitles.js +22 -22
- package/dist/subtitles/Subtitles.js.map +1 -1
- package/dist/synthesis/AwsPollyTTS.d.ts +3 -2
- package/dist/synthesis/AwsPollyTTS.d.ts.map +1 -1
- package/dist/synthesis/AwsPollyTTS.js +5 -5
- package/dist/synthesis/AwsPollyTTS.js.map +1 -1
- package/dist/synthesis/AzureCognitiveServicesTTS.d.ts +2 -1
- package/dist/synthesis/AzureCognitiveServicesTTS.d.ts.map +1 -1
- package/dist/synthesis/AzureCognitiveServicesTTS.js +3 -3
- package/dist/synthesis/AzureCognitiveServicesTTS.js.map +1 -1
- package/dist/synthesis/CoquiServerTTS.d.ts +2 -1
- package/dist/synthesis/CoquiServerTTS.d.ts.map +1 -1
- package/dist/synthesis/CoquiServerTTS.js +7 -8
- package/dist/synthesis/CoquiServerTTS.js.map +1 -1
- package/dist/synthesis/DeepgramTTS.d.ts +2 -2
- package/dist/synthesis/DeepgramTTS.d.ts.map +1 -1
- package/dist/synthesis/DeepgramTTS.js +13 -13
- package/dist/synthesis/DeepgramTTS.js.map +1 -1
- package/dist/synthesis/ElevenLabsTTS.d.ts +3 -3
- package/dist/synthesis/ElevenLabsTTS.d.ts.map +1 -1
- package/dist/synthesis/ElevenLabsTTS.js +22 -21
- package/dist/synthesis/ElevenLabsTTS.js.map +1 -1
- package/dist/synthesis/EspeakTTS.d.ts +11 -9
- package/dist/synthesis/EspeakTTS.d.ts.map +1 -1
- package/dist/synthesis/EspeakTTS.js +118 -68
- package/dist/synthesis/EspeakTTS.js.map +1 -1
- package/dist/synthesis/FliteTTS.d.ts +2 -2
- package/dist/synthesis/FliteTTS.d.ts.map +1 -1
- package/dist/synthesis/FliteTTS.js +2 -2
- package/dist/synthesis/FliteTTS.js.map +1 -1
- package/dist/synthesis/GnuSpeechTTS.d.ts +2 -2
- package/dist/synthesis/GnuSpeechTTS.d.ts.map +1 -1
- package/dist/synthesis/GnuSpeechTTS.js +1 -1
- package/dist/synthesis/GnuSpeechTTS.js.map +1 -1
- package/dist/synthesis/GoogleCloudTTS.d.ts +3 -2
- package/dist/synthesis/GoogleCloudTTS.d.ts.map +1 -1
- package/dist/synthesis/GoogleCloudTTS.js +15 -14
- package/dist/synthesis/GoogleCloudTTS.js.map +1 -1
- package/dist/synthesis/GoogleTranslateTTS.d.ts +3 -2
- package/dist/synthesis/GoogleTranslateTTS.d.ts.map +1 -1
- package/dist/synthesis/GoogleTranslateTTS.js +11 -11
- package/dist/synthesis/GoogleTranslateTTS.js.map +1 -1
- package/dist/synthesis/KokoroTTS.d.ts +4 -4
- package/dist/synthesis/KokoroTTS.d.ts.map +1 -1
- package/dist/synthesis/KokoroTTS.js +11 -10
- package/dist/synthesis/KokoroTTS.js.map +1 -1
- package/dist/synthesis/MicrosoftEdgeTTS.d.ts +4 -3
- package/dist/synthesis/MicrosoftEdgeTTS.d.ts.map +1 -1
- package/dist/synthesis/MicrosoftEdgeTTS.js +41 -20
- package/dist/synthesis/MicrosoftEdgeTTS.js.map +1 -1
- package/dist/synthesis/OpenAICloudTTS.d.ts +2 -2
- package/dist/synthesis/OpenAICloudTTS.d.ts.map +1 -1
- package/dist/synthesis/OpenAICloudTTS.js +6 -5
- package/dist/synthesis/OpenAICloudTTS.js.map +1 -1
- package/dist/synthesis/SamTTS.d.ts +2 -1
- package/dist/synthesis/SamTTS.d.ts.map +1 -1
- package/dist/synthesis/SamTTS.js +2 -2
- package/dist/synthesis/SamTTS.js.map +1 -1
- package/dist/synthesis/SapiTTS.d.ts +2 -2
- package/dist/synthesis/SapiTTS.d.ts.map +1 -1
- package/dist/synthesis/SapiTTS.js +2 -2
- package/dist/synthesis/SapiTTS.js.map +1 -1
- package/dist/synthesis/SvoxPicoTTS.d.ts +2 -2
- package/dist/synthesis/SvoxPicoTTS.d.ts.map +1 -1
- package/dist/synthesis/SvoxPicoTTS.js +3 -3
- package/dist/synthesis/SvoxPicoTTS.js.map +1 -1
- package/dist/synthesis/VitsTTS.d.ts +3 -3
- package/dist/synthesis/VitsTTS.d.ts.map +1 -1
- package/dist/synthesis/VitsTTS.js +14 -11
- package/dist/synthesis/VitsTTS.js.map +1 -1
- package/dist/text-translation/DeepLTextTranslation.d.ts +2 -2
- package/dist/text-translation/DeepLTextTranslation.d.ts.map +1 -1
- package/dist/text-translation/DeepLTextTranslation.js +10 -9
- package/dist/text-translation/DeepLTextTranslation.js.map +1 -1
- package/dist/text-translation/GoogleTranslateTextTranslation.d.ts +4 -4
- package/dist/text-translation/GoogleTranslateTextTranslation.d.ts.map +1 -1
- package/dist/text-translation/GoogleTranslateTextTranslation.js +20 -18
- package/dist/text-translation/GoogleTranslateTextTranslation.js.map +1 -1
- package/dist/text-translation/NLLBTextTranslation.d.ts +2 -2
- package/dist/text-translation/NLLBTextTranslation.d.ts.map +1 -1
- package/dist/text-translation/NLLBTextTranslation.js +4 -6
- package/dist/text-translation/NLLBTextTranslation.js.map +1 -1
- package/dist/typings/TypedArray.d.ts.map +1 -1
- package/dist/utilities/Compression.d.ts +4 -3
- package/dist/utilities/Compression.d.ts.map +1 -1
- package/dist/utilities/Compression.js +9 -9
- package/dist/utilities/Compression.js.map +1 -1
- package/dist/utilities/FileDownloader.d.ts +6 -3
- package/dist/utilities/FileDownloader.d.ts.map +1 -1
- package/dist/utilities/FileDownloader.js +25 -21
- package/dist/utilities/FileDownloader.js.map +1 -1
- package/dist/utilities/FileReader.d.ts.map +1 -1
- package/dist/utilities/FileReader.js.map +1 -1
- package/dist/utilities/FileSystem.js +1 -1
- package/dist/utilities/FileSystem.js.map +1 -1
- package/dist/utilities/FileWriter.d.ts.map +1 -1
- package/dist/utilities/FileWriter.js.map +1 -1
- package/dist/utilities/Hashing.d.ts.map +1 -1
- package/dist/utilities/Hashing.js.map +1 -1
- package/dist/utilities/Locale.js.map +1 -1
- package/dist/utilities/Logger.d.ts +17 -9
- package/dist/utilities/Logger.d.ts.map +1 -1
- package/dist/utilities/Logger.js +50 -35
- package/dist/utilities/Logger.js.map +1 -1
- package/dist/utilities/NpmUtilities.d.ts.map +1 -1
- package/dist/utilities/NpmUtilities.js +4 -5
- package/dist/utilities/NpmUtilities.js.map +1 -1
- package/dist/utilities/ObjectUtilities.js.map +1 -1
- package/dist/utilities/OpenPromise.d.ts.map +1 -1
- package/dist/utilities/OpenPromise.js.map +1 -1
- package/dist/utilities/PackageManager.d.ts +4 -1
- package/dist/utilities/PackageManager.d.ts.map +1 -1
- package/dist/utilities/PackageManager.js +37 -22
- package/dist/utilities/PackageManager.js.map +1 -1
- package/dist/utilities/PathUtilities.d.ts +2 -0
- package/dist/utilities/PathUtilities.d.ts.map +1 -1
- package/dist/utilities/PathUtilities.js +5 -2
- package/dist/utilities/PathUtilities.js.map +1 -1
- package/dist/utilities/RandomGenerator.d.ts.map +1 -1
- package/dist/utilities/SignalChannel.d.ts.map +1 -1
- package/dist/utilities/SmoothEstimator.d.ts.map +1 -1
- package/dist/utilities/SmoothEstimator.js.map +1 -1
- package/dist/utilities/StringBuilder.d.ts.map +1 -1
- package/dist/utilities/TarballMaker.d.ts +4 -3
- package/dist/utilities/TarballMaker.d.ts.map +1 -1
- package/dist/utilities/TarballMaker.js +6 -6
- package/dist/utilities/TarballMaker.js.map +1 -1
- package/dist/utilities/Timeline.js.map +1 -1
- package/dist/utilities/Timer.d.ts.map +1 -1
- package/dist/utilities/Utilities.d.ts +9 -7
- package/dist/utilities/Utilities.d.ts.map +1 -1
- package/dist/utilities/Utilities.js +49 -33
- package/dist/utilities/Utilities.js.map +1 -1
- package/dist/utilities/VirtualFileReadStream.d.ts.map +1 -1
- package/dist/utilities/WebReader.d.ts +2 -1
- package/dist/utilities/WebReader.d.ts.map +1 -1
- package/dist/utilities/WebReader.js +7 -6
- package/dist/utilities/WebReader.js.map +1 -1
- package/dist/utilities/WikipediaReader.d.ts +2 -1
- package/dist/utilities/WikipediaReader.d.ts.map +1 -1
- package/dist/utilities/WikipediaReader.js +1 -5
- package/dist/utilities/WikipediaReader.js.map +1 -1
- package/dist/voice-activity-detection/AdaptiveGateVAD.d.ts +2 -1
- package/dist/voice-activity-detection/AdaptiveGateVAD.d.ts.map +1 -1
- package/dist/voice-activity-detection/AdaptiveGateVAD.js +1 -1
- package/dist/voice-activity-detection/AdaptiveGateVAD.js.map +1 -1
- package/dist/voice-activity-detection/SileroVAD.d.ts.map +1 -1
- package/dist/voice-activity-detection/SileroVAD.js.map +1 -1
- package/dist/voice-activity-detection/WebRtcVAD.d.ts.map +1 -1
- package/dist/voice-activity-detection/WebRtcVAD.js +1 -1
- package/dist/voice-activity-detection/WebRtcVAD.js.map +1 -1
- package/docs/API.md +62 -17
- package/docs/CUDA.md +4 -3
- package/docs/Engines.md +8 -7
- package/docs/Licenses.md +0 -3
- package/docs/Options.md +27 -31
- package/docs/Server.md +1 -0
- package/docs/Tasklist.md +2 -1
- package/docs/Technical.md +2 -2
- package/package.json +45 -35
- package/src/alignment/SemanticTextAlignment.ts +14 -7
- package/src/alignment/SpeechAlignment.ts +47 -150
- package/src/api/APIOptions.ts +1 -1
- package/src/api/Alignment.ts +95 -61
- package/src/api/Common.ts +11 -0
- package/src/api/Denoising.ts +22 -17
- package/src/api/GlobalOptions.ts +4 -20
- package/src/api/Recognition.ts +106 -123
- package/src/api/SourceSeparation.ts +39 -21
- package/src/api/SpeechLanguageDetection.ts +77 -37
- package/src/api/SpeechSearch.ts +6 -1
- package/src/api/SpeechTranslation.ts +75 -38
- package/src/api/Synthesis.ts +220 -116
- package/src/api/TextLanguageDetection.ts +10 -12
- package/src/api/TextTranslation.ts +43 -26
- package/src/api/TimelineTranslationAlignment.ts +41 -13
- package/src/api/TranscriptAndTranslationAlignment.ts +28 -15
- package/src/api/TranslationAlignment.ts +53 -24
- package/src/api/VoiceActivityDetection.ts +33 -68
- package/src/audio/AudioPlayer.ts +4 -232
- package/src/audio/AudioUtilities.ts +9 -2
- package/src/build-tools/MakeTarballsForInstalledPackages.ts +4 -3
- package/src/cli/CLI.ts +209 -101
- package/src/codecs/FFMpegTranscoder.ts +18 -16
- package/src/denoising/NSNet2.ts +5 -4
- package/src/denoising/RNNoise.ts +14 -6
- package/src/dsp/FFT.ts +2 -1
- package/src/dsp/MFCC.ts +7 -5
- package/src/dsp/MelSpectrogram.ts +56 -36
- package/src/dsp/Rubberband.ts +10 -3
- package/src/dsp/Sonic.ts +2 -1
- package/src/dsp/SpeexResampler.ts +2 -1
- package/src/encodings/Ascii.ts +1 -1
- package/src/encodings/Base64.ts +1 -1
- package/src/math/VectorMath.ts +10 -6
- package/src/nlp/EspeakPhonemizer.ts +2 -2
- package/src/nlp/Segmentation.ts +9 -4
- package/src/recognition/AmazonTranscribeSTT.ts +4 -3
- package/src/recognition/AzureCognitiveServicesSTT.ts +5 -4
- package/src/recognition/DeepgramSTT.ts +16 -16
- package/src/recognition/GoogleCloudSTT.ts +14 -12
- package/src/recognition/OpenAICloudSTT.ts +12 -6
- package/src/recognition/WhisperCommon.ts +130 -0
- package/src/recognition/{WhisperCppSTT.ts → WhisperCppCliSTT.ts} +73 -133
- package/src/recognition/WhisperSTT.ts +569 -718
- package/src/server/Client.ts +4 -4
- package/src/server/Worker.ts +59 -59
- package/src/source-separation/MDXNetSourceSeparation.ts +15 -10
- package/src/speech-embeddings/WavToVec2BertFeatureEmbeddings.ts +7 -5
- package/src/speech-language-detection/SileroLanguageDetection.ts +18 -9
- package/src/speech-search/DTWSpeechSearch.ts +6 -5
- package/src/subtitles/Subtitles.ts +22 -22
- package/src/synthesis/AwsPollyTTS.ts +12 -5
- package/src/synthesis/AzureCognitiveServicesTTS.ts +11 -3
- package/src/synthesis/CoquiServerTTS.ts +8 -7
- package/src/synthesis/DeepgramTTS.ts +21 -15
- package/src/synthesis/ElevenLabsTTS.ts +33 -23
- package/src/synthesis/EspeakTTS.ts +145 -69
- package/src/synthesis/FliteTTS.ts +3 -3
- package/src/synthesis/GnuSpeechTTS.ts +2 -2
- package/src/synthesis/GoogleCloudTTS.ts +23 -14
- package/src/synthesis/GoogleTranslateTTS.ts +19 -11
- package/src/synthesis/KokoroTTS.ts +37 -14
- package/src/synthesis/MicrosoftEdgeTTS.ts +71 -23
- package/src/synthesis/OpenAICloudTTS.ts +7 -6
- package/src/synthesis/SamTTS.ts +3 -2
- package/src/synthesis/SapiTTS.ts +3 -3
- package/src/synthesis/SvoxPicoTTS.ts +4 -5
- package/src/synthesis/VitsTTS.ts +43 -15
- package/src/text-translation/DeepLTextTranslation.ts +12 -10
- package/src/text-translation/GoogleTranslateTextTranslation.ts +35 -21
- package/src/text-translation/NLLBTextTranslation.ts +5 -9
- package/src/typings/Fillers.d.ts +0 -60
- package/src/typings/TypedArray.ts +12 -1
- package/src/utilities/Compression.ts +10 -9
- package/src/utilities/FileDownloader.ts +38 -23
- package/src/utilities/FileSystem.ts +1 -1
- package/src/utilities/Logger.ts +59 -42
- package/src/utilities/NpmUtilities.ts +4 -6
- package/src/utilities/OpenPromise.ts +1 -2
- package/src/utilities/PackageManager.ts +53 -26
- package/src/utilities/PathUtilities.ts +6 -2
- package/src/utilities/TarballMaker.ts +7 -7
- package/src/utilities/Utilities.ts +58 -41
- package/src/utilities/WebReader.ts +11 -6
- package/src/utilities/WikipediaReader.ts +2 -8
- package/src/voice-activity-detection/AdaptiveGateVAD.ts +13 -8
- package/src/voice-activity-detection/WebRtcVAD.ts +1 -2
- package/tsconfig.json +53 -54
- package/dist/audio/AudioRecorder.d.ts +0 -4
- package/dist/audio/AudioRecorder.d.ts.map +0 -1
- package/dist/audio/AudioRecorder.js +0 -68
- package/dist/audio/AudioRecorder.js.map +0 -1
- package/dist/audio/SoxPath.d.ts +0 -2
- package/dist/audio/SoxPath.d.ts.map +0 -1
- package/dist/audio/SoxPath.js +0 -24
- package/dist/audio/SoxPath.js.map +0 -1
- package/dist/recognition/SileroSTT.d.ts +0 -30
- package/dist/recognition/SileroSTT.d.ts.map +0 -1
- package/dist/recognition/SileroSTT.js +0 -152
- package/dist/recognition/SileroSTT.js.map +0 -1
- package/dist/recognition/VoskSTT.d.ts +0 -11
- package/dist/recognition/VoskSTT.d.ts.map +0 -1
- package/dist/recognition/VoskSTT.js +0 -72
- package/dist/recognition/VoskSTT.js.map +0 -1
- package/dist/recognition/WhisperCppSTT.d.ts.map +0 -1
- package/dist/recognition/WhisperCppSTT.js.map +0 -1
- package/dist/synthesis/StreamlabsPollyTTS.d.ts +0 -12
- package/dist/synthesis/StreamlabsPollyTTS.d.ts.map +0 -1
- package/dist/synthesis/StreamlabsPollyTTS.js +0 -88
- package/dist/synthesis/StreamlabsPollyTTS.js.map +0 -1
- package/dist/utilities/BinaryUtilities.d.ts +0 -14
- package/dist/utilities/BinaryUtilities.d.ts.map +0 -1
- package/dist/utilities/BinaryUtilities.js +0 -113
- package/dist/utilities/BinaryUtilities.js.map +0 -1
- package/src/audio/AudioRecorder.ts +0 -91
- package/src/audio/SoxPath.ts +0 -31
- package/src/recognition/SileroSTT.ts +0 -222
- package/src/recognition/VoskSTT.ts +0 -112
- package/src/synthesis/StreamlabsPollyTTS.ts +0 -114
- package/src/utilities/BinaryUtilities.ts +0 -138
- /package/{LICENSE.md → LICENSE.GPLv3.md} +0 -0
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { float32ToInt16Pcm } from '../audio/AudioBufferConversion.js';
|
|
2
|
-
import { concatFloat32Arrays } from '../utilities/Utilities.js';
|
|
3
|
-
import { wrapEmscriptenModuleHeap } from 'wasm-heap-manager';
|
|
2
|
+
import { concatFloat32Arrays, throwIfAborted } from '../utilities/Utilities.js';
|
|
4
3
|
import { Logger } from '../utilities/Logger.js';
|
|
5
4
|
import { cloneRawAudio } from '../audio/AudioUtilities.js';
|
|
6
5
|
let rnnoiseInstance;
|
|
7
|
-
export async function denoiseAudio(rawAudio) {
|
|
8
|
-
const logger = new Logger();
|
|
6
|
+
export async function denoiseAudio(rawAudio, callbacks) {
|
|
7
|
+
const logger = new Logger(callbacks.logLevel);
|
|
9
8
|
if (rawAudio.sampleRate != 48000) {
|
|
10
9
|
throw new Error(`RNNoise requires a 48000 Hz sample rate (${rawAudio.sampleRate} Hz given)`);
|
|
11
10
|
}
|
|
@@ -18,6 +17,7 @@ export async function denoiseAudio(rawAudio) {
|
|
|
18
17
|
logger.start('Get RNNoise WASM instance');
|
|
19
18
|
const m = await getRnnoiseInstance();
|
|
20
19
|
logger.start('Process with RNNoise');
|
|
20
|
+
const { wrapEmscriptenModuleHeap } = await import('wasm-heap-manager');
|
|
21
21
|
const wasmHeap = wrapEmscriptenModuleHeap(m);
|
|
22
22
|
const stateSize = m._rnnoise_get_size();
|
|
23
23
|
const frameSize = m._rnnoise_get_frame_size();
|
|
@@ -33,7 +33,12 @@ export async function denoiseAudio(rawAudio) {
|
|
|
33
33
|
processedFrames.push(newFrame);
|
|
34
34
|
frameVadProbabilities.push(vadProbability);
|
|
35
35
|
}
|
|
36
|
+
function destroyState() {
|
|
37
|
+
m._rnnoise_destroy(denoiseState);
|
|
38
|
+
wasmHeap.freeAll();
|
|
39
|
+
}
|
|
36
40
|
for (let readOffset = 0; readOffset < int16Samples.length; readOffset += frameSize) {
|
|
41
|
+
throwIfAborted(callbacks.abortSignal, destroyState);
|
|
37
42
|
let frame = int16SamplesAsFloats.subarray(readOffset, readOffset + frameSize);
|
|
38
43
|
if (frame.length < frameSize) {
|
|
39
44
|
frame = concatFloat32Arrays([frame, new Float32Array(frameSize - frame.length)]);
|
|
@@ -49,8 +54,7 @@ export async function denoiseAudio(rawAudio) {
|
|
|
49
54
|
inputRef.view.set(new Float32Array(frameSize));
|
|
50
55
|
const lastFrameVadProbability = m._rnnoise_process_frame(denoiseState, outputRef.address, inputRef.address);
|
|
51
56
|
outputNewFrame(outputRef.view.slice(), lastFrameVadProbability);
|
|
52
|
-
|
|
53
|
-
wasmHeap.freeAll();
|
|
57
|
+
destroyState();
|
|
54
58
|
const int16DenoisedSamplesAsFloats = concatFloat32Arrays(processedFrames);
|
|
55
59
|
let denoisedSamples = int16DenoisedSamplesAsFloats.map(sample => sample / 32768);
|
|
56
60
|
denoisedSamples = denoisedSamples.subarray(0, floatSamples.length);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RNNoise.js","sourceRoot":"","sources":["../../src/denoising/RNNoise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAC/
|
|
1
|
+
{"version":3,"file":"RNNoise.js","sourceRoot":"","sources":["../../src/denoising/RNNoise.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BiquadFilter.d.ts","sourceRoot":"","sources":["../../src/dsp/BiquadFilter.ts"],"names":[],"mappings":"AAYA,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,SAAS,gBAE1F;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,SAAS,gBAE3F;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,SAAI,gBAEtF;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAE/F;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAEhG;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,SAAI,EAAE,IAAI,SAAI,gBAE/F;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,SAAI,gBAEnF;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,SAAI,gBAErF;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,gBAIlH;AAED,qBAAa,YAAY;IACxB,OAAO,CAAC,EAAE,CAAI;IACd,OAAO,CAAC,EAAE,CAAI;IACd,OAAO,CAAC,EAAE,CAAI;IACd,OAAO,CAAC,EAAE,CAAI;IACd,OAAO,CAAC,EAAE,CAAI;IAEd,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,UAAU,CAAI;IAEtB,OAAO,CAAC,WAAW,CAAI;IACvB,OAAO,CAAC,WAAW,CAAI;
|
|
1
|
+
{"version":3,"file":"BiquadFilter.d.ts","sourceRoot":"","sources":["../../src/dsp/BiquadFilter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecayingPeakEstimator.d.ts","sourceRoot":"","sources":["../../src/dsp/DecayingPeakEstimator.ts"],"names":[],"mappings":"AAAA,qBAAa,qBAAqB;aAMhB,OAAO,EAAE,4BAA4B;aACrC,cAAc,EAAE,MAAM;IANvC,SAAgB,YAAY,EAAE,MAAM,CAAA;IAEpC,WAAW,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"DecayingPeakEstimator.d.ts","sourceRoot":"","sources":["../../src/dsp/DecayingPeakEstimator.ts"],"names":[],"mappings":"AAAA,qBAAa,qBAAqB;aAMhB,OAAO,EAAE,4BAA4B;aACrC,cAAc,EAAE,MAAM;IANvC,SAAgB,YAAY,EAAE,MAAM,CAAA;IAEpC,WAAW,EAAE,MAAM,CAAA;IAEnB,YACiB,OAAO,EAAE,4BAA4B,EACrC,cAAc,EAAE,MAAM,EAMtC;IAED,SAAgB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAEhD,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,cAAc;CAItB;AAED,MAAM,WAAW,4BAA4B;IAC5C,IAAI,EAAE,yBAAyB,CAAA;IAC/B,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,yBAAyB,GAAG,SAAS,GAAG,SAAS,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecayingPeakEstimator.js","sourceRoot":"","sources":["../../src/dsp/DecayingPeakEstimator.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAqB;IAMhB;
|
|
1
|
+
{"version":3,"file":"DecayingPeakEstimator.js","sourceRoot":"","sources":["../../src/dsp/DecayingPeakEstimator.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAqB;IAMhB,OAAO;IACP,cAAc;IANf,YAAY,CAAQ;IAEpC,WAAW,CAAQ;IAEnB,YACiB,OAAqC,EACrC,cAAsB;uBADtB,OAAO;8BACP,cAAc;QAE9B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;QAErE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAA;IACtF,CAAC;IAEe,OAAO,CAAyB;IAExC,cAAc,CAAC,KAAa;QACnC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,CAAA;QACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IACrD,CAAC;IAEO,cAAc,CAAC,KAAa;QACnC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,CAAA;QACrC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IACrD,CAAC;CACD"}
|
package/dist/dsp/FFT.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FFT.d.ts","sourceRoot":"","sources":["../../src/dsp/FFT.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"FFT.d.ts","sourceRoot":"","sources":["../../src/dsp/FFT.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAIrD,wBAAsB,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,4CAU/H;AAGD,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,gEA8D9I;AAGD,wBAAsB,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,CAAC,EAAE,MAAM,sCAgFvK;AAGD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,6BASvE;AAGD,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,YAAY,EAAE,+BAEpE;AAGD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,6BAa7D;AAGD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,EAAE,eAAe,UAAQ,mBAwB7E;AAGD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,aAAa,EAAE,6BAW9D;AAGD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;EAKzE;AAGD,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAI5C,aAAa,CAC3C;AAGD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,6BA8B1E;AAED,wBAAsB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,oBAQrE;AAKD,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,OAAO,gBAEzD;AAoBD,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAA"}
|
package/dist/dsp/FFT.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { concatFloat32Arrays, isWasmSimdSupported } from '../utilities/Utilities.js';
|
|
2
|
-
import { createWasmHeapManager } from 'wasm-heap-manager';
|
|
3
2
|
// Compute short-term Fourier transform (real-valued)
|
|
4
3
|
export async function stftr(samples, fftOrder, windowSize, hopSize, windowType) {
|
|
5
4
|
const frames = [];
|
|
@@ -25,6 +24,7 @@ export async function createStftrGenerator(samples, fftOrder, windowSize, hopSiz
|
|
|
25
24
|
samples = concatFloat32Arrays([padding, samples, padding]);
|
|
26
25
|
const windowWeights = getWindowWeights(windowType, windowSize);
|
|
27
26
|
const m = await getPFFFTInstance(await isPffftSimdSupportedForFFTOrder(fftOrder));
|
|
27
|
+
const { createWasmHeapManager } = await import('wasm-heap-manager');
|
|
28
28
|
const wasmHeap = createWasmHeapManager(() => m.HEAPU8.buffer, m._pffft_aligned_malloc, m._pffft_aligned_free);
|
|
29
29
|
const statePtr = m._pffft_new_setup(fftOrder, 0);
|
|
30
30
|
const sampleCount = samples.length;
|
|
@@ -69,6 +69,7 @@ export async function stiftr(binsForFrames, fftOrder, windowSize, hopSize, windo
|
|
|
69
69
|
}
|
|
70
70
|
const outSamples = new Float32Array(outSampleCount);
|
|
71
71
|
const m = await getPFFFTInstance(await isPffftSimdSupportedForFFTOrder(fftOrder));
|
|
72
|
+
const { createWasmHeapManager } = await import('wasm-heap-manager');
|
|
72
73
|
const wasmHeap = createWasmHeapManager(() => m.HEAPU8.buffer, m._pffft_aligned_malloc, m._pffft_aligned_free);
|
|
73
74
|
const statePtr = m._pffft_new_setup(fftOrder, 0);
|
|
74
75
|
const frameBufferRef = wasmHeap.allocFloat32Array(fftOrder);
|
package/dist/dsp/FFT.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FFT.js","sourceRoot":"","sources":["../../src/dsp/FFT.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"FFT.js","sourceRoot":"","sources":["../../src/dsp/FFT.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KWeightingFilter.d.ts","sourceRoot":"","sources":["../../src/dsp/KWeightingFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA+C,MAAM,mBAAmB,CAAC;AAE9F,qBAAa,gBAAgB;aAKX,UAAU,EAAE,MAAM;aAClB,uBAAuB;IALxC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAA;IACtC,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"KWeightingFilter.d.ts","sourceRoot":"","sources":["../../src/dsp/KWeightingFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA+C,MAAM,mBAAmB,CAAC;AAE9F,qBAAa,gBAAgB;aAKX,UAAU,EAAE,MAAM;aAClB,uBAAuB;IALxC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAA;IACtC,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAA;IAErC,YACiB,UAAU,EAAE,MAAM,EAClB,uBAAuB,UAAQ,EAwB/C;IAED,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAO9B;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KWeightingFilter.js","sourceRoot":"","sources":["../../src/dsp/KWeightingFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE9F,MAAM,OAAO,gBAAgB;IAKX;
|
|
1
|
+
{"version":3,"file":"KWeightingFilter.js","sourceRoot":"","sources":["../../src/dsp/KWeightingFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE9F,MAAM,OAAO,gBAAgB;IAKX,UAAU;IACV,uBAAuB;IAL/B,eAAe,CAAc;IAC7B,cAAc,CAAc;IAErC,YACiB,UAAkB,EAClB,uBAAuB,GAAG,KAAK;0BAD/B,UAAU;uCACV,uBAAuB;QAEvC,IAAI,uBAAuB,EAAE,CAAC;YAC7B,wDAAwD;YACxD,gDAAgD;YAChD,IAAI,CAAC,eAAe,GAAG,IAAI,YAAY,CAAC;gBACvC,EAAE,EAAE,gBAAgB;gBACpB,EAAE,EAAE,CAAC,gBAAgB;gBACrB,EAAE,EAAE,gBAAgB;gBACpB,EAAE,EAAE,CAAC,gBAAgB;gBACrB,EAAE,EAAE,gBAAgB;aACpB,CAAC,CAAA;YAEF,IAAI,CAAC,cAAc,GAAG,IAAI,YAAY,CAAC;gBACtC,EAAE,EAAE,GAAG;gBACP,EAAE,EAAE,CAAC,GAAG;gBACR,EAAE,EAAE,GAAG;gBACP,EAAE,EAAE,CAAC,gBAAgB;gBACrB,EAAE,EAAE,gBAAgB;aACpB,CAAC,CAAA;QACH,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;YACrE,IAAI,CAAC,cAAc,GAAG,oBAAoB,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QAClE,CAAC;IACF,CAAC;IAED,OAAO,CAAC,MAAc;QACrB,IAAI,YAAY,GAAG,MAAM,CAAA;QAEzB,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QACxD,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;QAEvD,OAAO,YAAY,CAAA;IACpB,CAAC;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoudnessEstimator.d.ts","sourceRoot":"","sources":["../../src/dsp/LoudnessEstimator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,qBAAa,iBAAiB;aAMD,OAAO,EAAE,wBAAwB;IAL7D,QAAQ,CAAC,cAAc,EAAE,gBAAgB,EAAE,CAAK;IAChD,QAAQ,CAAC,kBAAkB,EAAE,eAAe,EAAE,CAAK;IAEnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"LoudnessEstimator.d.ts","sourceRoot":"","sources":["../../src/dsp/LoudnessEstimator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,qBAAa,iBAAiB;aAMD,OAAO,EAAE,wBAAwB;IAL7D,QAAQ,CAAC,cAAc,EAAE,gBAAgB,EAAE,CAAK;IAChD,QAAQ,CAAC,kBAAkB,EAAE,eAAe,EAAE,CAAK;IAEnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEzB,YAA4B,OAAO,EAAE,wBAAwB,EAiB5D;IAED,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAgBtC;IAED,IAAI,eAAe,WAWlB;IAED,uBAAuB,CAAC,OAAO,EAAE,MAAM,UAEtC;CACD;AAED,MAAM,WAAW,wBAAwB;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,OAAO,CAAA;CACxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoudnessEstimator.js","sourceRoot":"","sources":["../../src/dsp/LoudnessEstimator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,OAAO,iBAAiB;IAMD;
|
|
1
|
+
{"version":3,"file":"LoudnessEstimator.js","sourceRoot":"","sources":["../../src/dsp/LoudnessEstimator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,OAAO,iBAAiB;IAMD,OAAO;IAL1B,cAAc,GAAuB,EAAE,CAAA;IACvC,kBAAkB,GAAsB,EAAE,CAAA;IAE1C,QAAQ,CAAQ;IAEzB,YAA4B,OAAiC;uBAAjC,OAAO;QAClC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QAE7E,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAA;QAE1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,eAAe,GACpB,IAAI,gBAAgB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAEzC,MAAM,kBAAkB,GACvB,IAAI,eAAe,CAAC,OAAO,CAAC,sBAAsB,GAAG,cAAc,EAAE,OAAO,CAAC,sBAAsB,GAAG,cAAc,EAAE,kBAAkB,CAAC,CAAA;YAE1I,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;YACzC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;QACjD,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACnE,CAAC;IAED,OAAO,CAAC,MAAc,EAAE,OAAe;QACtC,IAAI,cAAsB,CAAA;QAE1B,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAClC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC9D,CAAC;aAAM,CAAC;YACP,cAAc,GAAG,MAAM,CAAA;QACxB,CAAC;QAED,MAAM,qBAAqB,GAAG,cAAc,IAAI,CAAC,CAAA;QAEjD,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAE3D,kBAAkB,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;QAEhD,kBAAkB,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IACnF,CAAC;IAED,IAAI,eAAe;QAClB,IAAI,gBAAgB,GAAG,CAAC,CAAA;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,gBAAgB,IAAI,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;QACxD,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QACnE,MAAM,WAAW,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAA;QAE7C,OAAO,WAAW,CAAA;IACnB,CAAC;IAED,uBAAuB,CAAC,OAAe;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC5D,CAAC;CACD"}
|
package/dist/dsp/MFCC.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { RawAudio } from '../audio/AudioUtilities.js';
|
|
2
|
-
|
|
2
|
+
import { OperationCallbacks } from '../api/Common.js';
|
|
3
|
+
export declare function computeMFCCs(monoAudio: RawAudio, options: MfccOptions, callbacks: OperationCallbacks): Promise<Float32Array<ArrayBufferLike>[]>;
|
|
3
4
|
export declare function melSpectrogramToMFCCs(melSpectrogram: ArrayLike<number>[], mfccFeatureCount: number): Float32Array<ArrayBuffer>[];
|
|
4
5
|
export declare function melSpectrumToMFCC(melSpectrum: ArrayLike<number>, mfccFeatureCount: number, dctMatrix: ArrayLike<number>[], normalization?: 'none' | 'orthonormal'): Float32Array<ArrayBuffer>;
|
|
5
6
|
export declare function createDCTType2CoefficientMatrix(mfccFeatureCount: number, melBandCount: number): Float32Array<ArrayBufferLike>[];
|
|
@@ -20,5 +21,5 @@ export type MfccOptions = {
|
|
|
20
21
|
zeroFirstCoefficient?: boolean;
|
|
21
22
|
};
|
|
22
23
|
export declare const defaultMfccOptions: MfccOptions;
|
|
23
|
-
export declare function extendDefaultMfccOptions(options: MfccOptions):
|
|
24
|
+
export declare function extendDefaultMfccOptions(options: MfccOptions): MfccOptions;
|
|
24
25
|
//# sourceMappingURL=MFCC.d.ts.map
|
package/dist/dsp/MFCC.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MFCC.d.ts","sourceRoot":"","sources":["../../src/dsp/MFCC.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAmB,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"MFCC.d.ts","sourceRoot":"","sources":["../../src/dsp/MFCC.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAmB,MAAM,4BAA4B,CAAA;AAEtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAErD,wBAAsB,YAAY,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,4CAkE1G;AAED,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,gBAAgB,EAAE,MAAM,+BAOlG;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,GAAE,MAAM,GAAG,aAA6B,6BAmChL;AAED,wBAAgB,+BAA+B,CAAC,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mCAgB7F;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,cAAc,SAAO,EAAE,YAAY,SAAI,6BAUhG;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,EAAE,MAAM,mCAsBjF;AAED,MAAM,MAAM,WAAW,GAAG;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC9B,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,WAahC,CAAA;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAE1E"}
|
package/dist/dsp/MFCC.js
CHANGED
|
@@ -4,13 +4,13 @@ import { resampleAudioSpeex } from './SpeexResampler.js';
|
|
|
4
4
|
import { computeMelSpectrogram } from './MelSpectrogram.js';
|
|
5
5
|
import { powerToDecibels } from '../audio/AudioUtilities.js';
|
|
6
6
|
import { normalizeVectors } from '../math/VectorMath.js';
|
|
7
|
-
export async function computeMFCCs(monoAudio, options
|
|
8
|
-
const logger = new Logger();
|
|
7
|
+
export async function computeMFCCs(monoAudio, options, callbacks) {
|
|
8
|
+
const logger = new Logger(callbacks.logLevel);
|
|
9
9
|
logger.start('Initialize options');
|
|
10
10
|
if (monoAudio.audioChannels.length != 1) {
|
|
11
11
|
throw new Error('Audio must be mono');
|
|
12
12
|
}
|
|
13
|
-
options = extendDefaultMfccOptions(options);
|
|
13
|
+
options = extendDefaultMfccOptions(options ?? {});
|
|
14
14
|
const analysisSampleRate = options.analysisSampleRate;
|
|
15
15
|
const featureCount = options.featureCount;
|
|
16
16
|
const fftOrder = options.fftOrder;
|
|
@@ -31,7 +31,7 @@ export async function computeMFCCs(monoAudio, options = {}) {
|
|
|
31
31
|
resampledAudio.audioChannels[0] = applyEmphasis(resampledAudio.audioChannels[0], emphasisFactor);
|
|
32
32
|
}
|
|
33
33
|
logger.start('Compute Mel spectrogram');
|
|
34
|
-
const { melSpectrogram } = await computeMelSpectrogram(resampledAudio, fftOrder, windowSize, hopLength, filterbankCount, lowerFrequencyHz, upperFrequencyHz);
|
|
34
|
+
const { melSpectrogram } = await computeMelSpectrogram(resampledAudio, fftOrder, windowSize, hopLength, filterbankCount, lowerFrequencyHz, upperFrequencyHz, undefined, callbacks);
|
|
35
35
|
logger.start('Extract MFCCs from Mel spectrogram');
|
|
36
36
|
let mfccs = melSpectrogramToMFCCs(melSpectrogram, featureCount);
|
|
37
37
|
if (options.normalize) {
|
package/dist/dsp/MFCC.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MFCC.js","sourceRoot":"","sources":["../../src/dsp/MFCC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAY,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"MFCC.js","sourceRoot":"","sources":["../../src/dsp/MFCC.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,23 @@
|
|
|
1
|
+
import { OperationCallbacks } from '../api/Common.js';
|
|
1
2
|
import { RawAudio } from '../audio/AudioUtilities.js';
|
|
2
3
|
import * as FFT from './FFT.js';
|
|
3
|
-
export declare function computeMelSpectrogram(rawAudio: RawAudio, fftOrder: number, windowSize: number, hopLength: number,
|
|
4
|
+
export declare function computeMelSpectrogram(rawAudio: RawAudio, fftOrder: number, windowSize: number, hopLength: number, melBandCount: number, lowerFrequencyHz: number, upperFrequencyHz: number, windowType: FFT.WindowType | undefined, callbacks: OperationCallbacks): Promise<{
|
|
4
5
|
melSpectrogram: Float32Array<ArrayBuffer>[];
|
|
5
6
|
fftFrames: Float32Array<ArrayBufferLike>[];
|
|
6
7
|
}>;
|
|
7
|
-
export declare function
|
|
8
|
+
export declare function computeMelSpectrogramUsingFilterbank(rawAudio: RawAudio, fftOrder: number, windowSize: number, hopLength: number, filterbank: Filterbank, windowType: FFT.WindowType | undefined, callbacks: OperationCallbacks): Promise<{
|
|
8
9
|
melSpectrogram: Float32Array<ArrayBuffer>[];
|
|
9
10
|
fftFrames: Float32Array<ArrayBufferLike>[];
|
|
10
11
|
}>;
|
|
11
|
-
export declare function fftFramesToMelSpectrogram(fftFrames: Float32Array[],
|
|
12
|
-
export declare function powerSpectrumToMelSpectrum(powerSpectrum: Float32Array,
|
|
13
|
-
export declare function
|
|
14
|
-
export declare function
|
|
12
|
+
export declare function fftFramesToMelSpectrogram(fftFrames: Float32Array[], melFilterbank: Filterbank): Float32Array<ArrayBuffer>[];
|
|
13
|
+
export declare function powerSpectrumToMelSpectrum(powerSpectrum: Float32Array, filterbank: Filterbank): Float32Array<ArrayBuffer>;
|
|
14
|
+
export declare function getMelFilterbank(powerSpectrumFrequenciesHz: Float32Array, centerFrequenciesMel: Float32Array, lowerFrequencyMel: number, upperFrequencyMel: number): Filterbank;
|
|
15
|
+
export declare function getMelFilterbankCenterFrequencies(melBandCount: number, lowerFrequencyMel: number, upperFrequencyMel: number): Float32Array<ArrayBuffer>;
|
|
15
16
|
export declare function hertzToMel(frequency: number): number;
|
|
16
17
|
export declare function melToHertz(mel: number): number;
|
|
17
|
-
export type Filterbank =
|
|
18
|
+
export type Filterbank = FilterbankElement[];
|
|
19
|
+
export interface FilterbankElement {
|
|
18
20
|
startIndex: number;
|
|
19
21
|
weights: number[];
|
|
20
|
-
}
|
|
22
|
+
}
|
|
21
23
|
//# sourceMappingURL=MelSpectrogram.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MelSpectrogram.d.ts","sourceRoot":"","sources":["../../src/dsp/MelSpectrogram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAErD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,wBAAsB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"MelSpectrogram.d.ts","sourceRoot":"","sources":["../../src/dsp/MelSpectrogram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAErD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,wBAAsB,qBAAqB,CAC1C,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,GAAG,CAAC,UAAU,YAAS,EACnC,SAAS,EAAE,kBAAkB;;;GAa7B;AAED,wBAAsB,oCAAoC,CACzD,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,GAAG,CAAC,UAAU,YAAS,EACnC,SAAS,EAAE,kBAAkB;;;GAc7B;AAED,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,aAAa,EAAE,UAAU,+BAM7F;AAED,wBAAgB,0BAA0B,CAAC,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,6BAgC7F;AAED,wBAAgB,gBAAgB,CAC/B,0BAA0B,EAAE,YAAY,EACxC,oBAAoB,EAAE,YAAY,EAClC,iBAAiB,EAAE,MAAM,EACzB,iBAAiB,EAAE,MAAM,cAiDzB;AAED,wBAAgB,iCAAiC,CAAC,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,6BAU3H;AAED,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,UAE3C;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,UAErC;AAED,MAAM,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAA;AAE5C,MAAM,WAAW,iBAAiB;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,EAAE,CAAA;CACjB"}
|
|
@@ -1,51 +1,48 @@
|
|
|
1
1
|
import { Logger } from '../utilities/Logger.js';
|
|
2
2
|
import * as FFT from './FFT.js';
|
|
3
|
-
export async function computeMelSpectrogram(rawAudio, fftOrder, windowSize, hopLength,
|
|
4
|
-
const logger = new Logger();
|
|
5
|
-
logger.start('Compute Mel filterbank');
|
|
3
|
+
export async function computeMelSpectrogram(rawAudio, fftOrder, windowSize, hopLength, melBandCount, lowerFrequencyHz, upperFrequencyHz, windowType = 'hann', callbacks) {
|
|
6
4
|
const binCount = (fftOrder / 2) + 2;
|
|
7
5
|
const nyquistFrequency = rawAudio.sampleRate / 2;
|
|
8
6
|
const binFrequencies = FFT.getBinFrequencies(binCount, nyquistFrequency);
|
|
9
7
|
const lowerFrequencyMel = hertzToMel(lowerFrequencyHz);
|
|
10
8
|
const upperFrequencyMel = hertzToMel(upperFrequencyHz);
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
return computeMelSpectrogramUsingFilterbanks(rawAudio, fftOrder, windowSize, hopLength, melFilterbanks, windowType);
|
|
9
|
+
const filterbankCenterFrequencies = getMelFilterbankCenterFrequencies(melBandCount, lowerFrequencyMel, upperFrequencyMel);
|
|
10
|
+
const melFilterbank = getMelFilterbank(binFrequencies, filterbankCenterFrequencies, lowerFrequencyMel, upperFrequencyMel);
|
|
11
|
+
return computeMelSpectrogramUsingFilterbank(rawAudio, fftOrder, windowSize, hopLength, melFilterbank, windowType, callbacks);
|
|
15
12
|
}
|
|
16
|
-
export async function
|
|
17
|
-
const logger = new Logger();
|
|
13
|
+
export async function computeMelSpectrogramUsingFilterbank(rawAudio, fftOrder, windowSize, hopLength, filterbank, windowType = 'hann', callbacks) {
|
|
14
|
+
const logger = new Logger(callbacks.logLevel);
|
|
18
15
|
logger.start('Compute short-time FFTs');
|
|
19
16
|
const audioSamples = rawAudio.audioChannels[0];
|
|
20
17
|
const fftFrames = await FFT.stftr(audioSamples, fftOrder, windowSize, hopLength, windowType);
|
|
21
18
|
logger.start('Convert FFT frames to Mel spectrogram');
|
|
22
|
-
const melSpectrogram = fftFramesToMelSpectrogram(fftFrames,
|
|
19
|
+
const melSpectrogram = fftFramesToMelSpectrogram(fftFrames, filterbank);
|
|
23
20
|
logger.end();
|
|
24
21
|
return { melSpectrogram, fftFrames };
|
|
25
22
|
}
|
|
26
|
-
export function fftFramesToMelSpectrogram(fftFrames,
|
|
23
|
+
export function fftFramesToMelSpectrogram(fftFrames, melFilterbank) {
|
|
27
24
|
return fftFrames.map(fftFrame => {
|
|
28
25
|
const powerSpectrum = FFT.fftFrameToPowerSpectrum(fftFrame);
|
|
29
|
-
return powerSpectrumToMelSpectrum(powerSpectrum,
|
|
26
|
+
return powerSpectrumToMelSpectrum(powerSpectrum, melFilterbank);
|
|
30
27
|
});
|
|
31
28
|
}
|
|
32
|
-
export function powerSpectrumToMelSpectrum(powerSpectrum,
|
|
33
|
-
const
|
|
34
|
-
const melSpectrum = new Float32Array(
|
|
35
|
-
for (let melBandIndex = 0; melBandIndex <
|
|
36
|
-
const
|
|
37
|
-
const
|
|
38
|
-
const
|
|
39
|
-
if (
|
|
29
|
+
export function powerSpectrumToMelSpectrum(powerSpectrum, filterbank) {
|
|
30
|
+
const melBandCount = filterbank.length;
|
|
31
|
+
const melSpectrum = new Float32Array(melBandCount);
|
|
32
|
+
for (let melBandIndex = 0; melBandIndex < melBandCount; melBandIndex++) {
|
|
33
|
+
const melFilter = filterbank[melBandIndex];
|
|
34
|
+
const melFilterStartIndex = melFilter.startIndex;
|
|
35
|
+
const melFilterWeights = melFilter.weights;
|
|
36
|
+
if (melFilterStartIndex === -1) {
|
|
40
37
|
continue;
|
|
41
38
|
}
|
|
42
39
|
let melBandValue = 0;
|
|
43
|
-
for (let i = 0; i <
|
|
44
|
-
const powerSpectrumIndex =
|
|
40
|
+
for (let i = 0; i < melFilterWeights.length; i++) {
|
|
41
|
+
const powerSpectrumIndex = melFilterStartIndex + i;
|
|
45
42
|
if (powerSpectrumIndex >= powerSpectrum.length) {
|
|
46
43
|
break;
|
|
47
44
|
}
|
|
48
|
-
const weight =
|
|
45
|
+
const weight = melFilterWeights[i];
|
|
49
46
|
const powerSpectrumValue = powerSpectrum[powerSpectrumIndex];
|
|
50
47
|
melBandValue += weight * powerSpectrumValue;
|
|
51
48
|
}
|
|
@@ -53,21 +50,21 @@ export function powerSpectrumToMelSpectrum(powerSpectrum, filterbanks) {
|
|
|
53
50
|
}
|
|
54
51
|
return melSpectrum;
|
|
55
52
|
}
|
|
56
|
-
export function
|
|
57
|
-
const
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
for (let filterbankIndex = 0; filterbankIndex < filterbankCount; filterbankIndex++) {
|
|
53
|
+
export function getMelFilterbank(powerSpectrumFrequenciesHz, centerFrequenciesMel, lowerFrequencyMel, upperFrequencyMel) {
|
|
54
|
+
const melBandCount = centerFrequenciesMel.length;
|
|
55
|
+
const filterbank = [];
|
|
56
|
+
for (let filterbankIndex = 0; filterbankIndex < melBandCount; filterbankIndex++) {
|
|
61
57
|
const centerFrequency = centerFrequenciesMel[filterbankIndex];
|
|
62
58
|
const leftFrequency = filterbankIndex > 0 ? centerFrequenciesMel[filterbankIndex - 1] : lowerFrequencyMel;
|
|
63
|
-
const rightFrequency = filterbankIndex <
|
|
59
|
+
const rightFrequency = filterbankIndex < melBandCount - 1 ? centerFrequenciesMel[filterbankIndex + 1] : upperFrequencyMel;
|
|
64
60
|
const width = rightFrequency - leftFrequency;
|
|
65
61
|
const halfWidth = width / 2;
|
|
66
62
|
let startIndex = -1;
|
|
67
63
|
let weights = [];
|
|
68
64
|
let weightSum = 0;
|
|
69
|
-
for (let powerSpectrumBandIndex = 0; powerSpectrumBandIndex <
|
|
70
|
-
const
|
|
65
|
+
for (let powerSpectrumBandIndex = 0; powerSpectrumBandIndex < powerSpectrumFrequenciesHz.length; powerSpectrumBandIndex++) {
|
|
66
|
+
const powerSpectrumBandFrequencyHz = powerSpectrumFrequenciesHz[powerSpectrumBandIndex];
|
|
67
|
+
const powerSpectrumBandFrequencyMel = hertzToMel(powerSpectrumBandFrequencyHz);
|
|
71
68
|
let weight = 0;
|
|
72
69
|
if (powerSpectrumBandFrequencyMel >= leftFrequency && powerSpectrumBandFrequencyMel <= centerFrequency) {
|
|
73
70
|
weight = (powerSpectrumBandFrequencyMel - leftFrequency) / halfWidth;
|
|
@@ -87,11 +84,11 @@ export function getMelFilterbanks(powerSpectrumFrequenciesHz, centerFrequenciesM
|
|
|
87
84
|
}
|
|
88
85
|
}
|
|
89
86
|
weights = weights.map(weight => weight / weightSum);
|
|
90
|
-
|
|
87
|
+
filterbank.push({ startIndex, weights });
|
|
91
88
|
}
|
|
92
|
-
return
|
|
89
|
+
return filterbank;
|
|
93
90
|
}
|
|
94
|
-
export function
|
|
91
|
+
export function getMelFilterbankCenterFrequencies(melBandCount, lowerFrequencyMel, upperFrequencyMel) {
|
|
95
92
|
const stepSizeMel = (upperFrequencyMel - lowerFrequencyMel) / (melBandCount + 1);
|
|
96
93
|
const centerFrequencies = new Float32Array(melBandCount);
|
|
97
94
|
for (let i = 0; i < melBandCount; i++) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MelSpectrogram.js","sourceRoot":"","sources":["../../src/dsp/MelSpectrogram.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MelSpectrogram.js","sourceRoot":"","sources":["../../src/dsp/MelSpectrogram.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rubberband.d.ts","sourceRoot":"","sources":["../../src/dsp/Rubberband.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Rubberband.d.ts","sourceRoot":"","sources":["../../src/dsp/Rubberband.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAOrD,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,qBAyGvH;AAED,wBAAsB,qBAAqB,iBAY1C;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,UAoDlE;AAED,oBAAY,oBAAoB;IAC/B,cAAc,IAAa;IAC3B,eAAe,IAAa;IAE5B,cAAc,IAAa;IAC3B,cAAc,KAAa;IAE3B,eAAe,IAAa;IAC5B,eAAe,MAAa;IAC5B,gBAAgB,MAAa;IAE7B,gBAAgB,IAAa;IAC7B,kBAAkB,OAAa;IAC/B,YAAY,OAAa;IAEzB,YAAY,IAAa;IACzB,gBAAgB,OAAa;IAE7B,aAAa,IAAa;IAC1B,cAAc,QAAa;IAC3B,eAAe,SAAa;IAE5B,cAAc,IAAa;IAC3B,WAAW,UAAa;IACxB,UAAU,UAAa;IAEvB,YAAY,IAAa;IACzB,WAAW,UAAa;IAExB,cAAc,IAAa;IAC3B,gBAAgB,WAAa;IAE7B,cAAc,IAAa;IAC3B,gBAAgB,WAAa;IAC7B,oBAAoB,WAAa;IAEjC,aAAa,IAAa;IAC1B,gBAAgB,YAAa;IAE7B,YAAY,IAAa;IACzB,WAAW,YAAa;CACxB;AAED,oBAAY,sBAAsB;IACjC,cAAc,IAAa;IAC3B,iBAAiB,UAAa;CAC9B;AAED,eAAO,MAAM,wBAAwB,EAAE,iBAWtC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC/B,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;IAC/B,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;IACzC,QAAQ,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,MAAM,CAAA;IAC7C,KAAK,CAAC,EAAE,SAAS,GAAG,aAAa,CAAA;IACjC,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAAA;IACtC,SAAS,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;IACxB,OAAO,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAA;IAChC,KAAK,CAAC,EAAE,YAAY,GAAG,cAAc,GAAG,kBAAkB,CAAA;IAC1D,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,CAAA;IAC/B,MAAM,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;CAC3B,CAAA"}
|
package/dist/dsp/Rubberband.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { extendDeep } from '../utilities/ObjectUtilities.js';
|
|
2
2
|
import { concatFloat32Arrays } from '../utilities/Utilities.js';
|
|
3
|
-
import { wrapEmscriptenModuleHeap } from 'wasm-heap-manager';
|
|
4
3
|
let rubberbandInstance;
|
|
5
4
|
export async function stretchTimePitch(rawAudio, speed, pitchScale, options) {
|
|
6
5
|
options = extendDeep(defaultRubberbandOptions, options);
|
|
@@ -9,6 +8,7 @@ export async function stretchTimePitch(rawAudio, speed, pitchScale, options) {
|
|
|
9
8
|
const sampleCount = channels[0].length;
|
|
10
9
|
const sampleRate = rawAudio.sampleRate;
|
|
11
10
|
const m = await getRubberbandInstance();
|
|
11
|
+
const { wrapEmscriptenModuleHeap } = await import('wasm-heap-manager');
|
|
12
12
|
const wasmHeap = wrapEmscriptenModuleHeap(m);
|
|
13
13
|
const optionFlags = rubberBandOptionsToFlags(options);
|
|
14
14
|
const statePtr = m._rubberband_new(sampleRate, channelCount, optionFlags, 1, 1);
|
|
@@ -83,8 +83,13 @@ export async function stretchTimePitch(rawAudio, speed, pitchScale, options) {
|
|
|
83
83
|
}
|
|
84
84
|
export async function getRubberbandInstance() {
|
|
85
85
|
if (!rubberbandInstance) {
|
|
86
|
-
|
|
87
|
-
|
|
86
|
+
try {
|
|
87
|
+
const { default: RubberbandInitializer } = await import('@echogarden/rubberband-wasm');
|
|
88
|
+
rubberbandInstance = await RubberbandInitializer();
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
throw new Error(`Couldn't load the '@echogarden/rubberband-wasm' module. Since Echogarden v3.0.0 it is an optional dependency, due to its GPL-2 license. To enable it, you'll need to install it manually via 'npm install [-g] @echogarden/rubberband-wasm'.`);
|
|
92
|
+
}
|
|
88
93
|
}
|
|
89
94
|
return rubberbandInstance;
|
|
90
95
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rubberband.js","sourceRoot":"","sources":["../../src/dsp/Rubberband.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Rubberband.js","sourceRoot":"","sources":["../../src/dsp/Rubberband.ts"],"names":[],"mappings":"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"}
|
package/dist/dsp/Sonic.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sonic.d.ts","sourceRoot":"","sources":["../../src/dsp/Sonic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"Sonic.d.ts","sourceRoot":"","sources":["../../src/dsp/Sonic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAIrD,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBA6C3F"}
|
package/dist/dsp/Sonic.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { wrapEmscriptenModuleHeap } from 'wasm-heap-manager';
|
|
2
1
|
let sonicInstance;
|
|
3
2
|
export async function stretchTimePitch(rawAudio, speed, pitchScale) {
|
|
4
3
|
const sampleRate = rawAudio.sampleRate;
|
|
@@ -6,6 +5,7 @@ export async function stretchTimePitch(rawAudio, speed, pitchScale) {
|
|
|
6
5
|
const inputSamples = rawAudio.audioChannels[0];
|
|
7
6
|
const inputSampleCount = rawAudio.audioChannels[0].length;
|
|
8
7
|
const m = await getSonicInstance();
|
|
8
|
+
const { wrapEmscriptenModuleHeap } = await import('wasm-heap-manager');
|
|
9
9
|
const wasmHeap = wrapEmscriptenModuleHeap(m);
|
|
10
10
|
const streamPtr = m._sonicCreateStream(sampleRate, channelCount);
|
|
11
11
|
m._sonicSetSpeed(streamPtr, speed);
|
package/dist/dsp/Sonic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sonic.js","sourceRoot":"","sources":["../../src/dsp/Sonic.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Sonic.js","sourceRoot":"","sources":["../../src/dsp/Sonic.ts"],"names":[],"mappings":"AAEA,IAAI,aAAkB,CAAA;AAEtB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,QAAkB,EAAE,KAAa,EAAE,UAAkB;IAC3F,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAA;IACtC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAA;IAClD,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;IAC9C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAEzD,MAAM,CAAC,GAAG,MAAM,gBAAgB,EAAE,CAAA;IAElC,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAA;IACtE,MAAM,QAAQ,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAA;IAE5C,MAAM,SAAS,GAAG,CAAC,CAAC,kBAAkB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;IAChE,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;IAClC,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IAEvC,MAAM,eAAe,GAAG,QAAQ,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAA;IACpE,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAEtC,MAAM,YAAY,GAAG,CAAC,CAAC,wBAAwB,CAAC,SAAS,EAAE,eAAe,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;IAErG,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,YAAY,GAAG,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;IAEnD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,gBAAgB,GAAG,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAA;IAE5D,MAAM,gBAAgB,GAAG,QAAQ,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAA;IAErE,MAAM,WAAW,GAAG,CAAC,CAAC,yBAAyB,CAAC,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,CAAA;IAEzH,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;IAEjE,MAAM,WAAW,GAAa,EAAE,aAAa,EAAE,CAAC,aAAa,CAAC,EAAE,UAAU,EAAE,CAAA;IAE5E,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAEhC,QAAQ,CAAC,OAAO,EAAE,CAAA;IAElB,OAAO,WAAW,CAAA;AACnB,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;QACpB,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAA;QAE5E,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAA;IACzC,CAAC;IAED,OAAO,aAAa,CAAA;AACrB,CAAC"}
|