【问题标题】:How can I get the TTS from azure speech sdk and play it in a HTML audio tag如何从 azure speech sdk 获取 TTS 并在 HTML 音频标签中播放
【发布时间】:2021-08-19 08:59:43
【问题描述】:

我正在使用 microsoft-cognitiveservices-speech-sdk 对文本转语音做出反应。我希望能够播放使用网页上的音频元素生成的音频。理想情况下,我想获取二进制数据并将其设置为元素的源并使用js播放元素。 有没有办法做到这一点?

【问题讨论】:

    标签: reactjs text-to-speech microsoft-cognitive azure-cognitive-services


    【解决方案1】:

    这必须是元素的来源吗?如果您可以只存储结果数据的 ArrayBuffer,则可以使用 BaseAudioPlayer 重播该 Buffer。例如:

    var audioBuffer = null;
    [...]
    synthesizer.synthesisCompleted = function (s, e) {
        audioBuffer = e.result.audioData;
    };
    [...]
    playbackButton.addEventListener("click", function () {
        var p = new SpeechSDK.BaseAudioPlayer();
        if(!!p && !!audioBuffer) {
          console.log(`playing buffer with length ${audioBuffer.byteLength}`);
          p.playAudioSample(audioBuffer);
        }
    });
    

    我已在 iOS 14.6 上对此进行了测试,但仅适用于 Riff WAV。不确定它是否适用于其他格式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-05
      • 2021-04-21
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多