tts.js 953 Bytes
import AWS from 'aws-sdk'
// Polly를 사용하기 위한 자격증명을 설정한다.
AWS.config.region = 'ap-northeast-2'; 
AWS.config.credentials = new AWS.CognitoIdentityCredentials({IdentityPoolId: 'ap-northeast-2:03db97c9-a857-45f3-be6e-3cf84d6f619b'});
const polly = new AWS.Polly({
    signatureVersion: 'v4',
    region: 'ap-northeast-2',
});

function speak(text){
    let params = {
        'Text': text,
        'OutputFormat': 'mp3',
        'VoiceId': 'Seoyeon'
    };
    let tts = new AWS.Polly.Presigner(params, polly)

    // tts로 변환한 음성 파일을 얻는다.
    tts.getSynthesizeSpeechUrl(params, function(error, url) {
        if (error) {
        } else {
            setTimeout(()=>{
                console.log("실행")
                let audio = new Audio(url)
                audio.play()
                    // .then(delete audio);
            }, 3000)
        }
    })
}
export default {
    "speak": speak, 
}