youtubeが重い?CPU使用率を下げるには
はじめに
パソコンが基本的にI7しかないですが、youtubeのCPU使用率が高いんじゃねと思う今日この頃。その原因と解決策を紹介します。
動画の画質について
皆さんはyoutubeの画質と言われたら何を想像しますか?おそらくギアマークにある144pとか720pだと思います。

それは動画の解像度であり綺麗さに直結する大きな要因の一つです。
しかし画質が大きくなると、通信量が大きく跳ね上がります。
これは感覚的に解ると思います。これは動画を提供している側からするととても大きな問題で、綺麗な動画を提供するために大きな設備を維持しなければいけません。これは天下のgoogleも同じです。
通信量を減らすために
通信量を減らすために画質を下げるのは本末転倒です。ニコニコかな?
この問題を解決するために、頭のいい人たちが、できるだけ画質を落とさず動画を圧縮する方法を考えました。これがコーディックと呼ばれるものです。
コーディックにはそれぞれ特性があり、一番普及しているh264やyoutubeで使用されるvp9があります。
一方その頃CPUは忙しい
コーディックを使用すると動画を圧縮できます。
しかし、これを見るためには解凍(元に戻す操作)しなければいけません。圧縮と解凍はコーディックで決められたアルゴリズム(計算方法)を用いて計算します。
さて計算するところはどこでしょう?
CPU君です。このコーディックで動画を計算する作業はとても大変で、フルHDだと解像度が1920×1080なので、これらが色情報(24bit(2を24回掛ける数))を持つのでとてもやばい量の計算をしなければいけません。
一方その頃のGPUくん
皆さんはGPUをご存知でしょうか?GPUの本来の機能はディスプレイの表示です。
基本設計として解像度が1920×1080の色情報(24bit)を簡単に扱えるようにしてあります。
なので、コーディックの計算が効率良くできます。動画再生支援って聞いたことありませんか?それがこれです。
対応しているコーディックはintelだと次のようになります。
Cantiga | Ironlake | Sandy Bridge | Ivy Bridge | Haswell | Broadwell | Braswell | Skylake | Broxton | Kaby Lake | |
---|---|---|---|---|---|---|---|---|---|---|
MPEG-2 | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ |
H.264 | 非対応 | デコードのみ | 対応 | 対応 | 対応 | 対応 | 対応 | 対応 | 対応 | 対応 |
VC-1 | 非対応 | 非対応 | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ | デコードのみ |
JPEG | 非対応 | 非対応 | 非対応 | デコードのみ | デコードのみ | デコードのみ | 対応 | 対応 | 対応 | 対応 |
VP8 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | デコードのみ | 対応 | 対応 | 対応 | 対応 |
H.265 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | デコードのみ | 対応 | 対応 | 対応 |
H.265 10-bit | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | デコードのみ | 対応 |
VP9 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | デコードのみ | 対応[25] |
VP9 10-bit | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | 非対応 | デコードのみ |
https://ja.wikipedia.org/wiki/Intel_Quick_Sync_Video より引用
これに
対応(デコードも含む)していれば
CPUの代わりにGPUが計算してくれます。
動画コーディックの種類が負荷の原因
上記で最低限の知識を紹介しました。では以下の画像をご覧ください。


このスクリーンショットを撮影したのはSkylakeの世代です。
Skylakeはh264に対応していますがvp9には対応していません。つまりこれGPUが助けていないんですね。(debianで再生支援が聞いてるかは不明)
なのでh264はCPU使用率25~40%なのに、vp9だと60%になります。
Ivy Bridge のwindowsだと以下のようになります。


つまり
VP9はh264より2~3倍CPUに負荷がかかります
ちなみにですが
Cherry TrailのATOMたちはBroadwellと同じGPUの世代です。
なので、youtubeが見れないとバカにされている彼らはh264であれば再生できます。(仕様上は)
youtubeのデフォルトコーディック変更方法
ではyoutubeでh264にすれば再生時のCPU使用率が下がることがわかりました。問題は、どうやって切り替えるかですが、それを自動でやってくれる
h264ify
というプラグインがあります
クローム版
https://chrome.google.com/webstore/detail/h264ify/aleakchihdccplidncghkekgioiakgal
ファイヤーフォックス版
https://addons.mozilla.org/ja/android/addon/h264ify/
これを有効にするとVP9を無効にしてくれます。動画画面を右クリックして詳細統計情報から確認しましょう。
codecs avcとなっていればできています。

デメリットとして、4K解像度を選択することができません。
最後に
なんでyoutubeでvp9が普及してないにもかかわらず使っているかというと、
googleがそれを使わせたいからです。
ではよいネットライフを
ディスカッション
コメント一覧
まだ、コメントがありません