Untitled Document
Untitled Document
 
 
 
> °í°´¼¾ÅÍ > ´º½º&°øÁö
 
 
 
¿À´Ã³¯Â¥: 2025³â 06¿ù 13ÀÏ ±Ý¿äÀÏ
145
     [ÀÚ·á] tts stt
ÀÛ¼ºÀÚ : ¸¶Àϵå¼ÒÇÁÆ®     ÀÛ¼ºÀÏ : 2017-03-25    ¾ÆÀÌÇÇ : 49.175.79.234    Á¶È¸¼ö : 3934
 
 
TTS(Text To Speech)¿Í STT(Speech To Text)

HTML5Rocks/KO
HTML5RocksÀÇ ¼Ò½Ä ¹× ÇѱÛÈ­ »óȲ, HTML5 °ü·Ã Á¤º¸¸¦ °øÀ¯ÇÏ´Â ºñ°ø½Ä ºí·Î±× ÆßÆ÷ÀÔ´Ï´Ù.

[¾÷µ¥ÀÌÆ®] ¸»ÇÏ´Â À¥¾Û - Speech Synthesis API (Web apps that talk - Introduction to the Speech Synthesis API)

Web Speech APIÀÔ´Ï´Ù. ¾ÆÁÖ °£´ÜÇÑ Çü½ÄÀ¸·Î µÇ¾î ÀÖ´Â APIµéÀÌÁö¸¸ ¼Õ½±°Ô TTS(Text To Speech)¸¦ ¼öÇàÇϸç, ¹Ý´ë·Î STT(Speech To Text)¸¦ ¼öÇàÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÇöÀç´Â Å©·Ò¿¡¼­¸¸ Áö¿øÇϰí ÀÖ´Â ±â´ÉÀÌÁö¸¸ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â ±â´ÉÀÔ´Ï´Ù.

¿ø¹® - Web apps that talk - Introduction to the Speech Synthesis API


Àü¹®

Web Speech API´Â À½¼ºÀνÄ(Voice recognition, Speech To Text)¿Í À½¼ºÇÕ¼º(Speech synthesis, Text To Speech) ±â´ÉÀ» ÀÚ¹Ù½ºÅ©¸³Æ®¿¡ Ãß°¡ÇÏ¿´½À´Ï´Ù. ÀÌ Æ÷½ºÆ®´Â Chrome 33 ¹öÀü(¸ð¹ÙÀÏ ¹× µ¥½ºÅ©Å¾)¿¡ ÃÖ±Ù Ãß°¡µÈ API¿¡ ´ëÇÑ ¸¶Áö¸· ¹öÀüÀ» ´ë·«ÀûÀ¸·Î Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù. ¸¸¾à À½¼º ÀνĿ¡ Èï¹Ì°¡ ÀÖÀ¸½Ã´Ù¸é Glen Shires°¡ ¾ó¸¶Àü
À½¼º ÀÎ½Ä ±â´É¿¡ ´ëÇØ ¾´ "¸»·Î µ¿ÀÛÇÏ´Â À¥¾Û: Web Speech APIÀÇ ¼Ò°³(Voice Driven Web Apps: Introduction to the Web Speech API)"À» ÂüÁ¶ÇϽñ⠹ٶø´Ï´Ù.

±âÃÊ »çÇ×

Synthesis APIÀÇ °¡Àå ±âº»ÀûÀÎ »ç¿ëÀº ´ÙÀ½°ú °°ÀÌ speechSynthesis.speak()·Î º¸³»°í ¸»·Î Ç¥ÇöÇÏ´Â °ÍÀÔ´Ï´Ù.
var msg = new SpeechSynthesisUtterance('Hello World');
window.speechSynthesis.speak(msg);
Á÷Á¢ ½ÃµµÇغ¸¼¼¿ä! What am I reading?

¶ÇÇÑ º¼·ý, ¸»ÇÏ´Â ¼Óµµ, À½ÀÇ ³ôÀÌ, ¸ñ¼Ò¸® ±×¸®°í ¾ð¾î¿¡ ¿µÇâÀ» ¹ÌÄ¡´Â ÀÎÀÚ¸¦ ´ëÄ¡ÇÏ´Â °Í ¿ª½Ã ´ÙÀ½°ú °°ÀÌ °¡´ÉÇÕ´Ï´Ù.
var msg = new SpeechSynthesisUtterance();
var voices = window.speechSynthesis.getVoices();
msg.voice = voices[10]; // Note: some voices don't support altering params
msg.voiceURI = 'native';
msg.volume = 1; // 0 to 1
msg.rate = 1; // 0.1 to 10
msg.pitch = 2; //0 to 2
msg.text = 'Hello World';
msg.lang = 'en-US';

