「Youtubeへの動画投稿」や「ゲーム実況の編集」には基本的に動画編集ソフトが必要で、編集を終えた動画は必ず「エンコード」する必要があります。
そこで問題なのが「エンコードに掛かる時間」。ガッツリ編集した動画ほど、CPUの性能がモノを言うので、動画エンコードが速いCPUを実際に検証してみる。
検証方法は「動画エンコードの速度比較」で行う
x264 FHDやx265 HWBOTに代表される、有名なエンコードベンチマークのスコアで判断する方法は、ザックリとした予測はできますが…正確ではありません。
当ブログのゲーミングPC検証でも、昔はこういったベンチマークソフトを使った方法で比較していたが、実態とは異なると考えて「実際に動画をエンコードする」手法に切り替えた。
グラボの性能も実測値の方が分かりやすい
なぜ実測の方が良いのかは、グラボの性能を考えてみれば分かる。「FireStrikeで5000点出た。」という情報より「PUBGが平均60fpsで動く。」という情報のほうが分かりやすいでしょう。
それと同じ理屈で、今回のエンコードバトルは実測に限定させてもらう。CPU別に、特に有名な動画編集ソフトで実際にエンコードをさせて、終わるのに掛かった時間やフレームレートで「速度比較」を行います。
検証に使ったPCスペックを紹介
テスト環境 | |||
---|---|---|---|
マシン | ちもろぐベンチ機 | GALLERIA VZ-X | GALLERIA TRZ |
CPU | Core i7 8086K | Core i9 7980XE | Ryzen TR 2990WX |
プリセット | 6 / 12 @4.3GHz | 18 / 36 @3.4GHz | 準備中… |
6 / 6 @3.9GHz | 16 / 32 @3.6GHz | – | |
4 / 4 @3.6GHz | 14 / 28 @3.6GHz | – | |
– | 12 / 24 @3.8GHz | – | |
– | 10 / 20 @4.0GHz | – | |
– | 8 / 16 @4.0GHz | – | |
冷却 | NZXT X62 | 静音パックまんぞくコース | |
280mm簡易水冷 | 120mm中型空冷 | ||
グラボ | GTX 1080 Ti 11GB | GTX 1080 Ti 11GB | |
メモリ | DDR4-2666 8GB x2 | DDR4-2666 16GB x4 | DDR4-2666 16GB x2 |
SSD | Samsung 860 EVO 250GB | Samsung SM961 500GB | 準備中… |
電源 | 750W Gold | 800W Gold | 準備中… |
OS | Windows 10 Pro 64bit |
筆者の持つ「ちもろぐ専用ベンチ機」だけではCPUが足りないので、今回はドスパラにも協力いただき「ガレリアVZ-X」と「ガレリアTRZ」も用意しました(※TRZはまだ準備中です)。
さて、残りのCPUをどうするかですが…BIOSからCPU設定のプリセットを作成して、擬似的に他のCPUを再現して検証を行うことにした。高負荷時のクロックや電圧を近似させれば、ほぼオリジナルと同じ結果を出せます。
たとえば、i7 8086Kを使ってi5 8500を再現する場合は「全コア高負荷時に3.9GHz」と設定して、Cinebenchでスコアが高すぎるなら電圧を手打ちで調整し、オリジナルとほぼ同点になるまで落とす。という具合です。
これで2018年時点で主流のほぼ全てのCPUをカバーすることが出来た。では、さっそく以下「動画エンコードの速度バトル」の始まりです。
CPU別、動画エンコードの速度比較
動画変換ソフト「Handbrake」で比較
容量1GBの動画ファイル(内容:アニメ / MKV形式)を、2種類のプリセットでエンコードして、ログファイルに記録された「Average Work」に記載されている平均フレームレートで性能を競う。
高いフレームレートを叩き出したCPUほど、Handbrakeのエンコードが速いという意味です。プリセットは「Fast 480p 30」(x264)と「H.265 MKV 480p 30」(x265)を使った。
Handbrake – Fast 480p 30 (x264)
なかなか興味深い結果になりました。基本的な傾向としては、CPUのコア数(スレッド数)が増えれば増えるほど、エンコードの処理速度は向上している。しかし、14コア以上は伸びが止まってしまった。
Handbrakeは10コア以上のCPUをサポートしておらず、最適化していないソフトなので、i9 7900Xまでは順当にエンコード性能が伸びるがi9 7920X以降はダメになってしまう。
Handbrake – H.265 MKV 480p 30 (x265)
次は「AVX 2」を多用するx265エンコードを検証。Intel CoreシリーズもAMD Ryzenシリーズも、AVX 2を実装しているので、両者ともにx265エンコードを手早くこなせるはずだが。
結果を見てみると、8コアのRyzen 7 2700Xが同じ8コアのi7 7820Xや、6コアのi7 8700に負けてしまっている。なぜなのか…というと、AVXの実装方法に違いがあるのが最大の原因です。
インテルのAVX演算機は256bitで、AMDのAVX演算機は128bit x2(合計256bit)という形で実装されています。このため、AMDの場合は2つの演算機の間を行き来するスループット(遅延)が発生する。ここを考慮していないエンコーダだと、本来の性能を出せないということになる。
残念ながら、HandbrakeはAMD Ryzenのそういった性質を考慮したソフトではないため、Handbrakeを常用しているならCore i7やCore i9を選ぼう。なお、10コア以降は性能が伸びなくなのはx264と変わらずです。
フリー編集ソフト「AviUtl」で比較
動画編集ソフトと言えばAdobe Premiereがそれなりに有名かもしれないが、日本では無料で使えて高機能な「Aviutl」の方が知名度は高いかもしれない。そう思って、Aviutlのエンコード速度も検証することに。
方法としては、単なる動画エンコードではなく、リア友が作成した編集ファイル(4000フレーム / レイヤー7層)をお借りして、そのデータのエンコード時間で計測することにした。
エンコーダにはrigaya氏が配布している「x264guiEx」を使わせてもらった。ちなみに、rigaya氏はRyzenにすごく詳しい人なので、AMD Ryzenでもマトモな速度が出ると思います。
Aviutl – x264guiEx (プラグイン出力)
結果がこちら。スゴイですね。CPUのコア数が増えるにつれて、順当にエンコード速度が伸びていきます。もう少し分かりやすくするため、フレームレートに換算して確認してみる。
Aviutl – フレームレート換算 (4000 / 秒)
傾向としては、スレッド数よりコア数の方が影響は大きい。Core i5からi7にしても10%しか伸びないが、i7からRyzen 7にすると40%も速度が伸びています。
というわけで、Aviutlで頻繁にエンコードをするなら、コア数が多くてクロック周波数の高いCPUを選べば確実です。ただし、Ryzenだとプレビューが重たい現象があるので、Intelから選ぶのが無難。
Aviutlは2013年以降、一度も更新されていないので、AMD Ryzenのような特殊なCPUに最適化されていない可能性があります。それさえ無ければ、RyzenはAviutl用にベストなCPUになったと思う…惜しい。
「Adobe Premiere Pro CC 2018」で比較
Adobe Premiere Proは超有名ソフト。一般ユーザーから業務で動画編集を行っている法人まで、幅広く使われている印象。個人的には使いにくいのであまり使ってないが、検証しないわけには行かないだろう。
なんとなくYoutuberが使っている気がしたので、エンコードには「Youtube 1080p HD」プリセットを使った。なお、Premiereはログが出ないため処理時間が分かりにくい。だからAdobe Media Encoder CCを併用してログを出力しています。
Premiere Pro CC – Youtube 1080p HD (x264)
さすがAdobe…未だにRyzen対応を怠っているとは、驚きです。フリーソフトではRyzen対応が進みつつあるのに(Aviutlは代表例)、こうしたシェアウェアが対応しないのは、どういう事情なんだろうか。
Premiere Pro CCのx264エンコーダは、コア数が多いほど処理速度は上昇するが10コア以上からは伸びが鈍くなってきて、16コアで頭打ちの様子。
コストパフォーマンスを考えれば、i9 7900X ~ 7920Xに留めておいて、それ以上は他のソフトの使用状況に応じて選ぶことになる。はぁ…それにしてもRyzenの扱いが悲しいですね。
同じ8コアでもi7 7820Xに対して、20%も出し抜かれることになるとは。Adobeソフトを中心に使うなら、まだIntel CPUを選ぶのが無難な状況。
「TMPGEnc Video Mastering Works 6」で比較
有料の編集ソフトでPremiere Proの次に売れてそうなのが「TMPGEnc Video 6」だったので、こちらもエンコード速度を計測してみることにした。使うエンコーダは最初から入っている「H.264 / AVC」と「H.265 / HEVC」にて行う。
TMPGEnc Video Mastering Works 6 – H.264 / AVC / 2 Pass
よく使われているであろうCPUに対して、優先的に最適化をしていることが伺える結果になった。4コア~10コアまで順当にエンコード速度が向上し、12コア以上は頭打ちです。
TMPGEnc Video Mastering Works 6 – H.265 / HEVC / 1 Pass
次はx265エンコーダ。こちらも同様の傾向で、10コアまでは良い具合に性能が伸びます。12コア以上で頭打ち。i3 8100は遅すぎることが分かったので省きました。
TMPGEncでエンコードするなら、CPUは10コア程度に抑えたほうが良さそうですね。それにしても、有料ソフトほど最適化が甘いのは驚き。コア数に応じて速度向上するのは「Aviutl」のみとなった。
補足:OBSで配信する場合について
もともと本記事でまとめて解説する予定でしたが、思ってた以上に検証方法が大変だったので、こちらの記事にまとめました。
OBSの配信は、ゲームプレイ映像をキャプチャして、それをエンコードしてからアップロードしています。つまり…リアルタイムエンコードです。普通のエンコードと同様、要求されるCPU性能はかなり大きい。
参考:Cinebench R15で測るCPUの性能
参考までに、CPUの性能を分かりやすく数値化するベンチマークとして重宝されている「Cinebench R15」を使って、CPU別の性能を確認しておく。割りと興味深い結果が分かりますよ。
Cinebench R15 – Multi Score
Cinebench R15は「レンダリング」と呼ばれる処理を行っていて、これはCPUのコア数が多いほど処理速度が上昇しやすい。そのため、コア数に応じてスコアが順当に並んでいます。
しかし、このレンダリング性能と実際のエンコード速度は比例しにくいことが、今回の検証で分かったと思う。CPUの性能がきちんと発揮されるかどうかは、ソフトのエンコーダに依存する部分が大きいためです。
Handbrake – H.265 MKV 480p 30 (x265)
特にHandbrakeは、10コア以上への最適化が上手く行っていないことが顕著に分かる「事例」のひとつ。i9 7900Xとi9 7980XEの処理速度に大きな差が出ていません。
なので、エンコード用にCPUを選ぶ時は、レンダリングの処理速度やベンチマークソフトのスコアだけで判断するのは注意したい。使っているソフトが決まっているなら、「そのソフトでどれくらい動くか?」をチェックしよう。
動画エンコードにおすすめなCPU:3選
ここまでの検証で、動画エンコードに向いているCPUの傾向がだいたい分かりました。最後に、検証した中で特におすすめなエンコード用CPUをまとめて終わりたい。
万人向けの「ド定番」なエンコードCPU Core i7 8700
全コアクロック:4.30GHz | コア数:6 / 12 | ソケット:LGA 1151 v2 | 消費電力:155W前後 | OC:不可 | 付属クーラー:PCG 2015C 65W | 価格目安:36000円前後 |
オーバークロックするならアンロック版の「i7 8700K」をおすすめするが、しないなら「i7 8700」で良いでしょう。どちらも定格運用するなら性能に違いはほぼありません。高負荷時のクロックは4.30GHzで変わりないです。
注意点として、動画エンコードのようにAVXを駆使する場合は、消費電力が跳ね上がるので余裕のあるCPUクーラーを使うこと。付属クーラーは65W対応なので、明らかに性能不足。
H7 Quad Lumiのように、対応TDPが160Wを超える高性能なクーラーを使おう。65W対応ならゲーミングは行けるが、エンコードは厳しい。
Core i7を使った自作PCの作り方はこちらを参考に。i7 8700を搭載するおすすめBTOマシンは以下。
Aviutlのエンコードを安価に爆速化 Ryzen 7 2700X
全コアクロック:4.0 ~ 4.3GHz | コア数:8 / 16 | ソケット:Socket AM4 | 消費電力:105W前後 | OC:可能 | 付属クーラー:Wraith Prism 105W | 価格目安:38000円前後 |
Aviutl用にエンコードCPUを選ぶなら、Ryzen 7 2700Xがベスト。ただし、編集の内容によってはプレビューが突っかかる現象があるので、完全にエンコード専用機になります。
そのためネタのよう思えるが、日常的に動画編集をし続けているような使い方であれば、エンコード専用機の存在は悪くない。2018年時点で、4万円以下で買える8コアはR7 2700Xしか無いですし。
なお、Ryzen 7 2700Xを使った自作PCについてはこちらの記事を参考にどうぞ。
コスト効率を考慮すれば最高性能 Core i9 7900X
全コアクロック:4.0GHz | コア数:10 / 20 | ソケット:LGA 2066 | 消費電力:230W前後 | OC:可能 | 付属クーラー:なし | 価格目安:105000円前後 |
エンコードで総合的にもっとも性能が高かったのは、16コア搭載の「i9 7960X」でしたが、コストパフォーマンスやソフトの最適化を考慮すると10コアの「i9 7900X」が最強です。
ただし、10万円となると「Ryzen TR 2950X」も選択肢に入ってしまうため、これが本当にコスパを考慮した最高性能なのかどうかは断定できない。2950Xは今後検証する予定なので、気になる人は追記を待ってください。
Core i9を使った自作PCについては、こちらの記事を参考になるはず。以上「動画エンコードが速いCPUはどれ?おすすめなCPUを徹底検証」でした。
テスト環境のi9 7980XEの一番上のプリセットは18/36@3.4GHzではないでしょうか
Aviutlの検証をしてくれたのは嬉しいです
ありがとうございます!
Aviutlのプレビューが微妙にコマ飛びするのってRyzen固有の現象だったんですか…知らなかったそんなの
拡張プラグインでRAMプレビューがあるので困らないと言えばそうでしたが
エンコード時間短縮のためスリッパ移行を考えているので検証の方期待しています
僕のパソコンではなぜかramプレビューが使えないっていう( ; ; )
私がYouTube上で登録してるチャンネル(登録者数約150万人)のひとつで、スリッパ1950XとAdobe Premireを使用されている方がいますが、意外に16コア分フルに使いこなせてない可能性があるってことなんですかねえ。
登録者を100万人以上抱えるYouTuberだと、10コア超えるCPUで自作したり、コア数目一杯増やしたiMac Pro使ってる人々も多いので、そろそろいい加減動画作成ソフトも20コアでも30コアでもフル活用できるように最適化してほしいですよね。
Adobeは特にひどいですね。Premiereの場合、エンコード速度はまだマシですが、プレビューの快適さなど一般処理のスピードは全く伸びなくなります…。
以前制作した100万円PCも、7980XEではなく7940Xを選んだ理由は、Adobeの最適化不足が主な要因です。
< 動画作成ソフトも20コアでも30コアでもフル活用できるように最適化してほしいですよね。
ホントAdobeには頑張って欲しいところですが、あんまりやる気無さそうな雰囲気。「10コア以上あるなら、DaVinci Resolveへ行ってくれ。」という投げやり感すら、感じてしまう。
今回の記事は僕個人として非常にありがたいです!やはり実測値が最も重要だと思うのですがそれを検証してくださっている方は本当に少ないので。
RyzenRTXの結果載せてから記事にして欲しいわ
この書き方だとただ単にインテルアゲの記事にしかならんわ
ryzenはともかくRTXまで揃ってからにしろってのは流石に横暴では…
それはさておき、スリッパ辺りも検証するって記述があるのにインテルアゲって思考が極端すぎる
2950Xと2990WXは納期が長くかなり待ちそうですが、必ず追記する予定です。
RyzenRTXってのはよく分かりませんけど
最適化含めた現在の実測性能と言う製品選択に重要な情報だと思いますけどねぇ
Aviutlで検証してくれたのは非常に助かります!
実効性能が分かると感覚的にわかりやすいですしね。
rigayaさんは長年精力的にアップデートを続けられていて、足を向けて寝られません。
しかしAviutl本体がいかんせん古い部分があるので、噛み合っていない感があるのが惜しいですね。
それを差し引いても尚お世話になりまくりのソフトではありますが。
さて、本題とは無関係ですが、Youtubeなら128GBまでの動画ファイルをアップロードできるので、エンコードせずに無圧縮のAVIファイルを投げてしまうという手がありますw
もちろんアップロードに時間が掛かるわけですが、理屈の上では画質も多少良くなります。
フルHDで12分程度の動画であれば可能なはずです。可逆圧縮AVIならもっと長くできます。
(私が実際に試したのはUtVideoCodecで可逆圧縮したものを投稿して試しました)
映像や音楽などをより効率良く処理できる拡張命令のAVXを使う場合、根本的にIntelはネイティブ256bitですがAMDは128+128bitでどうしようもない感じですね。
Corei5 8500とCore i7 8700の差が意外と無かったのが、とても参考になりました。
Ryzenについては調べていくと、今回の検証の様にソフト側の対応が雑で、
結果的にIntelの方が性能が高くなってしまっているのが残念に感じますね。
時間も手間もかかる検証をして頂いて有難う御座います。
i5 8500とi7 8700の差が意外とないのは、Cinebench R15 – Multi Scoreと違って、HTの効きが弱い場合の方が多いからでしょうけど、AVX2の対応も含めてまだまだ使い切れていない状況だからでしょう。
Ryzen 7 2700XはCoreの6コア/12スレッド対して8コア/16スレッドですが、こちらはより物理的仕様の影響を受けてしまう感じでしょうか、1スレッドは弱いとしても16スレッドもあるわけでその割に・・・でより切実さを感じますね。
TDP 95Wのi7 8700Kが比較にないのが救いだったなと。
ゲームだとRyzen系はL3キャッシュやメモリアクセスのレイテンシが大きいからやや弱いのは仕方ないんですけど、エンコードでかつAVX2を使わない処理でここまで不利なのは最適化でしょうね……。いつもAMDに乗っかかってくる課題ですが、せめて自作以外のシェアも含めて2割くらいになってくれればソフトウェア開発者側も無視できないと思いますけどね。
TMPGEnc のグラフに ryzen が無いような気がする。
Ryzenテスト機は友人に出荷したモノを使っているので、友人に代行してもらったのですが。
「テスト動画が読み込めない。コーデックは入れてるんだけど…原因不明だわ。」とのことで、検証できてません。
今すぐの追加は出来ませんが、Ryzen TRと同様、必ず追記する予定です。
Aviutlをメインで使用しているので検証たいへんありがたいです。
プレビューが重くなる症状ですがRyzenとIntelで目に見えて変わるものなのでしょうか?
結構重めの編集をすることが多いので気になります。
エンコードについての情報はたくさん見つかるのですが編集のほうに焦点をあてたものがなかなかなくお答えいただけると幸いです。
レイヤーが重なる部分のプレビューが重たいです。Ryzen 7 2700X(Windows 10)、Ryzen 5 1600(Windows 7)で確かめましたが、症状は改善せず。
具体的には、以下のようなレイヤーでプレビューが使い物にならなくなります。
オレンジ色で囲った部分で、プレビューがガタガタに。元動画は.aviで、BGMは.mp3、それと.jpgの画像とテキストオブジェクト。
それほど重たい編集では無いはずですが、安定しないです。i7 8700(Win 10)だとスムーズに通ります。
Twitterでは「Ryzen 5 2400Gだけど、問題ないですよ。」という人がいたので、恐らくRyzenに入っているCCXの数が2個以上になると、Aviutlと相性が悪くなる…と推測しています。
エンコードとは全く関係ないのですが、メモリまわり、おそらくメモコンの出来が原因の2700xで起きたトラブル(操作の反映が極端に遅れる)が2600xではかなり軽減されたことがありました。
私も同じくCCXをまたぐことが何かしら問題を起こすことがあるのではないかと考えています。
そのプレビューが重くなるって、具体的に(体感で)何fpsくらいでしたか?
ちなみに僕はi5-4200mで動画編集している猛者(笑)なので、編集時に5fpsも出れば十分です
なるほど。詳細と解説までありがとうございます。
古いソフトなので仕方ないとは思いますが本当に惜しいですね…。
詳しい解説ありがとうございます。自作PCに挑戦してみたいと思うのでこれからもこういった記事を書いていただけると大変助かります。
私のi5‐6500だとAviutlのプレビュー突っ掛かりが頻発する為、次はRyzenも有りかなぁ、と考えていたのでこの結果は残念ですね…。
検証に感謝します。
QSVとかx265はどんなもんでしょ?
9世代でまた比較があると嬉しい
i7 8700 と i5 9600K では性能的には9600Kの方が上ですか?
定格で使うなら「i7 8700」が優秀ですが、i5 9600Kはオーバークロックが可能です。頑張って5.0~5.1 GHzくらいまでクロックを盛れば、i7 8700にあと一歩か互角レベルの性能になります。
Ryzen第三世代で大幅なエンコード性能向上がありましたしそろそろこの記事も内容をつけ加えて欲しいです