Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
KO
Uploaded by
Kazuhiro Ota
PDF, PPTX
15,315 views
Wowzaを用いた配信基盤 Takusuta tech conf01
'151026の Takusuta Tech Conf #1 での発表スライド。 WowzaStreamingEngineについてです。
Engineering
◦
Read more
16
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 37
2
/ 37
3
/ 37
4
/ 37
5
/ 37
6
/ 37
7
/ 37
8
/ 37
9
/ 37
10
/ 37
11
/ 37
12
/ 37
13
/ 37
14
/ 37
15
/ 37
16
/ 37
17
/ 37
18
/ 37
19
/ 37
20
/ 37
21
/ 37
22
/ 37
23
/ 37
24
/ 37
25
/ 37
26
/ 37
27
/ 37
28
/ 37
29
/ 37
30
/ 37
31
/ 37
32
/ 37
33
/ 37
34
/ 37
35
/ 37
36
/ 37
37
/ 37
More Related Content
PDF
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜
by
Yusuke Naka
PDF
Janus + Audio @ Open Source World
by
Lorenzo Miniero
PDF
ライブストリーミングの基礎知識
by
kumaryu
PDF
WebRTC と Native とそれから、それから。
by
tnoho
PPTX
今さら聞けない人のためのKubernetes超入門
by
VirtualTech Japan Inc./Begi.net Inc.
PDF
Docker入門: コンテナ型仮想化技術の仕組みと使い方
by
Yuichi Ito
PPTX
WebRTC mediasoup on raspberrypi3
by
mganeko
PPTX
Skywayのビデオチャットを録画しよう。そう、ブラウザでね
by
mganeko
実践 WebRTC 〜最新事例と開発ノウハウの紹介〜
by
Yusuke Naka
Janus + Audio @ Open Source World
by
Lorenzo Miniero
ライブストリーミングの基礎知識
by
kumaryu
WebRTC と Native とそれから、それから。
by
tnoho
今さら聞けない人のためのKubernetes超入門
by
VirtualTech Japan Inc./Begi.net Inc.
Docker入門: コンテナ型仮想化技術の仕組みと使い方
by
Yuichi Ito
WebRTC mediasoup on raspberrypi3
by
mganeko
Skywayのビデオチャットを録画しよう。そう、ブラウザでね
by
mganeko
What's hot
PDF
10GbE時代のネットワークI/O高速化
by
Takuya ASADA
PDF
Deep Dive async/await in Unity with UniTask(EN)
by
Yoshifumi Kawai
PPTX
WebRTC SFU mediasoup sample
by
mganeko
PDF
脆弱性スキャナVuls(応用編)
by
Takayuki Ushida
PDF
Code igniter + ci phpunit-test
by
ME iBotch
ODP
Fuchsia概略その1
by
l_b__
PDF
2022のShowNetに向けて_ShowNet2021_conf_mini_5_2022_stm
by
Interop Tokyo ShowNet NOC Team
PDF
閉域網接続の技術入門
by
Masayuki Kobayashi
PDF
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
by
Thomas Graf
PDF
DeNAの大規模ライブ配信基盤を支える技術
by
DeNA
PDF
インターネットにおける動画配信の仕組み
by
Ryosuke Kubo
PDF
C/C++プログラマのための開発ツール
by
MITSUNARI Shigeo
PPTX
ここがつらいよWebRTC - WebRTC開発の落とし穴
by
mganeko
PDF
UE4 MultiPlayer Online Deep Dive 実践編2 (ソレイユ株式会社様ご講演) #UE4DD
by
エピック・ゲームズ・ジャパン Epic Games Japan
PDF
UniTask入門
by
torisoup
PPTX
GTMF 2016:Perforce HelixによるGit環境の改善と拡張 株式会社東陽テクニカ(Perforce Helix)
by
Game Tools & Middleware Forum
PPTX
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ
by
Takayoshi Tanaka
PPTX
3GPP TS 38.300-100まとめ
by
Tetsuya Hasegawa
PDF
さくらのVPS で IPv4 over IPv6ルータの構築
by
Tomocha Potter
PPTX
ARM LinuxのMMUはわかりにくい
by
wata2ki
10GbE時代のネットワークI/O高速化
by
Takuya ASADA
Deep Dive async/await in Unity with UniTask(EN)
by
Yoshifumi Kawai
WebRTC SFU mediasoup sample
by
mganeko
脆弱性スキャナVuls(応用編)
by
Takayuki Ushida
Code igniter + ci phpunit-test
by
ME iBotch
Fuchsia概略その1
by
l_b__
2022のShowNetに向けて_ShowNet2021_conf_mini_5_2022_stm
by
Interop Tokyo ShowNet NOC Team
閉域網接続の技術入門
by
Masayuki Kobayashi
Cilium - Bringing the BPF Revolution to Kubernetes Networking and Security
by
Thomas Graf
DeNAの大規模ライブ配信基盤を支える技術
by
DeNA
インターネットにおける動画配信の仕組み
by
Ryosuke Kubo
C/C++プログラマのための開発ツール
by
MITSUNARI Shigeo
ここがつらいよWebRTC - WebRTC開発の落とし穴
by
mganeko
UE4 MultiPlayer Online Deep Dive 実践編2 (ソレイユ株式会社様ご講演) #UE4DD
by
エピック・ゲームズ・ジャパン Epic Games Japan
UniTask入門
by
torisoup
GTMF 2016:Perforce HelixによるGit環境の改善と拡張 株式会社東陽テクニカ(Perforce Helix)
by
Game Tools & Middleware Forum
20150530 めとべや東京 Reactive Property + Livetで作るWPFアプリ
by
Takayoshi Tanaka
3GPP TS 38.300-100まとめ
by
Tetsuya Hasegawa
さくらのVPS で IPv4 over IPv6ルータの構築
by
Tomocha Potter
ARM LinuxのMMUはわかりにくい
by
wata2ki
Similar to Wowzaを用いた配信基盤 Takusuta tech conf01
PDF
【AWS初心者向けWebinar】AWSから始める動画配信
by
Amazon Web Services Japan
PPTX
AWS Black Belt Online Seminar 2018 動画配信 on AWS
by
Amazon Web Services Japan
PDF
ニコニコ生放送の配信基盤改善
by
takahiro_yachi
PDF
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
by
Amazon Web Services Japan
PDF
動画配信プラットフォーム on AWS
by
Amazon Web Services Japan
PDF
AWS Black Belt Online Seminar 2017 動画配信 on AWS
by
Amazon Web Services Japan
PDF
インターネット生放送を支える技術としくみ2015年版
by
Yusei Yamanaka
PDF
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
by
fd0
PPTX
Live配信のワークフロー takusuta tech conf #1
by
yoshinori sugiyama
PPT
ライブストリーミング
by
Yusei Yamanaka
PDF
20151207 Streaming on AWS
by
Kiyonori Kitasako
PDF
ストリーミングCDN2001
by
Masaaki Nabeshima
PDF
第3回 JAWS-UG Okayama 10分でつくる!?ライブストリーミングサーバー
by
Takeshi Furusato
【AWS初心者向けWebinar】AWSから始める動画配信
by
Amazon Web Services Japan
AWS Black Belt Online Seminar 2018 動画配信 on AWS
by
Amazon Web Services Japan
ニコニコ生放送の配信基盤改善
by
takahiro_yachi
20180612 AWS Black Belt Online Seminar AWS で実現するライブ動画配信とリアルタイムチャットのアーキテクチャパターン
by
Amazon Web Services Japan
動画配信プラットフォーム on AWS
by
Amazon Web Services Japan
AWS Black Belt Online Seminar 2017 動画配信 on AWS
by
Amazon Web Services Japan
インターネット生放送を支える技術としくみ2015年版
by
Yusei Yamanaka
いるけどないからつくってみたよ高速モバイルプッシュ配信くん #cmdevio
by
fd0
Live配信のワークフロー takusuta tech conf #1
by
yoshinori sugiyama
ライブストリーミング
by
Yusei Yamanaka
20151207 Streaming on AWS
by
Kiyonori Kitasako
ストリーミングCDN2001
by
Masaaki Nabeshima
第3回 JAWS-UG Okayama 10分でつくる!?ライブストリーミングサーバー
by
Takeshi Furusato
More from Kazuhiro Ota
PDF
社内論文読み会資料 Image-to-Image Retrieval by Learning Similarity between Scene Graphs
by
Kazuhiro Ota
PDF
広告クリエイティブ制作におけるコンピュータビジョングラフィックデザイン CA Data Engineering & Data Analysis WS #9
by
Kazuhiro Ota
PDF
社内論文読み会 LADN: Local Adversarial Disentangling Network for Facial Makeup and D...
by
Kazuhiro Ota
PPTX
黄色い象と共に生きる
by
Kazuhiro Ota
PDF
社内論文読み会 20180316 - Unpaired Image-to-Image Translation using Cycle-Consistent...
by
Kazuhiro Ota
PDF
PaperFriday: SAVOIAS: A Diverse, Multi-Category Visual Complexity Dataset
by
Kazuhiro Ota
PDF
社内論文読み会 Paper Friday, Invertible Grayscale
by
Kazuhiro Ota
社内論文読み会資料 Image-to-Image Retrieval by Learning Similarity between Scene Graphs
by
Kazuhiro Ota
広告クリエイティブ制作におけるコンピュータビジョングラフィックデザイン CA Data Engineering & Data Analysis WS #9
by
Kazuhiro Ota
社内論文読み会 LADN: Local Adversarial Disentangling Network for Facial Makeup and D...
by
Kazuhiro Ota
黄色い象と共に生きる
by
Kazuhiro Ota
社内論文読み会 20180316 - Unpaired Image-to-Image Translation using Cycle-Consistent...
by
Kazuhiro Ota
PaperFriday: SAVOIAS: A Diverse, Multi-Category Visual Complexity Dataset
by
Kazuhiro Ota
社内論文読み会 Paper Friday, Invertible Grayscale
by
Kazuhiro Ota
Wowzaを用いた配信基盤 Takusuta tech conf01
1.
を用いた配信基盤 Kazuhiro Ota @ciela 1
2.
自己紹介 大田 かずひろ @ciela ㈱サイバーエージェント所属 ゆとりサーバサイドアプリエンジニア アメーバピグでHadoopとかいじってました takusutaには各サービスで共通の配信基盤担 当として関わってます 2
3.
今日のおはなし takusutaで利用している共通配信基盤の中でも Wowza Streaming
Engine という プロダクトについて私が得た知見を出来る限りお伝えします。 3
4.
共通配信基盤 4 共通配信基盤の役割 利用サービス 採用技術 配信開始フロー
5.
共通配信基盤 現在稼働中の生配信に特化した3サービスの配信部分を共通化したシステム。 ❏ 動画・音声の配信・視聴 ❏ 配信サーバの管理 ❏
配信ストリームの管理 ❏ 各種APIの提供 5
6.
利用サービス 6 ❏ takusuta ❏ https://takusuta.com/ ❏
ライブ動画加工フィルターで楽しむ個人配信サービス ❏ アメスタ ❏ http://studio.ameba.jp/ ❏ 有名人・芸能人に特化した高画質生配信サービス ❏ ラジ生? ❏ https://radio-nama.com/ ❏ 音声のみのお手軽なネットラジオ配信サービス
7.
主な使用技術 ❏ 配信サーバ ❏ Wowza
Streaming Engine on EC2 ❏ RTMPでストリームを待ち受け ❏ 各サービスごとにクラスタを分割して疎な配置を行ってます ❏ CDN ❏ CloudFront ❏ HLSをキャッシュする配信視聴側のエンドポイント ❏ APIサーバ ❏ Go on EC2 ❏ 各サービスに共通配信基盤の情報を提供 ❏ ストリーム・配信サーバ管理DB ❏ MongoDB on EC2 ❏ アーカイブストレージ ❏ S3 ❏ ElasticTranscoderによるHLSトランスコード済みのストリームデータを格納 7
8.
ライブ配信時(生配信時)① 8 Wowza API 宅スタAPI 配信基盤 CloudFront DB takusuta配信者 takusuta視聴者 配信した〜い 新規配信用に トークン払い出し て配信サーバ教 えて〜 すいてる配信 サーバ教えて〜
9.
ライブ配信時(生配信時)② 9 Wowza API takusutaAPI 配信基盤 CloudFront DB takusuta配信者 takusuta視聴者 トークンと接続 する配信サー バだよ〜 xxxというトークン で配信サーバ01 に繋ぐよう伝え て〜 配信サーバ01が すいてるよ〜
10.
ライブ配信時(生配信時)③ 10 Wowza API takusutaAPI 配信基盤 CloudFront DB takusuta配信者 takusuta視聴者 01さん、配信開 始するよ〜これ トークンね〜 HLSを CloudFrontに キャッシュさせ るよ〜 ライブ配信視 聴した〜い
11.
VOD配信時(アーカイブ配信) 11 配信基盤 CloudFront takusuta視聴者 S3 過去配信 視聴した〜い HLSをキャッシュ させるよ〜
12.
その他の機能 ❏ 配信終了後のMP4ファイルをS3にアップロードしてアーカイブ ❏ S3にアップロードされたファイルをVOD用にトランスコード ❏
サービスごとに必要なタイミングで通知を送信 12 配信準備からVOD変換までワークフロー形式で処理を行っています。 次の発表で詳しくご説明いたします。
13.
Wowza Streaming Engine 13 プロダクトの簡単な説明 付随するクラウドサービスとプレイ ヤーアプリケーション 主要アドオン紹介
14.
Wowza Streaming Engine 14 ❏
Wowza Media Systems が開発・販売している動画ストリーミングサーバ ❏ ‘1510現在最新版は4.3 ❏ Adobe Media Server (Flash Media Server) 互換 ❏ カスタマイズ可能 ❏ 設定やアドオンでもある程度の自由度はもたせられる ❏ プラグインの自作も可能 ❏ アダプティブビットレート機能 ❏ 回線環境ごとに予め決めておいた ビットレート・解像度で視聴できる
15.
サポートプロトコルなど ❏ 対応プロトコル ❏ RTMP ❏
RTSP ❏ HLS ❏ MPEG-DASH ❏ SmoothStreaming ❏ など ❏ 対応コーデック ❏ H.264 ❏ H.265 ❏ AAC ❏ など ❏ 対応ファイルフォーマット ❏ MP4 ❏ MP3 ❏ FLV ❏ など 15
16.
Wowza Streaming Cloud ❏
マネージドなクラウドストリーミングサービス ❏ もちろん自分でサーバを用意する必要はなし ❏ 時間指定で配信を開始・停止できるスケジューリング機能 16
17.
Wowza GoCoder Wowzaサーバに対して簡単な配信を試すこ とができる純正のネイティブアプリ ❏ iOS ❏
Android 1年ほど前に無料になりました 17
18.
Transcoderアドオン 18 ❏ 設定可能項目 ❏ ビデオビットレート ❏
オーディオビットレート ❏ 画面解像度 ❏ フレームレート ❏ コーデック ❏ など ライブ配信ストリームをリアルタイムに複数のビットレートや フォーマットへの変換を行うアドオン。 アダプティブビットレートが簡単に実現できる、 既にWowzaに組み込み済みの有料アドオン。
19.
Transcoderアドオン 19 予めテンプレートを用意し、 Stream Name
Group というリソース単位にまとめておくことで アダプティブビットレートに簡単に対応することが可能。 この例では ❏ 360p ❏ 160p という2つのトランスコードプリセットが有効で ❏ [ストリーム名]_all というName Groupで 360p, 160p 両方 ❏ [ストリーム名]_mobile というName Groupで 160p のみ がアダプティブビットレートとして利用できる もちろん他のプリセットも有効であれば ABR対象になります
20.
その他の有料アドオン ❏ nDVRアドオン ❏ ライブ配信時の追っかけ再生やポーズを
VODライクに行うことができる ❏ DRMアドオン ❏ 配信コンテンツに対しての保護をかけることができる 2つともTranscoderアドオン同様有料であり既にWowzaに組み込み済み。 20
21.
設定とカスタマイズ 21 Application設定 Transcoderアドオン設定 プラグインの開発と種類
22.
共通配信基盤における役割 ❏ RTMPでアプリケーションからの配信を待ち受け ❏ HLSでCloudFrontを介した視聴を待ち受け ❏
配信開始・終了のトークン認証 ❏ 配信開始・終了時の各サービスへの通知 ❏ 各配信サーバごとの接続数をDBに更新 ❏ 配信期限の過ぎたストリームの切断 ❏ 配信の強制切断 ❏ 配信ビットレートのロギング 22
23.
アプリケーション設定 アプリケーションとはWowzaでライブ配信を行う際に作成する設定の単位。 共通配信基盤では各サービスごとに1アプリケーションを割り当てている。 以下、共通で施している設定。 ❏ アプリケーション種別 ❏ LiveHTTPOrigin ❏
配信プロトコル ❏ RTMP ❏ 視聴プロトコル ❏ HLS ❏ 利用するアドオン ❏ Transcoderアドオン ❏ ストリーム全録画をONに ❏ すべての配信ストリームがローカルに MP4で保存される 23
24.
プラグイン開発 デフォルトの状態でできることは基本的な配信・録画・視聴のみ。 配信の開始・終了をフックしたり、何らかの処理を定期実行させるにはJavaでのプラグイ ン開発が必要。 具体的には以下のような処理はプラグイン開発で補うことになりました。 ❏ 配信開始・終了時のトークン認証 ❏ 配信開始・終了時のサービスへの通知 ❏
DB上の各サーバごとの接続数レコードの更新 ❏ 配信期限の過ぎたストリームの切断 ❏ 配信の強制切断 ❏ 配信ビットレートのロギング 24
25.
プラグイン開発 現在配信基盤で稼働しているプラグインの大まかな種別。 (私が勝手にこう呼んでるだけです) ❏ イベントフック型 ❏ 配信開始時のトークン認証 ❏
配信開始時の通知送信 ❏ 配信途中切断時のクリーンアップ ❏ 常駐ワーカー型 ❏ 数秒毎の配信ストリームそれぞれのビットレートロギング ❏ 数秒毎のサーバの接続数の確認と DBレコードの更新 ❏ 1分毎の配信期限切れストリームの切断 ❏ HTTPエンドポイント型 ❏ 配信中のストリームの強制切断 25
26.
イベントフック型 ユーザの配信状態に伴う処理を定義できる。 まずは ModuleBase というクラスを拡張しストリームが再生された際 (onStreamCreate)にストリームオブジェクトにストリームのリスナインターフェイスであ る
IMediaStreamListener3 を実装・登録することになる。 利用できる主なフックは ❏ ストリーム配信開始時 ❏ onPublish ❏ ストリーム配信終了時 ❏ onUnPublish ❏ AMFデータ送信時 ❏ onMetaData など。 26
27.
常駐ワーカー型 主にWowzaサーバの状態を確認したりタイマーで自動処理を行うために 基本的にJavaのExecutorFrameworkを利用してスレッドを常駐させています。 Executorの立ち上げにはWowzaサーバ自体の立ち上がりをフックしています。 具体的には IServerNotify3 というインターフェイスを実装することで ❏
サーバインスタンス初期化 ❏ onServerInit ❏ サーバインスタンス破棄開始 ❏ onServerShutdownStart ❏ サーバインスタンス破棄開始 ❏ onServerShutdownComplete などのタイミングをフックすることができます。 27
28.
HTTPエンドポイント型 自作機能をWebアプリケーションとして提供できます。 HTTPProvider2Base というクラスを拡張し、onHTTPRequest メソッドを実装することで 任意の処理を記述することができます。 その後設定ファイルに作成したクラスのFQDNとパスパターンを追記することでエンドポ イントが利用可能になります。 28
29.
プラグイン開発 ❏ インストールしたWowza自体のライブラリ(Jar)を参照して開発していくスタイル ❏ SDKというには少々荒っぽい ❏
Eclipse用のプロジェクト雛形は提供されてるけどビルドツールは Ant ❏ 結局自前でGradle化してJarをリポジトリにアップしたりした ❏ ドキュメントがあまり書かれてない ❏ オブジェクトやスレッドのライフサイクルがわからない ❏ なぜかPDFで配布 ❏ FAQ兼ねているフォーラムで検索・尋ねたほうが早いことも ❏ プラグインのサンプル集が配られてるのが救い ❏ Java1.4とかその時代のコードが沢山残ってたりするけど 29
30.
サーバ情報と簡単 なメトリクス紹介 takusutaサーバ情報 サーバリソースの使われ方 30
31.
takusuta Wowzaサーバ情報 現在takusutaで利用しているWowzaサーバインス タンス情報は下記の通り。 ❏ EC2インスタンス ❏
c3.2xlarge x 5 ❏ ディスク ❏ EBS gp2 100GB ❏ OS ❏ CentOS7 ❏ ファイルシステム ❏ xfs 31 さらにWowza実行Java環境は下記の通り。 ❏ Java ❏ Oracle JDK ❏ ヒープサイズ ❏ Production Levelを選択 ❏ 10GB ❏ GC ❏ Concurrent Mark-Sweep GC
32.
takusuta Transcoder設定 ❏ トランスコード先のStream種類 ❏
1Mbps 288x512 px ❏ 300kbps 288x512 px ❏ 200kbps 216x384 px ❏ 100kbps 90x160 px ❏ アダプティブビットレート用のStream Name Group ❏ All ❏ 全て ❏ high ❏ 1Mbps, 300kbps ❏ mid ❏ 300kbps, 200kbps ❏ low ❏ 100kbps 32
33.
サーバリソースの使われ方 ❏ 配信側ネットワーク帯域 ❏ 同時配信本数・配信ビットレートによる ❏
現在takusutaでは1台あたりピーク帯で約 350〜400Mbpsの使用率 33
34.
サーバリソースの使われ方 ❏ CPU ❏ 同時配信本数・配信ビットレート・トランスコーダ設定に依存 ❏
1本の配信でのベンチマークが取れればあとは配信本数で見積もり可能 ❏ 現在takusutaでは1台あたりピーク帯で約 5,60%の使用率 34
35.
サーバリソースの使われ方 ❏ メモリ ❏ 同時配信本数・配信ビットレート・トランスコーダ設定に依存 ❏
現在takusutaでは1台あたりピーク帯で約 1.5〜2GBの使用率 35
36.
まとめ ❏ Wowza Streaming
Engine を用いた共通配信基盤における配信についてご説明 させていただきました。 ❏ Wowzaは今もアップデートを続けており、これからも新機能が登場してくることと思 います。 ❏ まだまだ知見が少ない(と思う・・)プロダクトではありますが、Web上なりリアルコ ミュニケーションなりで積極的な情報交換を行っていければと思っております。 36
37.
おしまい 37
Download