msg.onend = function(e) {
  console.log('Finished in ' + event.elapsedTime + ' seconds.');
};

speechSynthesis.speak(msg);

¸ñ¼Ò¸®(Voice) ¼³Á¤

¶ÇÇÑ API¸¦ ÅëÇØ ¿£Áø¿¡¼­ Áö¿øÇÏ´Â ¸ñ¼Ò¸®(Voice)ÀÇ ¸®½ºÆ®¸¦ ´ÙÀ½°ú °°ÀÌ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.
speechSynthesis.getVoices().forEach(function(voice) {
  console.log(voice.name, voice.default ? '(default)' :'');
});
±×¸®°í³ª¼­ ´ÙÀ½°ú °°ÀÌ utterance °´Ã¼ÀÇ .voiceÀÇ ¼³Á¤À» ÅëÇØ ´Ù¸¥ ¸ñ¼Ò¸®¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
var msg = new SpeechSynthesisUtterance('I see dead people!');
msg.voice = speechSynthesis.getVoices().filter(function(voice) { return voice.name == 'Whisper'; })[0];
speechSynthesis.speak(msg);

µ¥¸ð

±¸±Û I/O 2013 ¹ßÇ¥ "´õ ¸ÚÁø À¥: ¿©·¯ºÐÀÌ ¾ðÁ¦³ª ¿øÇÏ´Â ±â´Éµé(More Awesome Web: features you've always wanted)"¿¡¼­ Àú´Â ±¸±Û ³ª¿ì(Google Now)³ª ½Ã¸®(Siri)¿Í ºñ½ÁÇÏ°Ô Web Speech APIÀÇ SpeechRecognition ¼­ºñ½º¿Í ±¸±Û ¹ø¿ª API(Google Translate API)¸¦ ÅëÇØ ¸¶ÀÌÅ© ÀÔ·ÂÀ» ´Ù¸¥ ¾ð¾î·Î ÀÚµ¿À¸·Î ¹ø¿ªÇÏ´Â µ¥¸ð¸¦ º¸¿©µå·È½À´Ï´Ù.



µ¥¸ð: http://www.moreawesomeweb.com/demos/speech_translate.html

ºÒÇàÇϰԵµ ÀÌ´Â À½¼º ÇÕ¼º(Speech synthesis)¸¦ ¼öÇàÇϱâ À§ÇØ ¹®¼­È­µÇÁö ¾ÊÀº ±â´É(±×¸®°í ºñ°ø½ÄÀûÀÎ API)À» »ç¿ëÇÏ¿´½À´Ï´Ù. ÀÚ ÀÌÁ¦ ¿ì¸®´Â ´Ù½Ã ¹ø¿ªÀ» ¸»ÇÒ ¼ö ÀÖ´Â ¿ÏÀüÇÑ Web Speech API¸¦ °¡Áö°Ô µÇ¾ú½À´Ï´Ù! µ¥¸ð´Â Synthesis API¸¦ »ç¿ëÇϵµ·Ï ¾÷µ¥ÀÌÆ®Çصξú½À´Ï´Ù.


ºê¶ó¿ìÀú Áö¿ø

ÇöÀç Chrome 33 ¹öÀüÀº Web Speech API¸¦ ¿ÏÀüÇÏ°Ô Áö¿øÇϸç iOS7ÀÇ »çÆÄ¸®´Â ÀϺÎÀÇ ±â´ÉÀ» Áö¿øÇϰí ÀÖ½À´Ï´Ù. 

±â´ÉÀÇ Áö¿ø¿©ºÎ °Ë»ç

(Å©·Î¹Ì¿òÀÇ °æ¿ìó·³) °¢ ºê¶ó¿ìÀúµéÀº Web Speech API¸¦ °¢ ºÎºÐÀ» µû·Î Áö¿øÇϰí ÀÖÀ» °ÍÀ̹ǷΠ´ÙÀ½°ú °°ÀÌ °¢ ±â´ÉÀ» ºÐ¸®ÇÏ¿© °Ë»çÇÒ ¼ö ÀÖ½À´Ï´Ù.
if ('speechSynthesis' in window) {
 // Synthesis support. Make your web apps talk!
}

if ('SpeechRecognition' in window) {
  // Speech recognition support. Talk to your apps!
}



           
 
 
ÀÌÀü±Û
´ÙÀ½±Û


 
 

 

Untitled Document