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
Hacking with HTML5 Videp, RTC and Shared Web Wo...
Search
Cristiano Betta
April 11, 2014
Technology
0
68
Hacking with HTML5 Videp, RTC and Shared Web Workers
Cristiano Betta
April 11, 2014
Tweet
Share
More Decks by Cristiano Betta
See All by Cristiano Betta
Docs as Engineering - DevRelCon London 2019
cbetta
0
180
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
160
DevRelCon London 2019 - Developer Experience Workshop
cbetta
0
430
The 7 Deadly Sins of Developer Experience (DevRelCon Tokyo)
cbetta
0
4.2k
The State of Encryption
cbetta
0
410
Developer Experience Workshop
cbetta
1
610
The 7 Deadly Sins of Developer Onboarding
cbetta
0
200
A brick by brick guide to developer experience
cbetta
2
670
Hackathons Workshop
cbetta
0
330
Other Decks in Technology
See All in Technology
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
150
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
140
超初心者からでも大丈夫!オープンソース半導体の楽しみ方〜今こそ!オレオレチップをつくろう〜
keropiyo
0
110
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
210
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.9k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
300
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
290
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
150
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
300
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
170
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.3k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
53
Producing Creativity
orderedlist
PRO
348
40k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
430
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
240
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Agile that works and the tools we love
rasmusluckow
331
21k
Transcript
The Web Can Do That Better! Hacking with HTML5 Video,
RTC and Shared Web Workers Cristiano Betta CodeMotion Rome, 2014
Cristiano Betta CodeMotion Rome, 2014 Cristiano Betta @cbetta
Cristiano Betta CodeMotion Rome, 2014 Cristiano Betta @cbetta Developer Advocate
@ PayPal
Cristiano Betta CodeMotion Rome, 2014 Cristiano Betta @cbetta Developer Advocate
@ PayPal Event organiser
Cristiano Betta CodeMotion Rome, 2014 Cristiano Betta @cbetta Developer Advocate
@ PayPal Event organiser Serial entrepreneur
Cristiano Betta CodeMotion Rome, 2014 Cristiano Betta @cbetta Developer Advocate
@ PayPal Event organiser Serial entrepreneur 50% Italian
Cristiano Betta CodeMotion Rome, 2014 Cristiano Betta @cbetta Developer Advocate
@ PayPal Event organiser Serial entrepreneur 50% Italian 100% Ferrari Lover
Cristiano Betta CodeMotion Rome, 2014 Cristiano Betta @cbetta Developer Advocate
@ PayPal Event organiser Serial entrepreneur 50% Italian 100% Ferrari Lover 0% Ferrari owner
None
None
None
None
None
15s
None
None
None
None
None
Complicated setup
Complicated setup Network sensitive
Complicated setup Network sensitive Data lock-in
None
None
None
None
None
28s
We Can Do This Better
The Web Can Do This Better
None
None
None
None
None
None
None
RTCPeerConnection
RTCPeerConnection Peer-to-Peer Data API
RTCPeerConnection Peer-to-Peer Data API Peer-to-Peer DTMF
Peer-to-Server?
WebSockets?
WebSockets?
None
None
None
None
None
webrtc-experiment.com
RecordRTC.js github.com/muaz-khan/WebRTC-Experiment/ tree/master/RecordRTC
RecordRTC is a server-less JavaScript library can be used to
record WebRTC audio/ video media streams. It supports cross- browser audio/video recording
stream
stream
stream <canvas>
stream <canvas> <audio>
stream <canvas> <audio> video blob
stream <canvas> <audio> video blob audio blob
None
video blob audio blob
gif blob
None
None
None
None
None
+
+
None
13mb for 30s!
30-90 seconds to upload 30 seconds of video
None
None
bgrins.github.io/videoconverter.js ! webrtc-experiment.com/ffmpeg/merging- wav-and-webm-into-mp4.html
Background Uploads
None
HTML Web Workers
Web Workers
Shared Web Workers
Web Workers Shared Web Workers
Web Workers Shared Web Workers Separate Threads
Web Workers Shared Web Workers Separate Threads Alive when referenced
Web Workers Shared Web Workers Separate Threads Alive when referenced
Reference lost on navigation
Web Workers Shared Web Workers Separate Threads Alive when referenced
Reference lost on navigation Separate references
Web Workers Shared Web Workers Separate Threads Alive when referenced
Reference lost on navigation Separate references Shared references
Web Workers
None
None
None
None
None
Shared Web Workers
None
None
None
None
None
None
None
/recorder
background-upload.js
background-upload.js
github.com/broofa/node-uuid stackoverflow.com/questions/13870853
/server
None
None
Was it worth it?
None
None
Chrome Only (for now)
Client side conversion
Firefox Nightly now has MediaStreamRecorder API
www.w3.org/TR/mediastream-recording
Streaming vs Uploading
Real background uploads
It’s live!
None
None
battlehack.org Istanbul, Berlin, Warsaw, London, Moscow
None
None
@cbetta slideshare.net/paypal
None
None
None
None