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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
gdljs
February 24, 2016
Technology
0
37
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
73
Testabilidad en Javascript by @codingpains
gdljs
0
36
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
150
Agile Gamification by @chukitow
gdljs
0
56
Por qué hicimos nuestro propio NodeJS framework by @sgarza
gdljs
0
36
¿Cómo empezar a programar? by @amicavi
gdljs
0
94
Concurrencia y Paralelismo en Javascript by @eatcodetravel
gdljs
0
590
Caldo de Kafka para Node by @albertain
gdljs
0
76
Other Decks in Technology
See All in Technology
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
2
3k
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
320
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
190
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
150
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
140
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
180
Greatest Disaster Hits in Web Performance
guaca
0
280
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
260
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
390
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
210
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
160
Featured
See All Featured
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
380
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.2k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
AI: The stuff that nobody shows you
jnunemaker
PRO
2
270
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
160
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
The Invisible Side of Design
smashingmag
302
51k
Marketing to machines
jonoalderson
1
4.6k
What's in a price? How to price your products and services
michaelherold
247
13k
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