Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Vuzix Developer Conference

857 views

Published on

Vuzix Developer Conferenceの資料です。

Published in: Technology
  • Be the first to comment

Vuzix Developer Conference

  1. 1. C-LIS CO., LTD.
  2. 2. M100でWebRTCアプリ 開発 Vuzix Developer Conference 有限会社シーリス 有山 圭二
  3. 3. WebRTCとは 3 Web Real-Time Communication World Wide Web Consortium(W3C)が提唱するリアルタイムコミュニケーシ ョン用のAPIの定義で、プラグイン無しでウェブブラウザ間のボイスチャッ ト、ビデオチャット、ファイル共有ができる。 (Wikipedia https://ja.wikipedia.org/wiki/WebRTC)
  4. 4. WebRTCとぼく 4 Google社主催のWebRTCハッカソンに参加。 当時はまだChromeにExperimentalとして実装されていた
  5. 5. ボスが来た
  6. 6. WebRTC構成 6 Peer 2 Peer 音声・ビデオ
  7. 7. WebRTC構成 Peer 2 Peer Signaling Server 7 音声・ビデオ
  8. 8. WebRTC構成(ICE: Interactive Connectivity Estblishment) Peer 2 Peer Signaling Server STUN(Session Traversal Utilities for NAT) Server 8 音声・ビデオ
  9. 9. WebRTC構成 Signaling Server TURN(Traversal Using Relay around NAT) Server 音声・ビデオ 9
  10. 10. WebRTCとは 10 Web Real-Time Communication World Wide Web Consortium(W3C)が提唱するリアルタイムコミュニケーシ ョン用のAPIの定義で、プラグイン無しでウェブブラウザ間のボイスチャッ ト、ビデオチャット、ファイル共有ができる。 (Wikipedia https://ja.wikipedia.org/wiki/WebRTC)
  11. 11. WebRTCとブラウザ 11 バージョン 対応状況 Chrome 47 ○ Firefox 42 ○ Safari 9 ×(プラグイン) Internet Explorer 11 ×(プラグイン) Microsoft Edge 25.10586 ○ Android WebView 5.x〜 ○ Mobile Safari 9.1 × 出典:JavaScriptoon 2 WebRTC~知識ゼロから5日でボイスチャットを作れた技術 発行: TechBooster 執筆者: @mzsm_j
  12. 12. Safari(Webkit)もようやく…… 12 https://webkit.org/status/?utm_content=bufferd7cfd&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer#specification-webrtc
  13. 13. M100でWebRTC 13 ブラウザ? ネイティブ?
  14. 14. M100 の OS 14 Android 5系未満なので ブラウザによる WebRTC対応無し
  15. 15. OpenWebRTC by EricssonResearch 15 https://github.com/EricssonResearch/openwebrtc
  16. 16. OpenWebRTC 16 http://www.openwebrtc.org/ • H.264とVP8コーデックに対応 (GStreamerベース) • クロスプラットフォーム • 2条項BSDライセンス
  17. 17. デモ
  18. 18. STUN Server stun.l.google.com:19302 18
  19. 19. Signaling Server http://demo.openwebrtc.org:38080 19
  20. 20. WebRTC構成(ICE: Interactive Connectivity Estblishment) Peer 2 Peer Signaling Server STUN(Session Traversal Utilities for NAT) Server 20 音声・ビデオ
  21. 21. ハマったところ
  22. 22. ライブラリの追加 22 https://github.com/EricssonResearch/openwebrtc-examples/wiki/Developing-Android-apps
  23. 23. dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'io.openwebrtc:openwebrtc-android:0.3' } 今はリポジトリにあるのでjar不要 https://github.com/EricssonResearch/openwebrtc- examples/blob/master/android/Native/app/build.gradle 23
  24. 24. dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'io.openwebrtc:openwebrtc-android-sdk:0.1.0' } android-sdkが別にある https://github.com/EricssonResearch/openwebrtc- examples/blob/master/android/NativeCall/app/build.gradle 24
  25. 25. ビルドエラー 25 SDKのAndroidManifest.xmlに プロパティが設定されているのが原因
  26. 26. <manifest package="com.vuzix.samplewebrtc.android" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"> <application android:allowBackup="false" android:configChanges="orientation|keyboard|keyboardHidden|screenSize" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" tools:replace="android:allowBackup"> ビルドエラー 26
  27. 27. AndroidHttpClient is deprecated ビルドはできるけど、あまり気持ちよいものではない HttpUrlConnectionに置き換えた 27
  28. 28. /** * Shutdown the process as a workaround until cleanup has been fully implemented. */ @Override protected void onStop() { finish(); System.exit(0); } なぞのコードが……
  29. 29. android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "com.ericsson.research.owr.examples.nativecall" minSdkVersion 19 targetSdkVersion 22 versionCode 1 versionName "1.0" ndk { abiFilter "armeabi-v7a" } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } build.gradle 29
  30. 30. 対応アーキテクチャがARMのみ! 30 https://github.com/EricssonResearch/openwebrtc
  31. 31. Intel CPUには非対応(M300は……?) https://www.vuzix.com/Products/m300-smart-glasses 31
  32. 32. M300はAndroid 6がベース https://www.vuzix.com/Products/m300-smart-glasses 32
  33. 33. WebRTCサンプルコード(M100向け)は、 GitHubで公開予定 https://github.com/vuzixtokyo 33
  34. 34. C-LIS CO., LTD. 各製品名・ブランド名、会社名などは、一般に各社の商標または登録商標です。 本資料中では、©、®、™を割愛しています。 本資料は、有限会社シーリスの著作物であり、 クリエイティブコモンズの表示-非営利-継承 3.0 Unported ライセンスの元で公開しています。

×