Синтезировать строку во временный аудиофайл - PullRequest
0 голосов
/ 20 апреля 2020

У меня есть рабочий код в java, и я хотел бы скопировать его в javascript, но я не нахожу правильные библиотеки для него.

Java

File outputFile = File.createTempFile(fileName, ".mp3", outputDir);

if (outputFile.exists()) {
    final Uri uriToFile = Uri.parse(outputFile.getAbsolutePath());

    Bundle bundle = new Bundle();
    bundle.putInt(TextToSpeech.Engine.KEY_PARAM_STREAM, AudioManager.STREAM_MUSIC);

    tts.setSpeechRate(1f);
    tts.synthesizeToFile(audioCue, bundle, outputFile, outputFile.getName());
    tts.setOnUtteranceProgressListener(new UtteranceProgressListener() {

        @Override
        public void onDone(String utteranceId) {
          playFile(); 
        }

        @Override
        public void onError(String utteranceId) {

        }
    });
}

В моем текущем коде, работающем с java, я создаю временный файл, в котором я синтезирую audioCue (a String) для последующего воспроизведения после завершения операции. Тем не менее, как я уже упоминал, я не нашел ничего подобного в javascript. Кто-нибудь знает, где я могу его найти?

Попытка

Я пытался использовать SpeechSynthesisUtterance(), что в основном позволяет мне воспроизводить сообщение. Тем не менее, я также ищу создание аудиофайла, потому что мне нужно знать его длительность. Поэтому я ищу method(), который позволяет мне сохранить String в аудиофайл и затем воспроизвести его.

var utter = new SpeechSynthesisUtterance();
    window.speechSynthesis.speak(utter)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...