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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TranscriptAndTranslationAlignment.d.ts","sourceRoot":"","sources":["../../src/api/TranscriptAndTranslationAlignment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TranscriptAndTranslationAlignment.d.ts","sourceRoot":"","sources":["../../src/api/TranscriptAndTranslationAlignment.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAI/B,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAGvE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAEhE,wBAAsB,6BAA6B,CAAC,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,wCAAwC,EAAE,SAAS,CAAC,EAAE,0CAA0C,GAAG,OAAO,CAAC,uCAAuC,CAAC,CAwE1R;AAED,MAAM,WAAW,uCAAuC;IACvD,QAAQ,EAAE,QAAQ,CAAA;IAClB,YAAY,EAAE,QAAQ,CAAA;IAEtB,kBAAkB,EAAE,QAAQ,CAAA;IAC5B,sBAAsB,EAAE,QAAQ,CAAA;IAEhC,UAAU,EAAE,MAAM,CAAA;IAClB,oBAAoB,EAAE,MAAM,CAAA;IAE5B,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IAEtB,aAAa,EAAE,QAAQ,CAAA;IACvB,gBAAgB,CAAC,EAAE,QAAQ,CAAA;IAC3B,kBAAkB,CAAC,EAAE,QAAQ,CAAA;CAC7B;AAED,MAAM,MAAM,uCAAuC,GAAG,WAAW,CAAA;AAEjE,MAAM,WAAW,wCAAyC,SAAQ,GAAG,CAAC,gBAAgB;IACrF,MAAM,CAAC,EAAE,uCAAuC,CAAA;IAEhD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd,SAAS,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAA;IAEhC,iBAAiB,CAAC,EAAE,GAAG,CAAC,mCAAmC,CAAA;IAE3D,iBAAiB,CAAC,EAAE,GAAG,CAAC,4BAA4B,CAAA;IAEpD,GAAG,CAAC,EAAE,GAAG,CAAC,6BAA6B,CAAA;IAEvC,SAAS,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAA;IAEhC,SAAS,CAAC,EAAE,eAAe,CAAA;IAE3B,gBAAgB,CAAC,EAAE,GAAG,CAAC,uBAAuB,CAAA;CAC9C;AAED,eAAO,MAAM,+CAA+C,EAAE,wCAiC7D,CAAA;AAED,MAAM,WAAW,0CAA2C,SAAQ,GAAG,CAAC,kBAAkB;CACzF;AAED,eAAO,MAAM,wCAAwC,EAAE,GAAG,CAAC,cAAc,EAOxE,CAAA"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import * as API from './API.js';
|
|
1
3
|
import { extendDeep } from '../utilities/ObjectUtilities.js';
|
|
2
|
-
import { logToStderr } from '../utilities/Utilities.js';
|
|
3
4
|
import { Logger } from '../utilities/Logger.js';
|
|
4
|
-
|
|
5
|
-
import chalk from 'chalk';
|
|
6
|
-
const log = logToStderr;
|
|
7
|
-
export async function alignTranscriptAndTranslation(input, transcript, translatedTranscript, options) {
|
|
8
|
-
const logger = new Logger();
|
|
9
|
-
const startTimestamp = logger.getTimestamp();
|
|
5
|
+
export async function alignTranscriptAndTranslation(input, transcript, translatedTranscript, options, callbacks) {
|
|
10
6
|
options = extendDeep(defaultTranscriptAndTranslationAlignmentOptions, options);
|
|
7
|
+
callbacks = { logLevel: API.getGlobalLogLevel(), ...callbacks };
|
|
8
|
+
const logger = new Logger(callbacks.logLevel);
|
|
9
|
+
const startTimestamp = logger.getTimestamp();
|
|
11
10
|
if (options.sourceLanguage && !options.alignment?.language) {
|
|
12
11
|
options.alignment = extendDeep(options.alignment || {}, { language: options.sourceLanguage });
|
|
13
12
|
}
|
|
@@ -18,13 +17,13 @@ export async function alignTranscriptAndTranslation(input, transcript, translate
|
|
|
18
17
|
let timelineAlignmentResult;
|
|
19
18
|
switch (options.engine) {
|
|
20
19
|
case 'two-stage': {
|
|
21
|
-
logger.logTitledMessage(`Start stage 1`, `Align speech to transcript`, chalk.magentaBright);
|
|
20
|
+
logger.logTitledMessage(`Start stage 1`, `Align speech to transcript`, 'info', chalk.magentaBright);
|
|
22
21
|
logger.end();
|
|
23
|
-
alignmentResult = await API.align(input, transcript, options.alignment
|
|
22
|
+
alignmentResult = await API.align(input, transcript, options.alignment, callbacks);
|
|
24
23
|
logger.log(``);
|
|
25
|
-
logger.logTitledMessage(`Start stage 2`, `Align timeline to translated transcript`, chalk.magentaBright);
|
|
24
|
+
logger.logTitledMessage(`Start stage 2`, `Align timeline to translated transcript`, 'info', chalk.magentaBright);
|
|
26
25
|
logger.end();
|
|
27
|
-
timelineAlignmentResult = await API.alignTimelineTranslation(alignmentResult.timeline, translatedTranscript, options.timelineAlignment
|
|
26
|
+
timelineAlignmentResult = await API.alignTimelineTranslation(alignmentResult.timeline, translatedTranscript, options.timelineAlignment, callbacks);
|
|
28
27
|
break;
|
|
29
28
|
}
|
|
30
29
|
default: {
|
|
@@ -33,7 +32,7 @@ export async function alignTranscriptAndTranslation(input, transcript, translate
|
|
|
33
32
|
}
|
|
34
33
|
logger.end();
|
|
35
34
|
logger.log(``);
|
|
36
|
-
logger.logDuration(`Total transcript and translation alignment time`, startTimestamp, chalk.magentaBright);
|
|
35
|
+
logger.logDuration(`Total transcript and translation alignment time`, startTimestamp, 'info', chalk.magentaBright);
|
|
37
36
|
return {
|
|
38
37
|
timeline: alignmentResult.timeline,
|
|
39
38
|
wordTimeline: alignmentResult.wordTimeline,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TranscriptAndTranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TranscriptAndTranslationAlignment.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"TranscriptAndTranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TranscriptAndTranslationAlignment.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { AudioSourceParam, RawAudio } from '../audio/AudioUtilities.js';
|
|
2
1
|
import * as API from './API.js';
|
|
2
|
+
import { AudioSourceParam, RawAudio } from '../audio/AudioUtilities.js';
|
|
3
3
|
import { Timeline } from '../utilities/Timeline.js';
|
|
4
4
|
import { type WhisperAlignmentOptions } from '../recognition/WhisperSTT.js';
|
|
5
5
|
import { type SubtitlesConfig } from '../subtitles/Subtitles.js';
|
|
6
|
-
export declare function alignTranslation(input: AudioSourceParam, translatedTranscript: string, options: TranslationAlignmentOptions): Promise<TranslationAlignmentResult>;
|
|
6
|
+
export declare function alignTranslation(input: AudioSourceParam, translatedTranscript: string, options: TranslationAlignmentOptions, callbacks?: TranslationAlignmentCallbacks): Promise<TranslationAlignmentResult>;
|
|
7
7
|
export interface TranslationAlignmentResult {
|
|
8
8
|
timeline: Timeline;
|
|
9
9
|
wordTimeline: Timeline;
|
|
@@ -15,19 +15,21 @@ export interface TranslationAlignmentResult {
|
|
|
15
15
|
backgroundRawAudio?: RawAudio;
|
|
16
16
|
}
|
|
17
17
|
export type TranslationAlignmentEngine = 'whisper';
|
|
18
|
-
export interface TranslationAlignmentOptions {
|
|
18
|
+
export interface TranslationAlignmentOptions extends API.OperationOptions {
|
|
19
19
|
engine?: TranslationAlignmentEngine;
|
|
20
20
|
sourceLanguage?: string;
|
|
21
21
|
targetLanguage?: string;
|
|
22
22
|
isolate?: boolean;
|
|
23
23
|
crop?: boolean;
|
|
24
24
|
languageDetection?: API.SpeechLanguageDetectionOptions;
|
|
25
|
-
vad?: API.
|
|
25
|
+
vad?: API.VoiceActivityDetectionOptions;
|
|
26
26
|
plainText?: API.PlainTextOptions;
|
|
27
27
|
subtitles?: SubtitlesConfig;
|
|
28
28
|
sourceSeparation?: API.SourceSeparationOptions;
|
|
29
29
|
whisper?: WhisperAlignmentOptions;
|
|
30
30
|
}
|
|
31
31
|
export declare const defaultTranslationAlignmentOptions: TranslationAlignmentOptions;
|
|
32
|
+
export interface TranslationAlignmentCallbacks extends API.OperationCallbacks {
|
|
33
|
+
}
|
|
32
34
|
export declare const translationAlignmentEngines: API.EngineMetadata[];
|
|
33
35
|
//# sourceMappingURL=TranslationAlignment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TranslationAlignment.d.ts","sourceRoot":"","sources":["../../src/api/TranslationAlignment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TranslationAlignment.d.ts","sourceRoot":"","sources":["../../src/api/TranslationAlignment.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAI/B,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAA4D,MAAM,4BAA4B,CAAA;AAGjI,OAAO,EAAE,QAAQ,EAA8E,MAAM,0BAA0B,CAAA;AAE/H,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAC3E,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAEhE,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,EAAE,SAAS,CAAC,EAAE,6BAA6B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CA8JlN;AAED,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,EAAE,QAAQ,CAAA;IAClB,YAAY,EAAE,QAAQ,CAAA;IAEtB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IAEtB,aAAa,EAAE,QAAQ,CAAA;IACvB,gBAAgB,CAAC,EAAE,QAAQ,CAAA;IAC3B,kBAAkB,CAAC,EAAE,QAAQ,CAAA;CAC7B;AAED,MAAM,MAAM,0BAA0B,GAAG,SAAS,CAAA;AAElD,MAAM,WAAW,2BAA4B,SAAQ,GAAG,CAAC,gBAAgB;IACxE,MAAM,CAAC,EAAE,0BAA0B,CAAA;IAEnC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB,IAAI,CAAC,EAAE,OAAO,CAAA;IAEd,iBAAiB,CAAC,EAAE,GAAG,CAAC,8BAA8B,CAAA;IAEtD,GAAG,CAAC,EAAE,GAAG,CAAC,6BAA6B,CAAA;IAEvC,SAAS,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAA;IAEhC,SAAS,CAAC,EAAE,eAAe,CAAA;IAE3B,gBAAgB,CAAC,EAAE,GAAG,CAAC,uBAAuB,CAAA;IAE9C,OAAO,CAAC,EAAE,uBAAuB,CAAA;CACjC;AAED,eAAO,MAAM,kCAAkC,EAAE,2BA8BhD,CAAA;AAED,MAAM,WAAW,6BAA8B,SAAQ,GAAG,CAAC,kBAAkB;CAC5E;AAED,eAAO,MAAM,2BAA2B,EAAE,GAAG,CAAC,cAAc,EAO3D,CAAA"}
|
|
@@ -1,37 +1,34 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import * as API from './API.js';
|
|
1
3
|
import { extendDeep } from '../utilities/ObjectUtilities.js';
|
|
2
|
-
import { logToStderr } from '../utilities/Utilities.js';
|
|
3
4
|
import { ensureRawAudio, normalizeAudioLevelInPlace, trimAudioEnd } from '../audio/AudioUtilities.js';
|
|
4
5
|
import { Logger } from '../utilities/Logger.js';
|
|
5
|
-
import * as API from './API.js';
|
|
6
6
|
import { addWordTextOffsetsToTimelineInPlace, wordTimelineToSegmentSentenceTimeline } from '../utilities/Timeline.js';
|
|
7
7
|
import { formatLanguageCodeWithName, getShortLanguageCode, normalizeIdentifierToLanguageCode, parseLangIdentifier } from '../utilities/Locale.js';
|
|
8
|
-
|
|
9
|
-
const log = logToStderr;
|
|
10
|
-
export async function alignTranslation(input, translatedTranscript, options) {
|
|
11
|
-
const logger = new Logger();
|
|
12
|
-
const startTimestamp = logger.getTimestamp();
|
|
8
|
+
export async function alignTranslation(input, translatedTranscript, options, callbacks) {
|
|
13
9
|
options = extendDeep(defaultTranslationAlignmentOptions, options);
|
|
14
|
-
|
|
10
|
+
callbacks = { logLevel: API.getGlobalLogLevel(), ...callbacks };
|
|
11
|
+
const logger = new Logger(callbacks.logLevel);
|
|
12
|
+
const startTimestamp = logger.getTimestamp();
|
|
13
|
+
const inputRawAudio = await ensureRawAudio(input, undefined, undefined, callbacks);
|
|
15
14
|
let sourceRawAudio;
|
|
16
15
|
let isolatedRawAudio;
|
|
17
16
|
let backgroundRawAudio;
|
|
18
17
|
if (options.isolate) {
|
|
19
|
-
logger.
|
|
20
|
-
logger.
|
|
21
|
-
({ isolatedRawAudio, backgroundRawAudio } = await API.isolate(inputRawAudio, options.sourceSeparation));
|
|
18
|
+
logger.logTitledMessage(`Isolate vocals`, '');
|
|
19
|
+
({ isolatedRawAudio, backgroundRawAudio } = await API.isolate(inputRawAudio, options.sourceSeparation, { ...callbacks, logLevel: logger.logLevel }));
|
|
22
20
|
logger.end();
|
|
23
|
-
logger.log(``);
|
|
24
21
|
logger.start(`Resample audio to 16kHz mono`);
|
|
25
|
-
sourceRawAudio = await ensureRawAudio(isolatedRawAudio, 16000, 1);
|
|
22
|
+
sourceRawAudio = await ensureRawAudio(isolatedRawAudio, 16000, 1, callbacks);
|
|
26
23
|
}
|
|
27
24
|
else {
|
|
28
25
|
logger.start(`Resample audio to 16kHz mono`);
|
|
29
|
-
sourceRawAudio = await ensureRawAudio(inputRawAudio, 16000, 1);
|
|
26
|
+
sourceRawAudio = await ensureRawAudio(inputRawAudio, 16000, 1, callbacks);
|
|
30
27
|
}
|
|
31
28
|
let sourceUncropTimeline;
|
|
32
29
|
if (options.crop) {
|
|
33
30
|
logger.start('Crop using voice activity detection');
|
|
34
|
-
({ timeline: sourceUncropTimeline, croppedRawAudio: sourceRawAudio } = await API.detectVoiceActivity(sourceRawAudio, options.vad));
|
|
31
|
+
({ timeline: sourceUncropTimeline, croppedRawAudio: sourceRawAudio } = await API.detectVoiceActivity(sourceRawAudio, options.vad, { ...callbacks, logLevel: 'warning' }));
|
|
35
32
|
logger.end();
|
|
36
33
|
}
|
|
37
34
|
logger.start('Normalize and trim audio');
|
|
@@ -47,7 +44,7 @@ export async function alignTranslation(input, translatedTranscript, options) {
|
|
|
47
44
|
}
|
|
48
45
|
else {
|
|
49
46
|
logger.start('No source language specified. Detect speech language');
|
|
50
|
-
const { detectedLanguage } = await API.detectSpeechLanguage(sourceRawAudio, options.languageDetection
|
|
47
|
+
const { detectedLanguage } = await API.detectSpeechLanguage(sourceRawAudio, options.languageDetection, { ...callbacks, logLevel: 'warning' });
|
|
51
48
|
sourceLanguage = detectedLanguage;
|
|
52
49
|
logger.end();
|
|
53
50
|
logger.logTitledMessage('Source language detected', formatLanguageCodeWithName(detectedLanguage));
|
|
@@ -58,6 +55,7 @@ export async function alignTranslation(input, translatedTranscript, options) {
|
|
|
58
55
|
switch (options.engine) {
|
|
59
56
|
case 'whisper': {
|
|
60
57
|
const WhisperSTT = await import('../recognition/WhisperSTT.js');
|
|
58
|
+
const WhisperCommon = await import('../recognition/WhisperCommon.js');
|
|
61
59
|
const shortSourceLanguageCode = getShortLanguageCode(sourceLanguage);
|
|
62
60
|
const shortTargetLanguageCode = getShortLanguageCode(targetLanguage);
|
|
63
61
|
if (shortTargetLanguageCode != 'en') {
|
|
@@ -66,13 +64,14 @@ export async function alignTranslation(input, translatedTranscript, options) {
|
|
|
66
64
|
if (shortSourceLanguageCode == 'en' && shortTargetLanguageCode == 'en') {
|
|
67
65
|
throw new Error('Both translation source and target languages are English');
|
|
68
66
|
}
|
|
69
|
-
const whisperAlignmnentOptions = options.whisper;
|
|
70
|
-
const {
|
|
67
|
+
const whisperAlignmnentOptions = extendDeep(WhisperSTT.defaultWhisperAlignmentOptions, options.whisper);
|
|
68
|
+
const { modelId, modelPath } = await WhisperCommon.loadModelPackage(whisperAlignmnentOptions.model, shortSourceLanguageCode, callbacks);
|
|
69
|
+
const { libPath } = await WhisperSTT.loadLibraryPackages(whisperAlignmnentOptions.enableGPU, callbacks);
|
|
71
70
|
logger.end();
|
|
72
|
-
if (
|
|
71
|
+
if (modelId.endsWith('.en')) {
|
|
73
72
|
throw new Error('Whisper translation tasks are only possible with a multilingual model');
|
|
74
73
|
}
|
|
75
|
-
mappedTimeline = await WhisperSTT.alignEnglishTranslation(sourceRawAudio, translatedTranscript,
|
|
74
|
+
mappedTimeline = await WhisperSTT.alignEnglishTranslation(sourceRawAudio, translatedTranscript, modelId, modelPath, libPath, shortSourceLanguageCode, whisperAlignmnentOptions, callbacks);
|
|
76
75
|
break;
|
|
77
76
|
}
|
|
78
77
|
default: {
|
|
@@ -88,7 +87,7 @@ export async function alignTranslation(input, translatedTranscript, options) {
|
|
|
88
87
|
// Make segment timeline
|
|
89
88
|
const { segmentTimeline } = await wordTimelineToSegmentSentenceTimeline(mappedTimeline, translatedTranscript, sourceLanguage, options.plainText?.paragraphBreaks, options.plainText?.whitespace);
|
|
90
89
|
logger.end();
|
|
91
|
-
logger.logDuration(`Total translation alignment time`, startTimestamp, chalk.magentaBright);
|
|
90
|
+
logger.logDuration(`Total translation alignment time`, startTimestamp, 'info', chalk.magentaBright);
|
|
92
91
|
return {
|
|
93
92
|
timeline: segmentTimeline,
|
|
94
93
|
wordTimeline: mappedTimeline,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TranslationAlignment.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"TranslationAlignment.js","sourceRoot":"","sources":["../../src/api/TranslationAlignment.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
+
import * as API from './API.js';
|
|
1
2
|
import { AudioSourceParam, RawAudio } from '../audio/AudioUtilities.js';
|
|
2
3
|
import { Timeline } from '../utilities/Timeline.js';
|
|
3
4
|
import { EngineMetadata } from './Common.js';
|
|
4
5
|
import { type AdaptiveGateVADOptions } from '../voice-activity-detection/AdaptiveGateVAD.js';
|
|
5
|
-
import { type WhisperVADOptions } from '../recognition/WhisperSTT.js';
|
|
6
6
|
import { OnnxExecutionProvider } from '../utilities/OnnxUtilities.js';
|
|
7
|
-
export declare function detectVoiceActivity(input: AudioSourceParam, options:
|
|
7
|
+
export declare function detectVoiceActivity(input: AudioSourceParam, options: VoiceActivityDetectionOptions, callbacks?: VoiceActivityDetectionCallbacks): Promise<VoiceActivityDetectionResult>;
|
|
8
8
|
export declare function convertCroppedToUncroppedTimeline(timeline: Timeline, uncropTimeline: Timeline): void;
|
|
9
|
-
export interface
|
|
9
|
+
export interface VoiceActivityDetectionResult {
|
|
10
10
|
timeline: Timeline;
|
|
11
11
|
verboseTimeline: Timeline;
|
|
12
12
|
inputRawAudio: RawAudio;
|
|
13
13
|
croppedRawAudio: RawAudio;
|
|
14
14
|
}
|
|
15
|
-
export type
|
|
16
|
-
export interface
|
|
17
|
-
engine?:
|
|
15
|
+
export type VoiceActivityDetectionEngine = 'webrtc' | 'silero' | 'rnnoise' | 'whisper' | 'adaptive-gate';
|
|
16
|
+
export interface VoiceActivityDetectionOptions extends API.OperationOptions {
|
|
17
|
+
engine?: VoiceActivityDetectionEngine;
|
|
18
18
|
activityThreshold?: number;
|
|
19
19
|
webrtc?: {
|
|
20
20
|
frameDuration?: 10 | 20 | 30;
|
|
@@ -25,9 +25,10 @@ export interface VADOptions {
|
|
|
25
25
|
provider?: OnnxExecutionProvider;
|
|
26
26
|
};
|
|
27
27
|
rnnoise?: {};
|
|
28
|
-
whisper?: WhisperVADOptions;
|
|
29
28
|
adaptiveGate?: AdaptiveGateVADOptions;
|
|
30
29
|
}
|
|
31
|
-
export declare const
|
|
30
|
+
export declare const defaultVoiceActivityDetectionOptions: VoiceActivityDetectionOptions;
|
|
31
|
+
export interface VoiceActivityDetectionCallbacks extends API.OperationCallbacks {
|
|
32
|
+
}
|
|
32
33
|
export declare const vadEngines: EngineMetadata[];
|
|
33
34
|
//# sourceMappingURL=VoiceActivityDetection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceActivityDetection.d.ts","sourceRoot":"","sources":["../../src/api/VoiceActivityDetection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"VoiceActivityDetection.d.ts","sourceRoot":"","sources":["../../src/api/VoiceActivityDetection.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAG/B,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAmC,MAAM,4BAA4B,CAAA;AAGxG,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,gDAAgD,CAAA;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAGrE,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,6BAA6B,EAAE,SAAS,CAAC,EAAE,+BAA+B,GAAG,OAAO,CAAC,4BAA4B,CAAC,CA4G7L;AA+BD,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,QA6B7F;AA8DD,MAAM,WAAW,4BAA4B;IAC5C,QAAQ,EAAE,QAAQ,CAAA;IAClB,eAAe,EAAE,QAAQ,CAAA;IAEzB,aAAa,EAAE,QAAQ,CAAA;IACvB,eAAe,EAAE,QAAQ,CAAA;CACzB;AAED,MAAM,MAAM,4BAA4B,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,eAAe,CAAA;AAExG,MAAM,WAAW,6BAA8B,SAAQ,GAAG,CAAC,gBAAgB;IAC1E,MAAM,CAAC,EAAE,4BAA4B,CAAA;IAErC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B,MAAM,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;QAC5B,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;KACpB,CAAA;IAED,MAAM,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;QAC5B,QAAQ,CAAC,EAAE,qBAAqB,CAAA;KAChC,CAAA;IAED,OAAO,CAAC,EAAE,EACT,CAAA;IAED,YAAY,CAAC,EAAE,sBAAsB,CAAA;CACrC;AAED,eAAO,MAAM,oCAAoC,EAAE,6BAoBlD,CAAA;AAED,MAAM,WAAW,+BAAgC,SAAQ,GAAG,CAAC,kBAAkB;CAC9E;AAED,eAAO,MAAM,UAAU,EAAE,cAAc,EAyBtC,CAAA"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import * as API from './API.js';
|
|
1
3
|
import { extendDeep } from '../utilities/ObjectUtilities.js';
|
|
2
|
-
import { logToStderr } from '../utilities/Utilities.js';
|
|
3
4
|
import { cropToTimeline, ensureRawAudio, } from '../audio/AudioUtilities.js';
|
|
4
5
|
import { Logger } from '../utilities/Logger.js';
|
|
5
6
|
import { loadPackage } from '../utilities/PackageManager.js';
|
|
6
|
-
import chalk from 'chalk';
|
|
7
7
|
import { joinPath } from '../utilities/PathUtilities.js';
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
export async function detectVoiceActivity(input, options, callbacks) {
|
|
9
|
+
options = extendDeep(defaultVoiceActivityDetectionOptions, options);
|
|
10
|
+
callbacks = { logLevel: API.getGlobalLogLevel(), ...callbacks };
|
|
11
|
+
const logger = new Logger(callbacks.logLevel);
|
|
11
12
|
const startTimestamp = logger.getTimestamp();
|
|
12
|
-
const inputRawAudio = await ensureRawAudio(input);
|
|
13
|
+
const inputRawAudio = await ensureRawAudio(input, undefined, undefined, callbacks);
|
|
13
14
|
logger.start(`Resample audio to 16kHz mono`);
|
|
14
|
-
let sourceRawAudio = await ensureRawAudio(inputRawAudio, 16000, 1);
|
|
15
|
+
let sourceRawAudio = await ensureRawAudio(inputRawAudio, 16000, 1, callbacks);
|
|
15
16
|
logger.start(`Detect voice activity with ${options.engine}`);
|
|
16
|
-
options = extendDeep(defaultVADOptions, options);
|
|
17
17
|
const activityThreshold = options.activityThreshold;
|
|
18
18
|
let verboseTimeline;
|
|
19
19
|
switch (options.engine) {
|
|
@@ -28,7 +28,7 @@ export async function detectVoiceActivity(input, options) {
|
|
|
28
28
|
case 'silero': {
|
|
29
29
|
const SileroVAD = await import('../voice-activity-detection/SileroVAD.js');
|
|
30
30
|
const sileroOptions = options.silero;
|
|
31
|
-
const modelDir = await loadPackage('silero-vad');
|
|
31
|
+
const modelDir = await loadPackage('silero-vad', callbacks);
|
|
32
32
|
const modelPath = joinPath(modelDir, 'silero-vad.onnx');
|
|
33
33
|
const frameDuration = sileroOptions.frameDuration;
|
|
34
34
|
const onnxExecutionProviders = sileroOptions.provider ? [sileroOptions.provider] : [];
|
|
@@ -39,43 +39,18 @@ export async function detectVoiceActivity(input, options) {
|
|
|
39
39
|
}
|
|
40
40
|
case 'rnnoise': {
|
|
41
41
|
const RNNoise = await import('../denoising/RNNoise.js');
|
|
42
|
-
const audio48k = await ensureRawAudio(sourceRawAudio, 48000, 1);
|
|
42
|
+
const audio48k = await ensureRawAudio(sourceRawAudio, 48000, 1, callbacks);
|
|
43
43
|
const rnnoiseOptions = options.rnnoise;
|
|
44
|
-
const { denoisedRawAudio, frameVadProbabilities } = await RNNoise.denoiseAudio(audio48k);
|
|
44
|
+
const { denoisedRawAudio, frameVadProbabilities } = await RNNoise.denoiseAudio(audio48k, callbacks);
|
|
45
45
|
const frameDurationSeconds = 0.01;
|
|
46
46
|
const frameProbabilities = frameVadProbabilities;
|
|
47
47
|
verboseTimeline = frameProbabilitiesToTimeline(frameProbabilities, frameDurationSeconds, activityThreshold);
|
|
48
48
|
break;
|
|
49
49
|
}
|
|
50
|
-
case 'whisper': {
|
|
51
|
-
const WhisperSTT = await import('../recognition/WhisperSTT.js');
|
|
52
|
-
const whisperVADOptions = options.whisper;
|
|
53
|
-
logger.end();
|
|
54
|
-
const { modelName, modelDir } = await WhisperSTT.loadPackagesAndGetPaths(whisperVADOptions.model, 'de');
|
|
55
|
-
logger.end();
|
|
56
|
-
const { partProbabilities } = await WhisperSTT.detectVoiceActivity(sourceRawAudio, modelName, modelDir, whisperVADOptions);
|
|
57
|
-
verboseTimeline = [];
|
|
58
|
-
for (const entry of partProbabilities) {
|
|
59
|
-
const hasSpeech = entry.confidence >= activityThreshold;
|
|
60
|
-
const text = hasSpeech ? 'active' : 'inactive';
|
|
61
|
-
if (verboseTimeline.length === 0 || verboseTimeline[verboseTimeline.length - 1].text != text) {
|
|
62
|
-
verboseTimeline.push({
|
|
63
|
-
type: 'segment',
|
|
64
|
-
text,
|
|
65
|
-
startTime: entry.startTime,
|
|
66
|
-
endTime: entry.endTime
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
verboseTimeline[verboseTimeline.length - 1].endTime = entry.endTime;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
break;
|
|
74
|
-
}
|
|
75
50
|
case 'adaptive-gate': {
|
|
76
51
|
const AdaptiveGateVAD = await import('../voice-activity-detection/AdaptiveGateVAD.js');
|
|
77
52
|
const adaptiveGateOptions = options.adaptiveGate;
|
|
78
|
-
verboseTimeline = await AdaptiveGateVAD.detectVoiceActivity(sourceRawAudio, adaptiveGateOptions);
|
|
53
|
+
verboseTimeline = await AdaptiveGateVAD.detectVoiceActivity(sourceRawAudio, adaptiveGateOptions, callbacks);
|
|
79
54
|
break;
|
|
80
55
|
}
|
|
81
56
|
default: {
|
|
@@ -86,7 +61,7 @@ export async function detectVoiceActivity(input, options) {
|
|
|
86
61
|
const croppedRawAudio = cropToTimeline(inputRawAudio, timeline);
|
|
87
62
|
logger.end();
|
|
88
63
|
logger.log('');
|
|
89
|
-
logger.logDuration(`Total voice activity detection time`, startTimestamp, chalk.magentaBright);
|
|
64
|
+
logger.logDuration(`Total voice activity detection time`, startTimestamp, 'info', chalk.magentaBright);
|
|
90
65
|
return {
|
|
91
66
|
timeline,
|
|
92
67
|
verboseTimeline,
|
|
@@ -180,7 +155,7 @@ function mapUsingUncropTimeline(startTimeInCroppedAudio, endTimeInCroppedAudio,
|
|
|
180
155
|
mappedEndTime
|
|
181
156
|
};
|
|
182
157
|
}
|
|
183
|
-
export const
|
|
158
|
+
export const defaultVoiceActivityDetectionOptions = {
|
|
184
159
|
engine: 'silero',
|
|
185
160
|
activityThreshold: 0.5,
|
|
186
161
|
webrtc: {
|
|
@@ -192,10 +167,6 @@ export const defaultVADOptions = {
|
|
|
192
167
|
provider: undefined,
|
|
193
168
|
},
|
|
194
169
|
rnnoise: {},
|
|
195
|
-
whisper: {
|
|
196
|
-
model: 'tiny',
|
|
197
|
-
temperature: 1.0,
|
|
198
|
-
},
|
|
199
170
|
adaptiveGate: {}
|
|
200
171
|
};
|
|
201
172
|
export const vadEngines = [
|
|
@@ -216,6 +187,12 @@ export const vadEngines = [
|
|
|
216
187
|
name: 'RNNoise',
|
|
217
188
|
description: `Uses RNNoise's internal speech probabilities as VAD metrics.`,
|
|
218
189
|
type: 'local'
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
id: 'adaptive-gate',
|
|
193
|
+
name: 'Adaptive Gate',
|
|
194
|
+
description: `Band-limited adaptive gate.`,
|
|
195
|
+
type: 'local'
|
|
219
196
|
}
|
|
220
197
|
];
|
|
221
198
|
//# sourceMappingURL=VoiceActivityDetection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceActivityDetection.js","sourceRoot":"","sources":["../../src/api/VoiceActivityDetection.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"VoiceActivityDetection.js","sourceRoot":"","sources":["../../src/api/VoiceActivityDetection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioBufferConversion.js","sourceRoot":"","sources":["../../src/audio/AudioBufferConversion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACnD,OAAO,EAAY,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE/D,6FAA6F;AAC7F,qCAAqC;AACrC,6FAA6F;AAC7F,MAAM,UAAU,mBAAmB,CAAC,aAA6B,EAAE,
|
|
1
|
+
{"version":3,"file":"AudioBufferConversion.js","sourceRoot":"","sources":["../../src/audio/AudioBufferConversion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACnD,OAAO,EAAY,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE/D,6FAA6F;AAC7F,qCAAqC;AACrC,6FAA6F;AAC7F,MAAM,UAAU,mBAAmB,CAAC,aAA6B,EAAE,cAAc,GAAa,EAAE,EAAE,kBAAkB,GAAiB,YAAY,CAAC,GAAG;IACpJ,OAAO,SAAS,CAAC,uBAAuB,CAAC,aAAa,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAA;AAC5F,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,WAAuB,EAAE,YAAoB,EAAE,cAAwB,EAAE,kBAAgC;IACzI,OAAO,SAAS,CAAC,uBAAuB,CAAC,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAA;AACxG,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAmB;IACpD,OAAO,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAiB;IAClD,OAAO,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAmB;IACpD,OAAO,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAiB;IAClD,OAAO,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAmB;IACpD,OAAO,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAiB;IAClD,OAAO,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAmB;IACpD,OAAO,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAwB;IAC1D,OAAO,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;AAC9C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,mBAAiC,EAAE,YAAoB;IAC3F,OAAO,SAAS,CAAC,oBAAoB,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAA;AACzE,CAAC;AAED,OAAO,EAAiB,YAAY,EAAE,MAAM,wBAAwB,CAAA"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { RawAudio } from './AudioUtilities.js';
|
|
2
2
|
import { Timeline } from '../utilities/Timeline.js';
|
|
3
3
|
import { SignalChannel } from '../utilities/SignalChannel.js';
|
|
4
|
-
export declare function playAudioFileWithTimelineFile(audioFilename: string, timelineFileName: string, transcriptFileName?: string, player?: AudioPlayerID): Promise<void>;
|
|
5
4
|
export declare function playAudioWithWordTimeline(rawAudio: RawAudio, wordTimeline: Timeline, transcript?: string, player?: AudioPlayerID): Promise<void>;
|
|
6
5
|
export declare function playAudioSamplesWithKeyboardControls(rawAudio: RawAudio, player?: AudioPlayerID): Promise<void>;
|
|
7
6
|
export declare function playAudioSamples(rawAudio: RawAudio, onTimePosition?: (timePosition: number) => void, signalChannel?: SignalChannel, player?: AudioPlayerID): Promise<void>;
|
|
8
7
|
export declare function playAudioSamples_AudioIO(rawAudio: RawAudio, onTimePosition?: (timePosition: number) => void, signalChannel?: SignalChannel): Promise<void>;
|
|
9
|
-
export declare function playAudioSamples_Sox(rawAudio: RawAudio, onTimePosition?: (timePosition: number) => void, signalChannel?: SignalChannel, microFadeInOut?: boolean): Promise<void>;
|
|
10
8
|
export declare const charactersToWriteAhead: string[];
|
|
11
|
-
export type AudioPlayerID = 'audio-io'
|
|
9
|
+
export type AudioPlayerID = 'audio-io';
|
|
12
10
|
//# sourceMappingURL=AudioPlayer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AudioPlayer.d.ts","sourceRoot":"","sources":["../../src/audio/AudioPlayer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AudioPlayer.d.ts","sourceRoot":"","sources":["../../src/audio/AudioPlayer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAA2C,MAAM,qBAAqB,CAAA;AAKvF,OAAO,EAAE,QAAQ,EAAuC,MAAM,0BAA0B,CAAA;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAI7D,wBAAsB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,iBAyFtI;AAED,wBAAsB,oCAAoC,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,aAAa,iBAgCpG;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,EAAE,aAAa,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,aAAa,iBAU1J;AAED,wBAAsB,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,cAAc,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,EAAE,aAAa,CAAC,EAAE,aAAa,iBAgFhJ;AAED,eAAO,MAAM,sBAAsB,UAKlC,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,UAAU,CAAA"}
|