Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
オンライン英会話とSkyWay
Search
taminif
January 15, 2018
Programming
560
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
オンライン英会話とSkyWay
SkyWay UG Kansai #1
https://skyway.connpass.com/event/74875/
taminif
January 15, 2018
More Decks by taminif
See All by taminif
React Native New Architecture 移行実践報告
taminif
1
290
「とりあえずAI」が招く悲劇〜私がAIで生産性を下げるまでの話〜 / The tragedy caused by "AI for now" - The story of how I used AI to reduce my productivity
taminif
1
340
PuppeteerとPlaywrightの15日間の演劇 / relation of Puppeteer and Playwright
taminif
3
2.3k
Redashの開発はじめました / How to get started Redash development
taminif
0
820
私の生活を変えたHeadless Chrome / Headless Chrome who changed my life
taminif
3
560
WebSocketをiOSに持ち込んで辛い思いをした経験がありますか!? / have you painful experience in web socket?
taminif
3
6.3k
LINEで馬券を購入する / Purchase a betting ticket at LINE
taminif
1
1.7k
SkyWayで一年間運用してきたけどWebRTCってつらいんじゃないの
taminif
2
1k
オンライン英会話アプリとSkyWay
taminif
0
510
Other Decks in Programming
See All in Programming
技術的負債の返済は、AI時代の複利で効く投資 — 経営としての意思決定とその遂行
curekoshimizu
1
2k
カツオ、ご期待ください
suneo3476
0
120
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
220
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
180
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
440
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
200
速習iPhone Duo対応
yuukiw00w
2
910
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
5.2k
The Rails Doctrine Decade
koic
2
430
海上で動くGoサーバー: goroutineとchannelでさばく航行データストリーム
atsuki_seo
0
1k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
360
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
130
Featured
See All Featured
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
310
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
250
Done Done
chrislema
187
17k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
A designer walks into a library…
pauljervisheath
211
25k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
3
4.3k
The browser strikes back
jonoalderson
0
1.7k
Being A Developer After 40
akosma
91
590k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
How to train your dragon (web standard)
notwaldorf
97
6.8k
Are puppies a ranking factor?
jonoalderson
2
4k
30 Presentation Tips
portentint
PRO
1
410
Transcript
ΦϯϥΠϯӳձͱ SkyWay SkyWay UG Kansai #1 2018/01/12 େౡ ޫو@sbntaminif
ࣗݾհ • ΣϒϦΦגࣜձࣾWEBΤϯδχΞ + ϓϩμΫτ Ϛωʔδϟʔ • খ͍͞Ͱ͕͢ຊεϙϯαʔ͍͍͓ͤͯͨͩͯ͞Γ ·͢ʂ •
ීஈژͰಇ͍͍ͯ·͢
http://ejje.weblio.jp/content/ios
ΦϯϥΠϯࣙॻΛఏڙ͢Δ WebαʔϏε
ࣙॻҎ֎ʹ ӳձαʔϏεΛ͍ͬͯ ·͢
None
Skypeӳձͱݴ͑ ฉ͍ͨ͜ͱ͋Δํ ଟ͍ͷͰͳ͍Ͱ͠ΐ͏͔
20173݄1ΑΓɺWebRTCΛ ༻ͨ͠Ϩοεϯʹ Ҡߦ͠·ͨ͠ɻ
WebRTCͱʢςϯϓϨʣ • W3C͕ఏএ͢ΔP2PϦΞϧλΠϜίϛϡχέʔ γϣϯΛ࣮ݱ͢Δٕज़ • ϓϥάΠϯͳ͠ͰϒϥβؒͷΓͱΓ͕Մೳ • ຊதͷਓ͕͍Βͬ͠ΌΔͷͰ આ໌͓ͤ͠Α͏ͱࢥ͍·͢ɻ
SkyWay: WebRTCΛ؆୯ʹ ࣮ݱ͢ΔαʔϏε https://webrtc.ecl.ntt.com
ͯ͞ɾɾɾ
ࠓԿͷΛ͢Δ͔
ԿͷΛ͠Α͏ • ٕज़ͷʁ • ฐࣾΤϯδχΞἧ͍ • ͭΒΈͷʁ • தͷਓͷલʹ ωΨςΟϒΩϟϯϖʔϯͰ͖·ͤΜʂʂ
ԿͷΛ͠Α͏ • ٕज़ͷʁ • ฐࣾΤϯδχΞἧ͍ • ͭΒΈͷʁ • தͷਓͷલʹ ωΨςΟϒΩϟϯϖʔϯͰ͖·ͤΜʂʂ
-> ܦҢͷͲ͏ͩΖ͏͔ʁ
SkyWayΛಋೖͨ͠ܦҢͷΛ ͢Εɺ࠙ձͰ͘͢͠ ͳΔͷͰͳ͍ͩΖ͏͔ʂ
Weblioӳձ ͍ͭɺͲ͜ͰɺͩΕ͕ɺ SkyWayΛɺͳͥಋೖͨ͠ͷ͔
Weblioӳձͷ 5W1H
ᶃWHEN ͍ͭ
ϦϦʔε20173݄Ͱ͕͢ ͜͜Ͱ͏গ͠ৄ͘͠
WHEN • 201612݄ʹWebRTCҠߦΛܾఆ • ։ൃظؒ4ϲ݄ • ։ൃϝϯόʔ5ਓ • ΞϓϦಉ࣌ฒߦ
ᶄWHERE Ͳ͜
͜ͷ෦
ॳ͜͜8FC35$Ͱ ࣮͢ΔͭΓͰ͕ͨ͠ ϩάΛͨ͢Ίஅ೦
ᶅWHO ͩΕ
্͕ಋೖΛܾఆ͠·ͨ͠ ແྉͩͬͨͷͰোน͕ ͔ͬͨͷྑ͔ͬͨ
ᶆWHAT ͳʹ
SkyWay https://webrtc.ecl.ntt.com
͔ͤͬ͘ͳͷͰ ଞͷαʔϏε બ͠ͳ͔͔ͬͨ
WHAT • 201612݄Ͱ֎෦αʔϏεΛ͏߹ͷબࢶೋͭ • SkyWay • ָఱʢαʔϏε໊Εͯ͠·͍·ͨ͠ɻɻʣ • ແྉͰ͑ΔͷSkyWayͷΈͩͬͨ •
ࣗࣾͰαʔόʔͨͯΔͷίετͷ໘Ͱͳͩͬͨ͠
ᶇWHY ͳͥ
ͦͦͳͥ WebRTCʹҠߦ͔ͨ͠
SkypeͰͬͯͨࠒ
WHY • SkypeͰຊʹϨοεϯ͍ͯ͠Δͷ͔ • τϥϒϧൃੜ࣌ʹԿ͕ى͖͍ͯΔͷ͔ • 1ਓ1ΞΧϯτ͔͠࡞Εͳ͔ͬͨ • ֶߍʹఏڙ͢Δ্ͰϚΠφε
ݶք͕དྷ͍ͯͨ
ࠓͰSkypeͷͱ͜Ζ͕΄ͱ ΜͲͰ͕͢ɺۀքશମͰҠߦ ͷಈ͖͕͋Γ·͢ʂ
ᶈHOW ͲͷΑ͏ʹ
ϏσΦνϟοτ෦ peer2 .on("open", (p2id) => { peer2id = p2id; //
ૹΓଆ peer1 = new Peer(config); peer1 .on("open", (p1id) => { makeNewCall(); }); }); ͜ͷ1FFS TLZXBZKTΛ JNQPSUͨ͠ͷ ࣍ϖʔδ
ϏσΦνϟοτ෦ function makeNewCall() { const constraints = getConstraints(); getUserMedia(constraints) .then((myStream)
=> { console.log("created"); // طଘΦϒδΣΫτΛഁغ if (call !== null) { call.close(); call = null; } if (streamUrl !== null) { URL.revokeObjectURL(streamUrl); streamUrl = null; } console.log("sending stream..."); call = peer1.call(peer2id, myStream, { audioBandwidth: AUDIO_BANDWIDTH, // max audio bandwidth (kbps) videoBandwidth: Number($("#videoBandwidth").val()), // max video bandwidth (kbps) }); }) .catch(errorHandler); } 4USFBNΛऔಘ͠ 1SPNJTFΛฦ͢ औಘͨ͠4USFBNΛDBMM͠ ૬खʹૹ৴
ιʔείʔυGithubΛࢀߟ ʹ͍ͯͩ͘͠͞ʂ https://github.com/weblio/webrtc-kun
͋ͱ࠙ձͰ ͳΜͰฉ͍͍ͯͩ͘͞ʂ
We are Hiring!
͋Γ͕ͱ͏͍͟͝·ͨ͠