AbemaTV の課題と
Demuxed 2019
株式会社サイバーエージェント 五藤 佑典
- Tokyo Video Tech #6 Junction -
五藤 佑典
YUSUKE GOTO
https://ygoto3.com/
@ygoto3_
● California State University, San Bernardino グラフィックデザイン専攻
● ソフトウェアエンジニア @ サイバーエージェント
● 株式会社 AbemaTV 開発本部
○ New Device チーム
あらゆるデバイスにAbemaTV を展開するための技術を提供するチーム
○ Streaming Client チーム
AbemaTV の再生品質を軸にUX エンジニアリングにコミットするチーム
○ 動画技術エバンジェリスト
世界各国に足を運び動画技術に関する情報をキャッチアップし、
社内外の動画サービスの発展に貢献するロール
○ DesignOps 推進バックエンド
大規模組織でスケールできるプロダクトデザイン開発組織の構築する活動
五藤 佑典
YUSUKE GOTO
https://ygoto3.com/
@ygoto3_
五藤 佑典
YUSUKE GOTO
https://ygoto3.com/
@ygoto3_
AbemaTV ?
すべて無料
オリジナル番組をはじめ、アニメやドラ
マ、音楽、スポーツなど、すべて無料で
提供しています。
100% プロコンテンツ
サイバーエージェントとテレビ朝日のそ
れぞれの強みを活 かした制作体制で高品
質のコンテンツを拡充しています。
完全編成型
24 時間 365 日配信で、いつでもテレビ
を見るような感覚で楽しむことができま
す。
多彩なラインナップ
2 オリジナルの生放送や、ドラマ、
ニュース、アニメ、スポーツなど約 20
チャンネルを取り揃えています。
AbemaTV ?
すべて無料
オリジナル番組をはじめ、アニメやドラ
マ、音楽、スポーツなど、すべて無料で
提供しています。
100% プロコンテンツ
サイバーエージェントとテレビ朝日のそ
れぞれの強みを活 かした制作体制で高品
質のコンテンツを拡充しています。
完全編成型
24 時間 365 日配信で、いつでもテレビ
を見るような感覚で楽しむことができま
す。
多彩なラインナップ
2 オリジナルの生放送や、ドラマ、
ニュース、アニメ、スポーツなど約 20
チャンネルを取り揃えています。
広告マネタイズ重要すべて無料
多彩な対応デバイス
● iPhone
● iPad
● Apple TV
● Android Smartphone
● Android Tablet
● Android TV
● Fire Tablet
● Amazon Fire TV
● Google Chrome
● Mozilla Firefox
● Internet Explorer
● Microsoft Edge
● Apple Safari
● Google Chromecast
● Google Daydream View
● Amazon Echo
● LINE Clova Desk
● SONY BRAVIA
● Panasonic VIERA
● TOSHIBA REGZA
● Sharp AQUOS
● FUNAI
● LEOPALACE21 Life St
● CCCAIR Air Stick
● ...
多彩な対応デバイス
● iPhone
● iPad
● Apple TV
● Android Smartphone
● Android Tablet
● Android TV
● Fire Tablet
● Amazon Fire TV
● Google Chrome
● Mozilla Firefox
● Internet Explorer
● Microsoft Edge
● Apple Safari
● Google Chromecast
● Google Daydream View
● Amazon Echo
● LINE Clova Desk
● SONY BRAVIA
● Panasonic VIERA
● TOSHIBA REGZA
● Sharp AQUOS
● FUNAI
● LEOPALACE21 Life St
● CCCAIR Air Stick
● ...
DevOps の課題
大画面デバイスへのサービス拡大
大画面デバイスへのサービス拡大大画面デバイスへのサービス拡大 高解像度化への課題
いろいろな課題を胸に
AbemaTV ?
すべて無料
オリジナル番組をはじめ、アニメやドラ
マ、音楽、スポーツなど、すべて無料で
提供しています。
100% プロコンテンツ
サイバーエージェントとテレビ朝日のそ
れぞれの強みを活 かした制作体制で高品
質のコンテンツを拡充しています。
完全編成型
24 時間 365 日配信で、いつでもテレビ
を見るような感覚で楽しむことができま
す。
多彩なラインナップ
2 オリジナルの生放送や、ドラマ、
ニュース、アニメ、スポーツなど約 20
チャンネルを取り揃えています。
広告マネタイズ重要すべて無料
Scalable Per-User DAI in Live OTT
by ZACHARY CAVA (Hulu)
Hulu と Ad Insertion
● Hulu は VOD で Client-Side Ad Insertion から開始
○ サポートデバイスが増えるにつれて Server-Side Ad Insertion に
● Live を始めるにあたって異なる課題にぶつかっている
パーソナライズド広告のメリット/デメリット
● メリット
○ 広告のセールスフローの単純化
■ 常に見る広告が決まる
○ 広告体験の一貫性
● 生配信特有の必要事項
○ リアルタイムの変更検知(ポーリング)
○ ストリーム内の広告更新の一貫性を守る
ストリームで一意に広告を決定する
CDN でユーザー個別のストリームを
キャッシュすることはできない
最適な広告を決定するために
サーバーはユーザーの状態を永続化
ユーザー数とシークバッファー範囲に
応じて負荷が増す
サーバー冗長化
サーバーがユーザーの状態を
持つのではなく、
クライアントが自身の状態に
応じて広告をスティッチする
MPD Patch Update
Patch のタイミングで
クライアントが広告を差し替える
Server-Guided Ad Insertion
MPEG-DASH の Patch
● サーバーはスティッチングしない
○ 更新情報をどこに取りに行くかガイドするだけ
● コンテンツと広告が分離される
○ スケーラビリティが高くなる
○ 適切な時間管理を必要とする
Server-Guided Ad Insertion
標準仕様では MPEG-DASH のみ
● PatchLocation 要素による更新情報ガイド
● 厳格な時間管理モデル
Server-Guided Ad Insertion
課題
● クライアントで自身の状態を永続化するため
クライアント側にスペック依存がある
○ コンテンツの尺が長くなればなる程
負荷がかかる
○ 現時点では 2 割程のユーザーにだけ
適用されている
● MPEG-DASH のみ
○ HLS でも可能だが、標準仕様からは逸脱す
ることになるリスク
CBS Interactive ミートアップで
Hulu の John Schmiederer 氏に話を伺ってみる
多彩な対応デバイス
● iPhone
● iPad
● Apple TV
● Android Smartphone
● Android Tablet
● Android TV
● Fire Tablet
● Amazon Fire TV
● Google Chrome
● Mozilla Firefox
● Internet Explorer
● Microsoft Edge
● Apple Safari
● Google Chromecast
● Google Daydream View
● Amazon Echo
● LINE Clova Desk
● SONY BRAVIA
● Panasonic VIERA
● TOSHIBA REGZA
● Sharp AQUOS
● FUNAI
● LEOPALACE21 Life St
● CCCAIR Air Stick
● ...
DevOps の課題
Building an automated testing suite
How to gain confidence that your release will not break playback
for any platform/player/OS/format combination
by CHARLES SONIGO & JEAN-BAPTISTE LOUAZEL (STREAMROOT)
動画サービスにおけるデリバリー品質
一般的なサービスでデリバリー品質を高めるツール
● カナリアリリース
● モニタリング
● アラーティング
● ロールバック
動画サービスにおけるデリバリー品質
動画サービスにおいて高品質なデリバリーを阻害する要素
● 動画は性質上動的
● デプロイ制御者と動画機能実装者が異なるケース
● メトリクス計測コードが壊されるリスク
● ユーザーと同じ環境で QA する必要性がより高い
動画再生に関するテストの難しさ
● 環境の多さによるコスト
○ streaming formats * media engines * versions * players * OS … = ∞ combinations
● 決定論的なアプローチを取りづらい
○ タイムラインに依存したシーケンシャルな再生の状態を確定しづらい
○ 再生に関わる全てのパイプライン要素をサンドボックスすることが難しい
○ テストが失敗したときに false-positive と false-negative が混ざりやすい
動画再生機能を自動テストするための要素を 6 つに分解
1. 再生条件を網羅したコンフィギュレーション制御可能な環境構築
2. 再生に影響する全てのコンポーネントの組み込み
3. ユーザー操作のシミュレーション(一時停止、シーク等)
4. ユーザー操作に対するアサーション(基本再生やロギング等)
5. 全てのプラットフォームでのテスト実行オーケストレーション
6. テスト実行時のログ
● Page Builder
● Configuration Manager
● User Simulator
● Assertion Engine
● Test Orchestrator
● Test Reporter
● Test Scheduler
● Compatibility Matrix
STREAMROOT におけるソリューション構築例
● forge.html
コンフィギュレーションに
応じて生成されるページ
● Jasmine +
Selenium on Steroids
全てのネットワーク処理を
捕捉するコードを差し込む
● Jasmine Allure Reporter
● スクリーンショット
● ネットワークログ
● エラーメッセージ
再生時に何が起こったのかをレポート
false-negative を見分ける
Native?
● Native にも同じツール群を構築すれば可能
○ 半分まで構築済み
○ 来年完成予定
■ 少ない人数かつ兼務で
プロジェクトを進めていて
大変らしい
登壇した Charles Sonigo 氏にも話を伺ってみる
大画面デバイスへのサービス拡大大画面デバイスへのサービス拡大 高解像度化への課題
A paradigm shift in codec standards
MPEG-5 Part 2 LCEVC, higher quality with any codec, maintaining decoder compatibility
GUIDO MEARDI (V-NOVA)
LCEVC (Low-Complexity Enhancement Video Coding) の目標
● コーデックに依存しないコーデック強化
● n 世代コーデックの符号効率を n+1 世代と同等に強化
● n 世代コーデックと同等の複雑性を保ちながら
ソフトウェア実装可能でバッテリー消費が少ない強化コーデック
ファイルサイズと
エンコード時間の両方が↓
PSNR でクロスオーバー
MOS では恒常的に高い
品質計測
主観で見てみると
ブロックノイズや
床のラインの崩れが
MOS を下げていることが
予想できる
PSNR はスケーリング
処理を性質上相性が悪い
ために影響を受けているの
か?
別の (HEVC) の結果では、
PSNR は同じで、
VMAF と MOS で差が
出るパターンも
このパターンでは
主観上は明らかに
右の方が映像品質が
高く見える
PSNR でクロスオーバー
MOS では恒常的に高い
次世代コーデック
と
LCEVC
n-1 世代のコーデックと
同等の複雑性
LCEVC の
パフォーマンス
And how can I try it ?
試してみます
まとめ
● 生配信でも、スケーラビリティを保ってパーソナライズド広告を実行する手段の1つに
Server-Guided Ad Insersion がある
● 難易度が高い再生機能の自動テストソリューション構築例が参考になった
● 高い符号効率と低いコストを両立する新コーデック LCEVC の詳細が
少しずつ見えてきた
Demuxed に対する所感
● Demuxed は動画エンジニアのためのカンファレンスで
扱うトピックは多岐に渡る
● 高い確率で技術的課題に対するヒントを得られる印象があった
● 気付いていない新しい課題にも出会える
● 2 日間に凝縮されていて密度は濃い
五藤 佑典
YUSUKE GOTO
https://ygoto3.com/
@ygoto3_
ありがとうございました

AbemaTV の課題と Demuxed 2019