Tokyo Video Tech #4 開催レポート

Takesato Hayashi
Tokyo Video Tech
Published in
12 min readJun 25, 2019

Reported by Takesato Hayashi
Photograph by Akihisa Katsumi

2019年6月19日、 Tokyo Video Tech #4 Villa (Villa − 普段とは違う環境に身を置いて、オンラインビデオサービスを支える技術/組織/チャレンジについて考えてみる)がLODGEで開催された。今回の参加者は31名。スピーカー3名によるプレゼンテーション。終了後は、スピーカーと参加者が交流を楽しむNetworking with Food & Beverage、オンラインビデオに関わるエンジニアが集まる、素敵な一夜となった。

イベント告知ページ:https://www.meetup.com/Tokyo-Video-Tech/events/261694895/

# Opening remark

Opening remark は、オーガナイザーの林 岳里。

日本最大級のオープンコラボレーションスペースとして連日多くの人が利用し、かつ、イベントスペースとしても日々様々なアクティビティが行われている「LODGE」。きっかけは、昨年の12月にTokyo Video Tech #1に参加した株式会社 GYAO 開発部の島貫さんからイベントをサポートしたいと申し出をいただいたこと。Tokyo Video Techの会社やサービスの垣根を超えて、エンジニアが知見を共有することで、エンドユーザー体験の向上を目指しているスタイルに共感いただき、オーガナイザーチームとミーティングやディスカッションを重ね、半年の準備期間を経て開催となった。

次回のTokyo Video Tech #5は2019年8月28日にViibar inc.にて開催されることをアナウンス。詳細はエントリー開始時にMeetup.comからのお知らせとSlack workspace <https://bit.ly/video-dev-jp>に掲載するので、楽しみにしていただきたい。

# GYAO! の開発体制の課題と改善への取り組み

最初の登壇は株式会社GYAOプロダクト本部開発部 所属の島貫 和也さん。

GYAO! の技術課題への取り組み 〜変化の中で価値あるサービスを提供し続けるために〜と題し、GYAO!の技術負債返済と、成長のための取り組みをエンジニア目線で説明。

最初に島貫さんはTokyo Video Tech #2のセッション「肥大がするOVP、その課題と解決へのアプローチ」by 西牟田 健太郎を振り返った。西牟田さんの話では、「サービスの成長に伴って、システムが肥大化してしまう」と、サービスを運営する人誰しもが抱えている課題の本質に食い込んでおり、非常に共感しているとのこと。それを受けて、今回は「古い仕組みで苦労されている会社は多いと思うので、多少なりとも組織運営の参考になればと」いう思いで、セッションを準備したとのこと。

そして、まず「私たちが関わっている動画事業は、課題が変化していく事業であるとし、ここ10年で起きた変化を挙げた。

ブロードバンド/高効率コーデック/インストリーム広告/SSAI/UGC/コメント/レコメンデーション/コグニティブサービス/スマートフォン/iOS/Android/TVデバイス/STB/月額課金(SVOD)/縦長動画/etc…

サービス提供者は、ユーザーの嗜好の変化や新しく登場する様々なデバイス、このような世の中の変化に対応しつつユーザーに価値あるサービスを提供し続けなければならない。「大きな技術課題を抱えているのだが、どこから手をつけてよいかわからない…」という方に向けて、無料動画配信サービスGYAO!の事例として、説明を続けた。

2009年当初GYAO!はPC向けのサービスとして動画を配信していたが、現在ではPC/スマートフォン/TVとマルチデバイスに展開している。編集側が用意したコンテンツリストに加えて、ユーザーの趣味・嗜好にあったコンテンツを並べて画面を構成している。事業の変化に追従すべく様々な機能がシステムに追加され続けた結果として「古い仕組みが残り続けた」とのこと。昨年、コアメンバーでシステム見直しのためにアーキテクチャーを調査した結果、次のような課題が顕在化した。

- 「どこを修正すればいいかわからない」
- 「何に使われているかわからない」
- 「課題認識そのものが一致していない」

これらを解決するためにとったアプローチとして、実際に使った資料をスクリーンに表示しながら説明を続けた。

  1. 技術課題を特定する
    自分たちにどのような課題があって、どのように解決したいのかを話し合い、共通する技術課題を洗い出す。
  2. ビジョンを描いて共有する
    解決すべき要件を定めて、技術課題を適切な形に分解し、指針を作る。それを開発メンバーで共通認識とする。指針と目指したい姿を経営層にインプットする(課題をエンジニアのものだけにしない)。
  3. チームを再構成する
    「組織はアーキテクチャに従う」ことを利用する。
    *コンウェイの法則に着想を得たとのこと
  4. 事業の価値に合わせて変化させる
    技術コアコンピタンスの価値判断サイクルを回していく。
    何が重要な領域で、何を自分たちの手で作らなければいけないかを探す活動を続ける。

強く印象に残ったのが「課題をエンジニアで共有したのちは、管理職を味方につけ、全社ごとにする」という組織全体として取り組んでゆくことに重きを置いていること。そして、道半ばではあるがという断りはあるものの「これらがしっかり回っていれば技術課題はコントロールでき、変化の中でユーザーに喜んでもらえる価値を追求し続けられる!」ということばで締めくくられていたこと。ユーザーに真摯に向き合い続けているチームならではのコメント。素晴らしいですね。

# Apple’s Approach to Low-Latency HLS

二人目の登壇者はフォアキャスト・コミュニケーションズのチーフマネージングディレクター&本イベントの共同オーガナイザー 金沢 広峰さん。

Apple’s Approach to Low-Latency HLS。金沢さんが参加した開発者向けのイベントApple Worldwide Developers Conference 2019(WWDC)の中から、メディア配信に関わるトピックとして、新しく発表されたLow-Latency HLSについて紹介。尚、今回解説&要約している元のセッションは当日のビデオ(42分)とスライドが下記サイトに公開されているので、チェックしてみると良いだろう。

