Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Talking Web Apps by @odelaguila
Search
gdljs
February 24, 2016
Technology
0
36
Talking Web Apps by @odelaguila
Slides de la décima sesión de GDLJS del 23 de Febrero
Talking web apps
gdljs
February 24, 2016
Tweet
Share
More Decks by gdljs
See All by gdljs
Construyendo la mejor experiencia de pagos en línea by @IvanChukitow
gdljs
0
72
Testabilidad en Javascript by @codingpains
gdljs
0
35
Desarrollo de aplicaciones con react native by @charliesbox
gdljs
0
130
¿Debería usar la librería de moda en mi proyecto? by @siedrix
gdljs
0
130
Agile Gamification by @chukitow
gdljs
0
53
Por qué hicimos nuestro propio NodeJS framework by @sgarza
gdljs
0
34
¿Cómo empezar a programar? by @amicavi
gdljs
0
93
Concurrencia y Paralelismo en Javascript by @eatcodetravel
gdljs
0
570
Caldo de Kafka para Node by @albertain
gdljs
0
75
Other Decks in Technology
See All in Technology
Postman AI エージェントビルダー最新情報
nagix
0
110
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
1
810
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 完全版 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming - Expanded
tomzoh
4
3.2k
フィンテック養成勉強会#54
finengine
0
180
Wasm元年
askua
0
140
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全 / 20250625-aws-summit-aws-policy
opelab
9
1.1k
初めてのAzure FunctionsをClaude Codeで作ってみた / My first Azure Functions using Claude Code
hideakiaoyagi
1
220
Prox Industries株式会社 会社紹介資料
proxindustries
0
280
Oracle Audit Vault and Database Firewall 20 概要
oracle4engineer
PRO
3
1.7k
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
400
Github Copilot エージェントモードで試してみた
ochtum
0
100
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
160
Featured
See All Featured
Producing Creativity
orderedlist
PRO
346
40k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.8k
Fireside Chat
paigeccino
37
3.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
How to Ace a Technical Interview
jacobian
277
23k
Transcript
Talking web apps
Orlando Del Aguila
None
@eatcodetravel eatcodetravel.com hashlabs.com
Talking web apps
Speech Synthesis API Web Speech API
Speech Synthesis API Web Speech API
Support Speech Synthesis
API Speech Synthesis Volume Rate Pitch Language Voice
API Speech Synthesis 1 var msg, voices; 2 msg =
new SpeechSynthesisUtterance(); 3 voices = window.speechSynthesis.getVoices(); 4 5 // some voices don't support altering params 6 msg.voice = voices[10]; 7 msg.voiceURI = 'native'; 8 msg.volume = 1; // 0 to 1 9 msg.rate = 1; // 0.1 to 10 10 msg.pitch = 2; //0 to 2 11 msg.text = 'Hello World'; 12 msg.lang = 'en-US';
API Speech Synthesis 1 var msg, voices; 2 msg =
new SpeechSynthesisUtterance(); 3 voices = window.speechSynthesis.getVoices(); 4 5 6 7 8 9 10 11 12 13
API Speech Synthesis 4 5 // some voices don't support
altering params 6 msg.voice = voices[10]; 7 msg.voiceURI = 'native'; 8 msg.volume = 1; // 0 to 1 9 msg.rate = 1; // 0.1 to 10 10 msg.pitch = 1; //0 to 2 11 msg.text = 'Hello World'; 12 msg.lang = ‘en-US'; 13 speechSynthesis.speak(msg); 1 2 3
API Speech Synthesis 1 // speechSynthesis has a queue, 2
// and you don't need to worry about it. 3 speechSynthesis.speak(msg); 4 speechSynthesis.cancel(); 5 speechSynthesis.pause(); 6 speechSynthesis.resume();
API Speech Synthesis 1 // SpeechSynthesisUtterance has events 2 var
msg = new SpeechSynthesisUtterance(); 3 4 msg.onstart = function onstart() {}; 5 msg.onend = function onend() {}; 6 msg.onerror = function onerror() {}; 7 msg.onpause = function onpause() {}; 8 msg.onboundary = function onboundary() {};
Speech Synthesis API DEMO
Speech Synthesis API Web Speech API
Support Web Speech API
API Language Continuous InterimResults Web Speech API
API onstart onend onresults onerror Web Speech API
API Web Speech API 1 // notice the webkit prefix
2 var recognition; 3 recognition = new webkitSpeechRecognition(); 4 recognition.lang = 'es-VE'; 5 recognition.continuous = true; 6 recognition.interimResults = false; 7 8 // Events 9 recognition.onstart = function () {}; 10 recognition.onend = function () {}; 11 recognition.onresult = function () {}; 12 recognition.onerror = function () {}; 13 recognition.start();
API Web Speech API 1 2 3 4 5 6
7 8 9 10 11 12 13 11 recognition.onresult = function () {};
API Web Speech API 1 recognition.onresult = function (event) {
2 var length, transcript, msg; 3 length = event.results.length - 1; 4 transcript = event.results[length][0].transcript; 5 transcript = transcript.trim(); 6 7 console.log(transcript); 8 9 msg = new SpeechSynthesisUtterance(message); 10 msg.text = message; 11 window.speechSynthesis.speak(msg); 12 }
Web Speech API DEMO
Resources
Web apps that talk Voice driven apps MDN Web Speech
API Web Speech API Spec
QA
Thanks