読者です 読者をやめる 読者になる 読者になる

パソコン・メモメモ備忘録

気の向くままパソコン関係等で気になることを書き記す。毎日更新を目指す!

動画コーデック VP9 と YouTube

net AVC

昨日 PSVR の YouTube アプリで 360度動画を色々見ていた所、コーデックに VP9 が使われていた。これまで動画といえば MP4 の H264 だと思っていたのだが、Google さんは VP9 をかなりプッシュしているらしい。ということで、ちょっと調べてみた。オープンでロイヤリティフリーで圧縮効率の高いコーデックらしい。仕様書をちょっと見てみたが、階層的なタイル分割と、DCT や ADST を使って、その他諸々… 要するに良くわからないが、H264 等とあんまり変わらない感じがしたり。

で、YouTube で保存されている動画は、どんどん VP9 になっているそうな。ところが H264 をハードウェアでデコードできるシステムは現状かなり普及しているが、VP9 は、2016 年後半以降に出てきたものしかない様子。GeForce だと Pascal GTX1080 シリーズ以降、RadeonPolaris RX480 シリーズ以降、Intel だと 第7世代 Core の Kaby Lake 以降。スマホだと、Snapdragon820 が対応しているっぽいので、ちょっと他より早め? とにかくそれより古い環境では、CPU でデコードされることになる。

Chrome での YouTube 再生が重いのは、VP9 が CPU でデコードされているせいもあるのだろうか。とはいえ一応 1080p60fps でも Corei7(2core Dynabook V714 タブレット PC) が 2GHz 弱で 80% 弱 で再生可能のようだ。4Kp30fps だと、厳しくてコマ落ちしたり途中で再生が止まったりする。

Chrome でも VP9 ではなくて H264 で無理やり再生する拡張機能 264ify がある。これをインストールすると H264 で動画を再生できる。4Kp30fps の動画を再生してみたら、CPU 負荷も低くて滑らかに再生できた(4K モニタを持っていないので、表示はフル HD だが、詳細統計情報の表示の Resolution(デコード)は 4K)。

ただし、圧縮効率は H264 の方が悪いので、データ転送量が増える。まぁ、回線がそこそこ余裕がある時は問題ない? 30Mbps くらい確保できれば、4Kp30 も再生できるかな。

FireFox では webM が有効になっていなくて(設定を変えれば有効にできる)H264 で再生されていたので、Chrome より FireFox の方が YouTube 再生が軽く感じていたわけだ。理由がやっとわかった。