Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
THETA S + Raspberry pi 2でラ
イブストリーミングしてみた(続)
syumai
自己紹介
• 名前: syumai
• 職業: ソフトウェアエンジニア

   (アルバイト)
• 勤務先: Ducklings
• Twitter: @__syumai
Agenda
• Qiita投稿記事の概要
• この記事を書いた経緯
• GStreamerについて
• 記事の解説
• 試してみたこと
• 次のステップ
Qiitaに投稿した記事
『THETA S + Raspberry pi2 で
ライブストリーミングしてみた』
記事の概要
• Raspberry pi 2 + THETA S + GStreamerで、
全天球動画をライブストリーミングする
• 今日の話は、GStreamerメインです
経緯
• 結婚式に寝たきりのおばあちゃんを連れて行きたい
• HMD + Pepper + 二眼カメラで解決!
• http://hugproject.net/
HUG Projectの課題
• 器材調達の困難さ

HMD + Pepper + 二眼カメラ (+ Kinect)が必要

用意できる人がほとんどいない
• 手軽に使えない

持ち運びができないので、普及が難しそう
そこに現れたのが
THETA S
THETA Sなら…、
• 器材調達の困難さ

THETA S + 配信用PCだけでOK!
• 手軽に使えない

簡単に持ち運べる!
GStreamerについて
何が出来るのか
• 動画・音声などのデータのストリームをパイプライ
ンに流し込む
• パイプライン中で、動画をエンコードしたり、画像
加工フィルタをかけられる
• UDPやTCPで動画を配信できる
GStreamerを利用した部分
• 記事の最後の部分
• ここを解説します
GStreamerの主な登場人物
• Element
• データを加工したり、処理を行う部分
• Pipeline
• Element同士を接続して作った一通りの流れ
Elementとは?
• 流れてきたデータを加工、出力する
• Padでデータの入出力を行う
• 入力をsrc、出力をsinkと呼ぶ
• 形が合わないと接続できない (要・video convert)
Pipelineとは?
• Source Element: カメラなどからデータを入力
• Filter Element: データを加工(エンコード等を行う)
• Sink Element: パイプライン外にデータを出力

       (PC...
記事の簡単な解説
• v4l2src: Video for Linux 2。カメラの映像を取得
• videoconvert: 次のElementとPadが合わなかった時に、合う形に変
換する
• omxh264enc: h264に動画をエンコ...
試してみたこと
ラズパイ以外
• Mouse computerのスティックPCでも検証
• スティックPCの利点
• Windowsが動く
• openh264encを利用できる
• ストリーミング速い
Unityへの配信
• GStreamer SDK(C, C++用)を使ったネイティブプ
ラグインを作れば出来そう
• appsinkを利用すれば、ストリーム内の画像データ
を取得できる

これをUnityのTexture2Dに流し込めば表示で...
WebRTC
• ブラウザだけあれば実現可能
• NAT越えの困難さを克服できる
WebRTC
• NoraさんのThetaShaderPack(http://stereoarts.jp/)を参考に、
Equirectangularの画像に変換するGLSLを書いて、Three.jsで表示
• WebVRを使ってOculus ...
目指すところ
• 肩乗せ配信を実現したい
Prochain SlideShare
Chargement dans…5
×

THETA S + Raspberry pi 2でライブストリーミングしてみた(続)

6 763 vues

Publié le

THETA S + Raspberry Pi 2でライブストリーミングしてみた - on Qiita
http://qiita.com/syumai/items/ccf4a0116c3986e90c74
Twitter @__syumai

Publié dans : Technologie
  • Dating direct: ❶❶❶ http://bit.ly/2Qu6Caa ❶❶❶
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Sex in your area is here: ♥♥♥ http://bit.ly/2Qu6Caa ♥♥♥
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici

THETA S + Raspberry pi 2でライブストリーミングしてみた(続)

  1. 1. THETA S + Raspberry pi 2でラ イブストリーミングしてみた(続) syumai
  2. 2. 自己紹介 • 名前: syumai • 職業: ソフトウェアエンジニア
    (アルバイト) • 勤務先: Ducklings • Twitter: @__syumai
  3. 3. Agenda • Qiita投稿記事の概要 • この記事を書いた経緯 • GStreamerについて • 記事の解説 • 試してみたこと • 次のステップ
  4. 4. Qiitaに投稿した記事
  5. 5. 『THETA S + Raspberry pi2 で ライブストリーミングしてみた』
  6. 6. 記事の概要 • Raspberry pi 2 + THETA S + GStreamerで、 全天球動画をライブストリーミングする • 今日の話は、GStreamerメインです
  7. 7. 経緯
  8. 8. • 結婚式に寝たきりのおばあちゃんを連れて行きたい • HMD + Pepper + 二眼カメラで解決! • http://hugproject.net/
  9. 9. HUG Projectの課題 • 器材調達の困難さ
 HMD + Pepper + 二眼カメラ (+ Kinect)が必要
 用意できる人がほとんどいない • 手軽に使えない
 持ち運びができないので、普及が難しそう
  10. 10. そこに現れたのが THETA S
  11. 11. THETA Sなら…、 • 器材調達の困難さ
 THETA S + 配信用PCだけでOK! • 手軽に使えない
 簡単に持ち運べる!
  12. 12. GStreamerについて
  13. 13. 何が出来るのか • 動画・音声などのデータのストリームをパイプライ ンに流し込む • パイプライン中で、動画をエンコードしたり、画像 加工フィルタをかけられる • UDPやTCPで動画を配信できる
  14. 14. GStreamerを利用した部分 • 記事の最後の部分 • ここを解説します
  15. 15. GStreamerの主な登場人物 • Element • データを加工したり、処理を行う部分 • Pipeline • Element同士を接続して作った一通りの流れ
  16. 16. Elementとは? • 流れてきたデータを加工、出力する • Padでデータの入出力を行う • 入力をsrc、出力をsinkと呼ぶ • 形が合わないと接続できない (要・video convert)
  17. 17. Pipelineとは? • Source Element: カメラなどからデータを入力 • Filter Element: データを加工(エンコード等を行う) • Sink Element: パイプライン外にデータを出力
        (PC上のアプリケーション、UDP、TCPなど)
  18. 18. 記事の簡単な解説 • v4l2src: Video for Linux 2。カメラの映像を取得 • videoconvert: 次のElementとPadが合わなかった時に、合う形に変 換する • omxh264enc: h264に動画をエンコードする • rtph264pay: RTPのヘッダをデータに追加する • udpsink: UDPでデータを送信 • gst-launch-1.0 v4l2src ! videoconvert ! omxh264enc ! rtph264pay pt=96 config-interval=1 ! udpsink host=$1 port=$2
  19. 19. 試してみたこと
  20. 20. ラズパイ以外 • Mouse computerのスティックPCでも検証 • スティックPCの利点 • Windowsが動く • openh264encを利用できる • ストリーミング速い
  21. 21. Unityへの配信 • GStreamer SDK(C, C++用)を使ったネイティブプ ラグインを作れば出来そう • appsinkを利用すれば、ストリーム内の画像データ を取得できる
 これをUnityのTexture2Dに流し込めば表示でき そう • 凹みTipsを読みながら挑戦中(最近進 なし…汗)
  22. 22. WebRTC • ブラウザだけあれば実現可能 • NAT越えの困難さを克服できる
  23. 23. WebRTC • NoraさんのThetaShaderPack(http://stereoarts.jp/)を参考に、 Equirectangularの画像に変換するGLSLを書いて、Three.jsで表示 • WebVRを使ってOculus Riftでも見れるようにしました • デモ展示します!
  24. 24. 目指すところ • 肩乗せ配信を実現したい

×