Javascript를 사용한 Azure 텍스트 음성 변환

전제 조건



Azure 구독 - 무료 구독 만들기
Azure Portal에서 음성 리소스를 만듭니다.
리소스 키와 지역을 가져옵니다. 음성 리소스가 배포된 후 키를 보고 관리하려면 리소스로 이동을 선택합니다. Cognitive Services 리소스에 대한 자세한 내용은 리소스 키 가져오기를 참조하세요.

Azure 포털의 Azure 텍스트 음성 변환 기능



개요 탭으로 이동하여 생성된 리소스의 상태를 확인할 수 있습니다.



리소스의 키와 엔드포인트는 리소스 관리 탭 아래의 "키 및 엔드포인트"로 이동하여 찾을 수 있습니다.



Azure Portal의 Azure 텍스트 음성 변환 구성을 다룹니다.

코딩


  • "SpeechSynthesis.js"라는 파일을 만듭니다
  • .
  • 명령 프롬프트를 열고 코드를 실행하여 JavaScript용 Speech SDK를 설치합니다.
  • npm install microsoft-cognitiveservices-speech-sdk
  • 다음 코드를 "SpeechSynthesis.js"에 복사합니다.

  • (function() {
    
    “use strict”;
    
    //Configure Azure Cognitive service
    
    var sdk = require(“microsoft-cognitiveservices-speech-sdk”);
    
    var readline = require(“readline”);
    
    var key = “YourSubscriptionKey”;
    
    var region = “YourServiceRegion”;
    
    var audioFile = “YourAudioFile.wav”;
    
    const speechConfig = sdk.SpeechConfig.fromSubscription(key, region);
    
    const audioConfig = sdk.AudioConfig.fromAudioFileOutput(audioFile);
    
    // The language of the voice that speaks.
    
    speechConfig.speechSynthesisVoiceName = “en-US-JennyNeural”;
    
    // Create the speech synthesizer.
    
    var synthesizer = new sdk.SpeechSynthesizer(speechConfig, audioConfig);
    
    var rl = readline.createInterface({
    
    input: process.stdin,
    
    output: process.stdout
    
    });
    
    rl.question(“Enter some text that you want to speak >\n> “, function (text) {
    
    rl.close();
    
    // Start the synthesizer and wait for a result.
    
    synthesizer.speakTextAsync(text,
    
    function (result) {
    
    if (result.reason === sdk.ResultReason.SynthesizingAudioCompleted) {
    
    console.log(“synthesis finished.”);
    
    } else {
    
    console.error(“Speech synthesis canceled, “ + result.errorDetails +
    
    “\nDid you set the speech resource key and region values?”);
    
    }
    
    synthesizer.close();
    
    synthesizer = null;
    
    },
    
    function (err) {
    
    console.trace(“err — “ + err);
    
    synthesizer.close();
    
    synthesizer = null;
    
    });
    
    console.log(“Now synthesizing to: “ + audioFile);
    
    });
    
    }());
    
    


  • "YourSubscriptionKey", "YourServiceRegion"및 "YourAudioFile"을 음성 리소스 키, 음성 리소스 영역 및 원하는 출력 파일 이름으로 각각 변경합니다.

  • 새 콘솔 애플리케이션을 실행하려면 코드를 실행하십시오.
    node SpeechSynthesis.js

    좋은 웹페이지 즐겨찾기