9. 全体像
ウェブアプリ
前端 JS API 後端 API
WebRTC ブラウザ
他のブラウザ
webRTC plugin
インターネット
ネイティブAndroidアプリ
Android
前端API
後端API
Android
SDK
ネイティブiOSアプリ
iOS 前端
API
後端 API
iOS
SDK
ネイティブデスクトップアプリ
デスクトップ
前端API
後端 API
デスクトップ
SDK
ロードバランシング… セッションとセキュリティ
シグナル
サーバー
ICE
サーバー
API
サーバー
課金
サーバー
ストア
サーバー
メディア
サーバー
相互運用性
サーバー
統計
C F O
ロード
テスト
WEB ー ウェブ MOBILE ー モビル
DESKTOP
&
IoT
INFRASTRUCTURE ー インフラ
10. 全体像
ウェブアプリ
前端 JS API 後端 API
WebRTC ブラウザ
他のブラウザ
webRTC plugin
インターネット
ネイティブAndroidアプリ
Android
前端API
後端API
Android
SDK
ネイティブiOSアプリ
iOS 前端
API
後端 API
iOS
SDK
ネイティブデスクトップアプリ
デスクトップ
前端API
後端 API
デスクトップ
SDK
ロードバランシング… セッションとセキュリティ
シグナル
サーバー
ICE
サーバー
API
サーバー
課金
サーバー
ストア
サーバー
メディア
サーバー
相互運用性
サーバー
統計
C F O
ロード
テスト
11. 全体像 – webrtc.org
ウェブアプリ
前端 JS API 後端 API
WebRTC ブラウザ
他のブラウザ
webRTC plugin
インターネット
ネイティブAndroidアプリ
Android
前端API
後端API
Android
SDK
ネイティブiOSアプリ
iOS 前端
API
後端 API
iOS
SDK
ネイティブデスクトップアプリ
デスクトップ
前端API
後端 API
デスクトップ
SDK
ロードバランシング… セッションとセキュリティ
シグナル
サーバー
ICE
サーバー
API
サーバー
課金
サーバー
ストア
サーバー
メディア
サーバー
相互運用性
サーバー
統計
C F O
ロード
テスト
12. What do I want?
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Add my Feature
(codec)
Send to
Dashboard
Common public dashboard for
anyone to send failed build /
test results to ease bug reports
13. What do I get today?
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Webrtc.org
Send to
Waterfall
14. What do I get today?
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
• Pristine.io build scripts (android, iOS)
• https://github.com/pristineio/webrtc-build-scripts
• eFace2Face’s Cordova webRTC plugin (iOS)
• https://github.com/eface2face/cordova-plugin-iosrtc
Send to
Dashboard
15. What do I get today?
• Vicken Simonian’s Automatically compiled libs (win, mac, android)
• https://github.com/vsimon/webrtcbuilds/wiki
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Send to
Dashboard
16. What do I get today?
• Dr Alex build scripts (win, mac, linux)
• http://webrtcbydralex.com/index.php/2015/07/18/the-
chromium-webrtc-build-system/
• http://webrtcbydralex.com/index.php/2015/07/22/automating-
libwebrtc-build-with-cmake/
• https://github.com/agouaillard/libwebrtc-cmake
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Send to
Dashboard
17. Compiling is not enough
commit b933667a7f97697d6390d1eee5f378cedd9ca208
Author: Bjorn Terelius <terelius@google.com>
Date: Thu Jul 30 12:05:08 2015 +0200
Revert "Renamed the ACMDump to RtcEventLog and moved it to webrtc/video, ...
This reverts commit c159b046d7a0086e45ae0f79c00a462f3fafd207.
BUG=
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1250383003 .
Cr-Commit-Position: refs/heads/master@{#9660}
18. webrtc.org : arbitrarily broken
(*) git log --since=1.week --pretty=oneline | grep Revert | wc -l
Last week only(*), 2 reverts ….
Last month, 7 reverts ….
Since Jan., 107 reverts ….
You cannot blindly use it! You need to test and validate the lib.
19. webrtc.org : Unit tests
http://webrtcbydralex.com/index.php/2015/07/23/how-to-test-libwebrtc/
Webrtc includes unit tests that are
built by default.
WARNING #1: You have to run them from the location
they’re build in! (paths to input files are hardcoded).
WARNING #2: You have to reverse engineer the .isolate file
to know which parameters to use
WARNING #3: You have to reverse engineer the waterfall
for extra parameters, and for which tests to run.
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Send to
Dashboard
20. webrtc.org : Unit tests
http://webrtcbydralex.com/index.php/2015/07/23/how-to-test-libwebrtc/
Webrtc includes unit tests
that are built by default.
Using the scripts on the
blog, or the corresponding
code on github, you can run
them automatically, locally
or remotely.
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
22. webrtc.org : Installers
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Send to
Dashboard
23. webrtc.org : stable versions
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Send to
Dashboard
http://webrtcbydralex.com/index.php/tools/
24. Make and distribute your own
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Send to
Dashboard
• H264/265 support
• HTTP Proxy support
• Screensharing support
• AVFoundation support
• Whatever you want
25. Integrate in your SDK / Plugin / …
Get Source
Patch /
Modify
Source
Compile Test
Package /
Distribute
Send to
Dashboard
• Shield your devs from libwebrtc problems.
• Have a consistent install / layout policy
• Packaging already done!