chrome extensionでスクリーンシェアをやってみる

12
Chrome Extensionスクリーンシェアをやってみる WebRTC Meetup Tokyo #5 https://atnd.org/events/58755

Upload: yusuke-naka

Post on 09-Jul-2015

805 views

Category:

Internet


2 download

DESCRIPTION

LT資料です https://atnd.org/events/58755

TRANSCRIPT

Page 1: Chrome Extensionでスクリーンシェアをやってみる

Chrome Extensionでスクリーンシェアをやってみる

WebRTC Meetup Tokyo #5

https://atnd.org/events/58755

Page 2: Chrome Extensionでスクリーンシェアをやってみる

自己紹介

• なかゆうすけ(Twitter : @Tukimikage)

所属

– NTTコミュニケーションズ 技術開発部

オフィシャルワーク

– HTML5 Experts.jp(HTML5 Experts Works) 副編集長

– WebRTC開発者向けフレームワーク「SkyWay」の開発

コミュニティワーク

– html5j 自動車部部長

– html5j エンタープライズ部スタッフ

Page 3: Chrome Extensionでスクリーンシェアをやってみる

スクリーンシェア

• Chrome M36(だっけな)からJSのみでは利用できなくなりました

• ChromeだとExtensionやAppsを別途用意する必要あり

Page 4: Chrome Extensionでスクリーンシェアをやってみる

Chrome Extension作ってみました

Page 5: Chrome Extensionでスクリーンシェアをやってみる

Demo

Page 6: Chrome Extensionでスクリーンシェアをやってみる

仕組み

ExtensionBackground.js

ExtensionBridge.js

ScreenShare.jsWebApp

1.スクリーンくれ!

postMessage

4.StreamIDとったどー5. ほいさっ!6. getUserMediaストリームゲット!

7. ストリームを表示

フロントのJavaScriptとExtensionとのやりとりの方法は詳しくないので、もっとスマートなやり方があれば教えて下さい。

2.StreamIDくれ! 3. StreamIDくれ!

postMessage

Page 7: Chrome Extensionでスクリーンシェアをやってみる

ScreenShare.js

Page 8: Chrome Extensionでスクリーンシェアをやってみる

getUserMediaのOptions

maxWidth、maxHeight、maxFrameRateはオプション

Page 9: Chrome Extensionでスクリーンシェアをやってみる

Bridge.js

Page 10: Chrome Extensionでスクリーンシェアをやってみる

Background.js

重要な部分はこちhttps://developer.chrome.com/extensions/desktopCapture#type-DesktopCaptureSourceType

・SourceTypeには screenとwindowが利用可能(2014/11/26現在)・Cancelした場合の処理も実装する必要あり

Page 11: Chrome Extensionでスクリーンシェアをやってみる

chrome.desktopCapture

毎度おなじみ画面選択ウィンドウが表示される

Page 12: Chrome Extensionでスクリーンシェアをやってみる

以上です