SlideShare a Scribd company logo
1 of 38
Download to read offline
Web RTC とWeb Audio API を用いた
Web技術のみのチェックインサービスの
技術的検証
GMOインターネット
次世代システム研究室
チェックインサービス
• ユーザを店舗に誘導するO2Oサービス
• インセンティブにより来店誘導
• 具体例
– GMOチェックイン、スマポ、楽天チェックなど
GMOチェックイン
• 対応店舗数:約1,800
• Android, iOS アプリのためのSDKを提供
• 来店検知:iBeacon を利用
他のチェックインサービス
• スマポ
– Android, iOS アプリ
– 来店検知:iBeacon, 超音波
• 楽天チェック
– Android, iOS アプリ
– 来店検知:iBeacon, 超音波
iBeacon とは
• Bluetooth Low Energy (BLE) ビーコンの一種
• UUID, Major, Minor により識別
• 詳細はブログ
– http://recruit.gmo.jp/engineer/jisedai/blog/ibeac
on-dev1/
– http://recruit.gmo.jp/engineer/jisedai/blog/andro
id5-scan-ble/
超音波
• 超音波は振動数が毎秒2万ヘルツ以上で定
常音として耳に感じない音 (広辞苑)
• 18kHz 以上を利用することが多い
• 対応スマホが多い
– センサーがマイクのため
問題点
• ネイティブアプリである
– インストールが必要
– Google, Apple のプラットフォーム上である
• 専用デバイスが必要
提案
• Web 技術のみのチェックインサービス
– Web アプリである
– ブラウザ以外不要
全体概要
超音波
Web Audio API
Web RTC
音声データ
成果通知
Web RTC
• Web Real-Time communication
• ブラウザでリアルタイムなコミュニケーション
を行うためのプロトコル
• ブラウザ同士のP2P 接続
• UDP/IP を使用
• ビデオ会議システムなどに応用
動画、音声など
対応ブラウザ
出典:http://caniuse.com/#feat=rtcpeerconnection
Web RTC
大きく分けると2つの技術に分けられる
1. メディアへのアクセス
– 主にカメラ、マイク
2. P2P 通信のための仕組み
Web チェックインサービスではマイクを利用しているが、
Web RTC の説明のために、カメラを用いる
メディアへのアクセス
メディアへのアクセス
カメラの映像のストリーム
データを取得する
メディアへのアクセス
取得するローカルメ
ディアを指定
メディアへのアクセス
動画を表示するた
めのvideo タグ
動画ストリームを
流し込む
通信確立までの流れ
1. index.html 1. index.html
2. SDP
3. ICE
4. 接続確立
SDP
• Session Description Protocol
– セッションを開始するための必要な情報
• メディアの種類、形式
• IPアドレス、ポート など
ICE
• Interactive Connectivity Establishment
– 通信経路
– 交換するのは候補
自動接続
index.html
Web Socket
シグナリングサーバ
NAT 越え
• ブラウザが知っている情報
– ローカルIP、割り当てたUDPポート
• 必要な情報
– グローバルIP、外部に向けたUDPポート
SDP : { IP:192.168.0.0, …}
NAT 越え
SDP : { IP:133.130.1.1, …}
133.130.1.1 153.122.1.1
STUN サーバ
Web RTC まとめ
• 容易にビデオ会議システムを作成
– 今回のデモではHTML とJavaScript を合わせて
200行程度
• STUN サーバを利用してNAT 超え
Web Audio API
• オーディオの処理のためのJavaScript API
• ノードをつなげて音声を作成
INPUT EFFECT DESTINATION
Audio Context
対応ブラウザ
出典:http://caniuse.com/#feat=audio-api
音声作成
Oscillator DESTINATION
Audio Context
音声作成
Oscillator DESTINATION
Audio Context
Audio Context
作成
音声作成
Oscillator DESTINATION
Audio Context
Oscillator 作成
音声作成
Oscillator DESTINATION
Audio Context
ノード接続
音声作成
Oscillator DESTINATION
Audio Context
音声出力スタート
任意の音の発生
• 音声の波形や周波数を変更可能
• 複数の音声出力ノードを同一スピーカーに接
続することで合成可能
Oscillator
DESTINATION
Oscillator
音の解析
INPUT Analyzer
Audio Context
• スペクトルデータ
• 信号の生データ
– Unit8Array, Float32Array
Web RTC との連携
• Web RTC でマイクから音を取得
Web RTC Analyzer
Audio Context
Web Audio API まとめ
• 任意の音声を発生可能
– 周波数
– 波形
– ミックス
• 解析も可能
– スペクトルデータ
問題点
超音波
Web Audio API
Web RTC
音声データ
成果通知
7kHz 以上の
音声を取得で
きない
音声データを
解析できない
全体まとめ
• Web 技術のみでチェックインサービス
• Web RTC
– ビデオ会議システムの作成
• Web Audio API
– 任意の音声を発生
– Web RTC と接続し、周囲の音声の解析
課題
• 7kHz 以上の音声データの取得
• なりすまし防止のためのアルゴリズム
– 音声の変更
– 音声の一致確認
参考
• WebRTC を使ってみよう!(HTML5 Expert.jp)
– https://html5experts.jp/series/webrtc-beginner/
• Web AudioAPI解説(g200kg Music&Software)
– http://www.g200kg.com/jp/docs/webaudio/

