Upgrade to Pro — share decks privately, control downloads, hide ads and more …

送出系のIP化とネットサービス配信システムとの連携

Avatar for maitou maitou
November 15, 2019

 送出系のIP化とネットサービス配信システムとの連携

Avatar for maitou

maitou

November 15, 2019
Tweet

Other Decks in Technology

Transcript

  1. 自己紹介 • 伊藤 正史(まいとう) • 浜松市出身 43歳 • フルスタック •

    技術開発&標準化 • 放送通信連携 • 動画配信 • 視聴データ 3
  2. 7

  3. 9

  4. 動画配信方式 配信方式 (動画) MPEG-2 TS ISO-BMFF fMP4 HLS MPEG-DASH 端末

    スマホ・PC iOS等 Hybridcast (国内ハイブリッドTV) HbbTV (欧州ハイブリッドTV) ブラウザ プレーヤ処理 JavaScript 組み込み JavaScript 組み込み ブラウザ デコード処理 MSE API MSE API 15
  5. 配信方式イメージ ① HLS ② MPEG-DASH TS TS TS TS TS

    TS TS TS TS 6Mbps 3Mbps 1Mbps マニフェスト m3u8 (テキスト) mp4 mp4 mp4 mp4 mp4 mp4 mp4 mp4 mp4 6Mbps 3Mbps 1Mbps マニフェスト MPD (テキスト) Web配信 断 片 動 画 + マ ニ フ ェ ス ト 映 像 ・ 音 声 配 信 E N C 10s 10s 10s 10s 10s 10s 配 信 E N C 映 像 ・ 音 声 16
  6. マニフェストファイル(HLS) 約4.0Mbps用のm3u8を見る 約5.6Mbps用のm3u8を見る 再生対象の m3u8 ファイル #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:13 #EXT-X-MEDIA-SEQUENCE:2

    #EXTINF:12.012, testvideo3__00002.ts #EXTINF:12.012, testvideo3__00003.ts #EXTINF:12.012, testvideo3__00004.ts #EXTINF:12.012, testvideo3__00005.ts #EXTINF:12.012, #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:13 #EXT-X-MEDIA-SEQUENCE:2 #EXTINF:12.012, testvideo2__00002.ts #EXTINF:12.012, testvideo2__00003.ts #EXTINF:12.012, testvideo2__00004.ts #EXTINF:12.012, testvideo2__00005.ts #EXTINF:12.012, #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:13 #EXT-X-MEDIA-SEQUENCE:2 #EXTINF:12.012, Testvideo1__00002.ts #EXTINF:12.012, testvideo1__00003.ts #EXTINF:12.012, testvideo1__00004.ts #EXTINF:12.012, testvideo1__00005.ts #EXTINF:12.012, 約1.4Mbps用のm3u8を見る testvideo1.m3u8 testvideo2.m3u8 testvideo3.m3u8 #EXTM3U #EXT-X-VERSION:3 #EXT-X-INDEPENDENT-SEGMENTS #EXT-X-STREAM-INF:BANDWIDTH=5640800,AVERAGE-BANDWIDTH=5640800,C ODECS="avc1.4d401f,mp4a.40.2",RESOLUTION=1280x720,FRAME-RATE=29.970 testvideo1.m3u8 #EXT-X-STREAM-INF:BANDWIDTH=3955600,AVERAGE-BANDWIDTH=3955600,C ODECS="avc1.4d401f,mp4a.40.2",RESOLUTION=960x540,FRAME-RATE=29.970 testvideo2.m3u8 #EXT-X-STREAM-INF:BANDWIDTH=1425600,AVERAGE-BANDWIDTH=1425600,C ODECS="avc1.42c01f,mp4a.40.2",RESOLUTION=640x360,FRAME-RATE=29.970 testvideo3.m3u8 マニフェストファイルから断片化ファイルを参照 17
  7. マニフェストファイル(MPEG-DASH) <?xml version="1.0"?> <!-- MPD file Generated with GPAC version

    0.5.2-DEV-rev715-ge7ce665-master at 2017-05-19T16:27:32.428Z--> <MPD xmlns="urn:mpeg:dash:schema:mpd:2011" minBufferTime="PT1.500S" type="static" mediaPresentationDuration="PT0H20M9.984S" maxSegmentDuration="PT0H0M5.472S" profiles="urn:mpeg:dash:profile:isoff-on-demand:2011"> <Period duration="PT0H20M9.984S"> <AdaptationSet segmentAlignment="true" maxWidth="1920" maxHeight="1080" maxFrameRate="11988/400" par="1:1" lang="und" subsegmentAlignment="true" subsegmentStartsWithSAP="1"> <Representation id="1" mimeType="video/mp4" codecs="avc1.4d4028" width="1920" height="1080" frameRate="11988/400" sar="1:1" startWithSAP="1" bandwidth="7572479"> <BaseURL>db_nocm_08M_v_track1_init.mp4</BaseURL> <SegmentBase indexRangeExact="true" indexRange="845-3780"> <Initialization range="0-844"/> </SegmentBase> </Representation> <Representation id="3" mimeType="video/mp4" codecs="avc1.4d4028" width="1920" height="1080" frameRate="11988/400" sar="1:1" startWithSAP="1" bandwidth="5797291"> <BaseURL>db_nocm_06M_v_track1_init.mp4</BaseURL> <SegmentBase indexRangeExact="true" indexRange="845-3780"> <Initialization range="0-844"/> </SegmentBase> </Representation> <Representation id="5" mimeType="video/mp4" codecs="avc1.4d4028" width="1920" height="1080" frameRate="11988/400" sar="1:1" startWithSAP="1" bandwidth="2971322"> <BaseURL>db_nocm_03M_v_track1_init.mp4</BaseURL> <SegmentBase indexRangeExact="true" indexRange="845-3780"> <Initialization range="0-844"/> </SegmentBase> </Representation> </AdaptationSet> <AdaptationSet segmentAlignment="true" par="1:1" lang="und" subsegmentAlignment="true" subsegmentStartsWithSAP="1"> <Representation id="2" mimeType="audio/mp4" codecs="mp4a.40.2" audioSamplingRate="48000" startWithSAP="1" bandwidth="194803"> <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/> <BaseURL>db_nocm_08M_a_track1_init.mp4</BaseURL> <SegmentBase indexRangeExact="true" indexRange="766-3701"> <Initialization range="0-765"/> </SegmentBase> </Representation> </AdaptationSet> </Period> </MPD> 再生対象の MPD ファイル マニフェストファイルから断片化ファイルを参照 18
  8. 広告挿入イメージ ライブ配信の広告挿入は CSAI から SSAI へ 再生端末 クライアントサイド 広告挿入(CSAI) CM

    MP4 本編 TS マニフェスト m3u8 サーバサイド 広告挿入(SSAI) 再生端末 一本化 m3u8 CM TS CM MP4 本編 TS 本編 m3u8 素直に m3u8 を再生しても アドは入らない 19
  9. システム構成 本編 TS CM TS 一本化m3u8 アド情報 (VAST+MP4) SpotX ADS

    AWS Elemental MediaTailor 20 AWS Elemental MediaStore Elemental Live 配信エンコーダ マスター 映像 Fuji TV HLS +CMタイミング情報 Amazon CloudFront Player HLS User AWS m3u8 スタジオ 映像 CMタイミング情報の挿入
  10. 項目名 バイト長 格納データ splice_inset_type 1 splice_event_id 4 CM枠ID(チャンス番号) unique_program_id 2

    番組ID pre_roll_time 2 プリロール時間 break_duration 2 CM枠尺 avail_num 1 CM枠ID(チャンス番号) avail_expected 1 auto_return_flag 1 SCTE-104/35 挿入(Splicing Operation Message Loop) マニフェストファイル(HLSの場合) #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:13 #EXT-X-MEDIA-SEQUENCE:2 #EXTINF:12.01200, ob_test190607_00004.ts #EXTINF:12.01200, ob_test190607_00005.ts #EXTINF:11.87853, ob_test190607_00006.ts #EXT-OATCLS-SCTE35:/DAgAAAAAAAAAP/wDw= #EXT-X-CUE-OUT:59.993 #EXTINF:0.13347, ob_test190607_00007.ts #EXT-X-CUE-OUT- CONT:ElapsedTime=0.133,Duration=60,SCTE35=/DAgAAAAAAAAAP/wDw= #EXTINF:12.01200, ob_test190607_00008.ts #EXT-X-CUE-OUT- CONT:ElapsedTime=12.145,Duration=60,SCTE35=/DAgAAAAAAAAAP/wDw= #EXTINF:12.01200, ob_test190607_00009.ts SCTE-35 情報挿入 基準時刻に対応するメタ情報が Base64で符号化されて挿入 21
  11. 概要 • 送出マスター/同時配信のリアル タイム情報連携基盤を開発、アド サーバ連携 広告挿入を自動化 • 放送:送出マスターの情報を Web API

    で提供する「SpliceMX」を開 発、アジャイル業務アプリと連携 • 配信:放送設備とアドサーバを連 携してサーバサイド広告挿入 • 昨年稼働、6/9~新マスター対応 26
  12. 自動アド挿入 ① 配信専用マスター設備を構築 • 送出マスター設備は堅牢 • 配信は常に仕様がアップデートされる ② STD-B39 ネットキュー信号(尺情報拡張)を利用

    • マスター更新タイミングでないと対応が難しい • 配信は常に仕様がアップデートされる • 入力映像が固定される ③ CM中接点などを利用 • 高度な情報連携は不可(CMフタのみ可) • 自由な取り回し・ネットサービス対応に課題 • 配信は常に仕様がアップデートされる 放送と配信の 技術サイクル・コスト規模の ギャップを埋める仕組みが必要 27
  13. 映像 SCTE-104 SpliceMX 放送/配信連携装置 Xp 制 御 設計 マスター Elemental

    Live 配信エンコーダ SCTE-104 インサータ 収集 サーバ API サーバ アプリ 端末 ネットワーク独立 一方向シリアル化 映像 放送 情報 HD-SDI ルータ INS 制 御 映像 本編 TS Amazon S3 オリジン Amazon CloudFront CM TS 一本化m3u8 視聴 端末 HLS アド情報 (VAST+MP4) SCTE-35連携 マスターから収集 CMタイミング・CM尺・ CM枠ID・番組ID SpotX ADS 収集サーバ API サーバ 収集サーバ API サーバ AWS Elemental MediaTailor アド リクエスト CM尺・CM枠ID・番組ID HLS アプリ 端末 29 SCTE-35制御 スタジオ or マスター
  14. SpliceMX 放送/配信連携装置 Xp 制 御 ① FNS 標準マスター (岩手めんこいテレビ) Elemental

    Live 配信エンコーダ 収集 サーバ API サーバ アプリ 端末 ローカル本線 放送 情報 HD-SDI ルータ 映像 アプリ 端末 SCTE-35制御 SpliceMX 放送/配信連携装置 ② FNS 新標準マスター (テレビ静岡) Elemental Live 配信エンコーダ 収集 サーバ API サーバ アプリ 端末 放送 情報 スタジオ映像 アプリ 端末 SCTE-35制御 スタジオ SpliceMX 放送/配信連携装置 Elemental Live 配信エンコーダ ダミー APC API サーバ アプリ 端末 ローカル本線 Q 信号 HD-SDI ルータ 映像 アプリ 端末 SCTE-35制御 ③ FNS その他マスター (サガテレビ) 36
  15. 42

  16. アドレッサブルTV(アドトリガー) 放送=通常素材 配信=居住地域で異なる素材 CM C ◦◦地区店 △△地区店 本編 1 CM

    B 本編 2 CM B 本編 3 本編 1 CM C 本編 2 本編 3 ◦◦地区の郵便番号 △△地区の郵便番号 ◦◦電気 本編 1 CM A 本編 2 CM A 本編 3 45
  17. まとめ • 放送と配信等のネットサービス間の技術ギャップを埋めるには、 放送情報を WebAPI のような、ゆるい API での提供が有用 • 一方で放送には絶対に影響せず、安全に利用できる仕組みで

    なければならない • 将来は外部への情報 API が送出マスター自体に組み込まれるべき 48 送出マスターには将来の高度な放送サービスに 有用な情報が活用されずに眠っている!