Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
パロニム社内LT#1 次世代の動画コーデックの話 / talk about next gene...
Search
torotake
December 03, 2019
Technology
900
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
パロニム社内LT#1 次世代の動画コーデックの話 / talk about next generation video codec
torotake
December 03, 2019
Other Decks in Technology
See All in Technology
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
870
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
340
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
3
1.1k
Benchmarking Disaggregated Serving on vLLM + Dynamo with a Real Coding-Agent Workload
nttcom
1
190
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
AI時代のPRレビューにどう向き合うか?
kairim0
1
240
パスキーの自動テストはどこまでいけるのか
teamlab
PRO
0
220
AI駆動開発の時代になったのでトヨタ生産方式から見直す
terurou
7
6k
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
130
継続的なAIコスト最適化
bgpat
1
340
初海外で注意すべきこと12選!!!安全快適なre:invent生活にするために
yuuuuuuu168
1
160
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
400
Google's AI Overviews - The New Search
badams
0
1.6k
Odyssey Design
rkendrick25
PRO
2
870
Done Done
chrislema
187
17k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
260
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
The Pragmatic Product Professional
lauravandoore
37
7.5k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
The browser strikes back
jonoalderson
0
1.8k
Transcript
次世代の動画コーデックの話 AV1を試してみる 2019/12/3 PARONYM LT #1 Hiroshi Ohtake
コーデック ⚫ データをエンコード(符号化)とデコード(復号)を双方向に行うソフトウェ ア及びそのアルゴリズムのこと ⚫ データ圧縮・伸張を行うアルゴリズムも含まれる
ストリーミングプロトコル HLS MPEG-DASH RTSP RTMP WebRTC … Motion JPEG MPEG2
MPEG4 MPEG4 AVC/H.264 WMV VP8 VP9 H.265/HEVC AV1 … AVI ASF DivX 3GPP MPEG2-TS MP4 MKV MOV WebM … コンテナ コーデック ※ ここの話
MPEG4-AVC/H.264 ⚫ Web動画配信では現時点でのデファクトスタンダード ⚫ 現行のほぼすべてのデバイスでサポートされている。 ⚫ ハードウェア支援も普及しておりモバイル機器でも十分高速にエンコード/デ コードが可能
MPEG4-AVC/H.264 ライセンス ⚫ MPEG LAと言う統一されたパテントプールが存在する。 ⚫ H.264のエンコーダ/デコーダを搭載している製品はメーカーがMPEG LAへ支払 いをしていて、利用者が直接ライセンス料を徴収されることは無いが再生機器 の料金に上乗せされていると思えば良い。
⚫ インターネット動画のユーザ向け配信に限りライセンス料は免除されている。 最初は2010年までの期間限定 → 永続的に免除されることになった。 https://av.watch.impress.co.jp/docs/20031118/mpegla.htm
H.265/HEVC 概要 ⚫ H.264の次世代の規格 H.264と比べて倍近い圧縮性能を持つ謳われている ⚫ Windows (10+)、macOS (10.13+)、Android
(5.0+)、iOS (11+)でサポートあり ⚫ 新しめのデバイスであればハードウェア支援も受けられるようになっており、 問題なく再生が可能。 ⚫ エンコードも実用的な速度は十分に出せるようになっている。 ⚫ ブラウザでサポートしているのはSafariのみ。ChromeとFirefoxは未サポート
H.265/HEVC ライセンス ⚫ 統一されたパテントプールの形成に失敗し、扱いづらい状態となっている 4つのパテントプール/企業がそれぞれ権利行使 利用するには団体ごとにライセンス料を払わなければならない 特許を持つが権利行使を行っていない企業が多数ある
⚫ インターネット配信に限れば、一応フリー…だが取り扱いが不明なパテント プール/企業がある。 → リスクは考える必要がある
VP9 概要 ⚫ Googleがオープンかつロイヤリティフリーを目指して開発したコーデック。 Googleが買収したVP8の後継で、H.265に近しい圧縮性能を持つ ⚫ Windows、Androidでサポートあり ⚫ ハードウェア支援はH.265に比べると出遅れていたが、最近の新しめのCPU/
チップセットであればサポートしている。 ⚫ Chrome、Firefox、Edgeでサポートあり。OS/ブラウザ共にAppleは一切サポート する気がない。
VP9 ライセンス ⚫ MPEG LAが特許を主張したが、GoogleとMPEG LAとの間でライセンス合意が成 立済み Googleがロイヤリティを払って、他利用者はロイヤリティフリーで利用可
AV1 (AOMedia Video 1) 概要 ⚫ オープンでロイヤリティフリーなストリーミング向けコーデックの開発を目的 とした非営利団体であるAlliance for Open
Mediaが開発したコーデック。 ⚫ VP9をベースに、VP10 / Thor / Daalaの技術を持ち寄って開発された。 すべてロイヤリティフリーの次世代コーデックを目指したプロジェクト ⚫ GAFA、主要Webブラウザベンダ、大手動画ストリーミング事業者が名を連ねて おり次期スタンダードの座はほぼ確実と見られている。
https://aomedia.org/membership/members/ 日本企業はいずこ…?
AV1 (AOMedia Video 1) 特徴 ⚫ H.265よりも画質、圧縮率で勝る 同等の画質であればおよそ10~20%程の圧縮率向上と言われている ⚫
ただし、必要な計算量が多くデコードには相応のCPUパワーが必要 現時点ではハードウェア支援はほぼ無く、充実はこれから ⚫ エンコードに至っては絶望的 現実的に扱うためにはハードウェアエンコード必須 FPGAでリアルタイムエンコーダーを実装している事例がいくつか SoCも開発が進んでいる
AV1 (AOMedia Video 1) ライセンス ⚫ ライセンスにより広範な利用を可能とするため競合企業の特許を侵害しないこ とを重要視 ⚫ コーデック仕様とエンコーダ/デコーダ実装がロイヤリティフリーであることを
将来に渡って保証されるように最大限配慮されている ⚫ 防御的解除条項で特許訴訟への対抗策を明示 ある企業がAOMに対して特許ライセンス訴訟を起こした時点で、即座にそ の企業に対するライセンスが終了する対抗策 コーデックは特許の塊なので、広く利用されるためにはライセンスが非常に重要。 ただ性能が良いだけではスタンダードにはなれない。
AV1 (AOMedia Video 1) ライセンス ⚫ 2019年4月にSISVELという欧州を拠点とする知的財産権の管理会社がAV1に関連 する特許を持つとされる5社を集めてAV1に対する特許プールを開始すると宣言 JVC
KENWOOD, Philips, NTT, Orange, Toshiba IPR Solutions ⚫ AOMは問題無いから安心するようにとの声明を出している。 ⚫ その後、進展なし。 SISVELが特許請求の訴訟をすると、NTTは使えなくなる はずだけど…… グループ会社は大丈夫なんですか?
AV1 (AOMedia Video 1) サポート状況 ⚫ Android OSサポート :
Android 10以降で対応 ブラウザサポート : Chrome, Firefox WebView : ??? ⚫ iOS OSサポート : iOS 13 の時点では未対応 ブラウザサポート : なし → AppleがAOMに参加しているのでいずれサポートされると思われる iOS14では来てほしいところ
AV1 (AOMedia Video 1) サポート状況 ⚫ Windows OSサポート :
Windows 10 October 2018 Update (1809)以降 + AV1 Video Extension (beta) ブラウザサポート : Edge (要 AV1 Video Extension), Chrome, Firefox ⚫ macOS OSサポート : macOS 10.15 (Catalina) の時点では未対応 ブラウザサポート : Chrome, Firefox → Safariは未対応
AV1を試してみよう エンコード ⚫ H.264の約44秒の動画 1920x1080 30fps 10Mbps ⚫ MacBook Pro
(15-inch, 2017) 2.9GHz Intel Core i7 / Memory 16GB $ ffmpeg -i IMG_0096.mov -s 1280x720 -c:v libaom-av1 -b:v 2M -strict experimental output.mkv … frame= 1319 fps=0.0 q=-0.0 size=10426kB time=00:00:43.88 bitrate=1946.1kbits/s speed=0.000506x とりあえずデフォルトで… 720p 2Mbpsにエンコードしてみる
44秒の動画のエンコードに1450分… 約24時間 しかも設定不足でHLS化できず。 つらい… speed=0.000506x
AV1を試してみよう エンコード $ ffmpeg -i IMG_0096.mov -s 854x480 -c:v libaom-av1
-cpu-used 4 -row-mt 1 -threads 8 -g 30 - b:v 512K -strict -2 output480p512k.mp4 frame= 1319 fps=0.2 q=-0.0 Lsize= 4617kB time=00:00:43.97 bitrate= 860.0kbits/s speed=0.00719x CPU負荷を下げる (代わりに画質が犠牲になるので本末転倒ではある) HLS化のためにGOPを挿入する 480p 512kbps で再チャレンジ それでも約100分…
AV1を試してみよう HLS化 $ ffmpeg -i av1.mp4 -f hls -hls_segment_type fmp4
-hls_playlist_type vod -hls_time 10 -hls_segment_filename "stream%3d.m4s" -c:v copy -c:a copy stream.m3u8 出来上がったAV1コーデックのmp4からHLSへ変換 ※AV1はmpeg2-tsコンテナに対応していないので、Fragmented MP4を指定する。
AV1を試してみよう 再生してみる 先程エンコードしたAV1 (480p) 約512kbps TIG CMSで作成したH.264 (480p) 約1Mbps (TIGに組み込んでみてFirefoxで再生するデモ)
まとめ ⚫ 現行ではH.264に留まるか、Apple系ではH.265+その他ではVP9と使い分けが現 実解 ⚫ AV1はプロダクション投入には時期尚早だが、数年後に は現在のH.264のようにデファクトスタンダードとなれ る可能性が高いコーデック ⚫ 導入に向けて、今後の動向に注目しよう