Introducing Low-Latency HLS
https://developer.apple.com/videos/play/wwdc2019/502

今年のWWDCはカリフォルニア州のサンノゼで開催された。新製品の発表会ではなく、Appleの提供しているOSなどの次のメジャーバージョンをデベロッパー向けに紹介する年次のカンファレンスとなっている。

Date: 2019.6.3–2019.6.7
Ticket: US$1,599 (有償かつ抽選)
Sessions: over 100
Attendees: over 5,000
Venue: San Jose McEnery Convention Center

最初に、金沢さんは今回のテーマ「Latency」の説明から始めた。テレビ放送での一般的な遅延は
- ケーブルや衛星放送:2〜8秒
- 日本の地デジ:1〜3秒
- 上記は受信機によってまちまち
とのこと。

一方、一般的なHLSのLatencyは、
- ライブ配信時に20〜30秒遅延

テレビ放送と比較すると、遅延が多いのがわかる。つづいてWWDCで紹介されていたスライドのシーケンス図を使って、HLSで遅延が発生しているポイントを詳しく解説した。

AppleはLow-Latency実現のため、HLSの仕様に下記5つの変更を発表している。

1. Reduce Publishing Latency
2. Optimize Discovery
3. Eliminate Round Trips
4. Reduce Transfer Overhead
5. Switch Tiers Quickly

金沢さんは、変更された1–3を、HLSのシーケンス図を使いながら、これまでとの違いを分かりやすく説明した。

Low-Latency HLSは開発中のため、2019年内はベータ版の位置付けとのこと。開発時にTestFlightで確認できるようだ。(プロダクション環境でつかえるものではない)

詳細については、下記にスペックが公開されているので、読み解いてみるのもいいだろう。

Protocol Extension for Low-Latency HLS (Preliminary Specification)
https://developer.apple.com/documentation/http_live_streaming/protocol_extension_for_low-latency_hls_preliminary_specification

最後に金沢さんがビデオで紹介した「WWDCのセッション中に行われていたDemo」では、シドニーからの映像をLow-Latency HLSによるライブ中継が行われていたが、何度も再生を心みるもののバッファリングが始まり、再生されない状況が続いていた。(Appleの本社があるクパチーノからの中継はスムーズに再生されていた)

Low-Latency HLSは開発中であることを念頭に置いて、正式リリースされるのを待ちながら適宜テストするのが良さそうだ。

# Yahoo! JAPAN 独自の動画サービスの取り組み: ワイキュー

最後の登壇者はヤフー株式会社メディア統括本部 所属の石井 直矢さん。

Yahoo! JAPAN 独自の動画サービスの取り組み: ワイキューと題して、開発を担当しているワイキュー<https://waiq.yahoo.co.jp/>の構成要素と技術について解説した。なお、本セッションのスライド資料は会場のみ公開となっている。
(ワイキュー:毎日21時から配信されている、賞金山分け型エンタメライブ番組)

ワイキューを構成する要素

  1. ライブ動画配信
    HLSによるライブストリーミング
    - 送出側は内製のエンコーダ
    - 受信側はVideo.js
  2. リアルタイムコミュニケーション
    出演者と参加者のコメントによるコミュニケーション
    - 配信遅延を抑えて、出演者が参加者からのコメントのラグを感じづらくする
    - そのためにHLSのセグメント長は2秒(低遅延と配信安定のバランスを取った)
  3. 出題と回答
    出演者のタイミングでクイズを出題したい
    - 参加者の端末間で配信の時間差があるので、時間指定は使えない
    - 動画データに出題タイミングを埋め込んで送出

石井さんは、「出演者の「第1問はこちら!」のタイミングで出題したい。」とのことで、裏方がソケット通信等でCue出しするのでなく、動画の中のメタ情報であるID3タグを利用して制御(「問題出して」、「答え出して」)しているとのこと。

ID3タグを制御する配信用のアプリはワイキューチームで作成しており、スマートフォンからの番組配信も技術的には可能とのこと。スマートフォンにはカメラも搭載されていて、新機能の配信テストもすぐに行えて楽、という実例として、LODGEから社内の開発環境を特別に利用しAndroid端末からテストライブ配信を行って頂いた。

石井さんは「動画 x コミュニケーション」として、ID3タグのような動画埋め込み型メタデータを活用することで、あらかじめプリセットされたものであれば動画を編集することなく表現をより豊かにできると考えているとのこと。どんなことが可能になるのか?の例としては以下のようなことを挙げている。

- 指定したタイミングでテロップや画像を動画にオーバーレイ表示
- 効果音の制御(ワイキューで採用しているとのこと)

ライブエンターテイメントのさらなる広がりに期待したい。

最後に

セッション終了後は恒例のNetworking with Food & Beverage。参加者全員で美味しい食事と飲み物を楽しむ特別な時間。今回は質疑応答が多く、スピーカーを囲んで話が盛り上がっているのが印象的でした。

まずスピーカーの3人に感謝したい。そして、人気でなかなか予約できない会場「LODGE」の提供を申し出ていただいた株式会社GYAOとヤフー株式会社のみなさま。「このスペースの特性を生かしつつ、Tokyo Video Techらしいイベントを開催するのはどうすればよいのか?」をゼロからディスカッションをスタートし、半年の準備期間をお付き合いいただき、また、会場、Food & Beverageを提供いただき、誠にありがとうございました。

Slides

● “GYAO! 技術課題への取り組み” by 島貫 和也
https://speakerdeck.com/pen2/gyao-ji-shu-ke-ti-hefalsequ-rizu-mi

--

--