More Related Content

Similar to Web RTC とWeb Audio API を用いた Web技術のみのチェックインサービスの 技術的検証

"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性
"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性
"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性
Junji Nishihara
 
アプリ開発
アプリ開発アプリ開発
アプリ開発
injus
 
Feedtailor portfolio 20141115
Feedtailor portfolio 20141115Feedtailor portfolio 20141115
Feedtailor portfolio 20141115
feedtailor
 

Similar to Web RTC とWeb Audio API を用いた Web技術のみのチェックインサービスの 技術的検証 (20)

認証技術、デジタルアイデンティティ技術の最新動向
認証技術、デジタルアイデンティティ技術の最新動向認証技術、デジタルアイデンティティ技術の最新動向
認証技術、デジタルアイデンティティ技術の最新動向
 
"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性
"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性
"Kongゲートウェイ2.5リリース" Kong Konnectアップデート オンラインミートアップ :kong 製品整理、優位性
 
iBeacon を利用したサービス開発のポイント
iBeacon を利用したサービス開発のポイントiBeacon を利用したサービス開発のポイント
iBeacon を利用したサービス開発のポイント
 
AIプロジェクト実践解説 〜 農業・医療・建設プラットフォームを支えるために必要なスキル 〜
AIプロジェクト実践解説 〜 農業・医療・建設プラットフォームを支えるために必要なスキル 〜AIプロジェクト実践解説 〜 農業・医療・建設プラットフォームを支えるために必要なスキル 〜
AIプロジェクト実践解説 〜 農業・医療・建設プラットフォームを支えるために必要なスキル 〜
 
ビーコンをつかうIoTアプリケーション
ビーコンをつかうIoTアプリケーションビーコンをつかうIoTアプリケーション
ビーコンをつかうIoTアプリケーション
 
デバイスの運用で使える AWS IoTサービスの紹介
デバイスの運用で使える AWS IoTサービスの紹介デバイスの運用で使える AWS IoTサービスの紹介
デバイスの運用で使える AWS IoTサービスの紹介
 
スキスキIonic
スキスキIonicスキスキIonic
スキスキIonic
 
Boundio slideshare
Boundio slideshareBoundio slideshare
Boundio slideshare
 
Idcon25 FIDO2 の概要と YubiKey の実装
Idcon25 FIDO2 の概要と YubiKey の実装Idcon25 FIDO2 の概要と YubiKey の実装
Idcon25 FIDO2 の概要と YubiKey の実装
 
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
Leading the way to W3C TPAC 2015 『HTML5 関連の API の現状とこれから』
 
アプリ開発
アプリ開発アプリ開発
アプリ開発
 
【Connected.T2】システム構築・運用負荷を軽減!SORACOM Beam が実現する、ヒトとモノにやさしいIoT
【Connected.T2】システム構築・運用負荷を軽減!SORACOM Beam が実現する、ヒトとモノにやさしいIoT【Connected.T2】システム構築・運用負荷を軽減!SORACOM Beam が実現する、ヒトとモノにやさしいIoT
【Connected.T2】システム構築・運用負荷を軽減!SORACOM Beam が実現する、ヒトとモノにやさしいIoT
 
WebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWebWebIntentsにより拓かれる次のWeb
WebIntentsにより拓かれる次のWeb
 
フィードテイラー紹介(2014.11.15版)
フィードテイラー紹介(2014.11.15版)フィードテイラー紹介(2014.11.15版)
フィードテイラー紹介(2014.11.15版)
 
Feedtailor portfolio 20141115
Feedtailor portfolio 20141115Feedtailor portfolio 20141115
Feedtailor portfolio 20141115
 
Kadecot API/Opensources for Engineers
Kadecot API/Opensources for EngineersKadecot API/Opensources for Engineers
Kadecot API/Opensources for Engineers
 
Api
ApiApi
Api
 
Computex Taipei 2016 Report
Computex Taipei 2016 ReportComputex Taipei 2016 Report
Computex Taipei 2016 Report
 
How FIDO Works
How FIDO WorksHow FIDO Works
How FIDO Works
 
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
デバイス WebAPI(GotAPI)とその活用事例のご紹介 - ワイヤレスジャパン2016
 

Recently uploaded

Recently uploaded (10)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

Web RTC とWeb Audio API を用いた Web技術のみのチェックインサービスの 技術的検証