Davinci Resolveで気になる動作や現象

2020年5月18日

Davinci Resolveの使用時の問題点や疑問点の解決策の糸口になるページにしていきたい。

購入時の体験談というか注意点やメモはこちら。

最適化メディアのフォーマットでCPUGPUの使われ方が違う

最適化メディア生成時

最適化メディア生成時におけるフォーマットによるCPUとGPUの使用率の違い
フォーマットCPU使用率GPU使用率使用CPU使用GPU
DNxHR HQX85-90%30%Xeon E5-2697 v2GTX 1660 SUPER
非圧縮10-bit(Davinci Resolve 16)5-10%20-30%Xeon E5-2697 v2GTX 1660 SUPER
非圧縮10-bit(Davinci Resolve 17 beta)72-75%19-20%Xeon E5-2697 v2GTX 1660 SUPER

Davinci Resolve 16で非圧縮のフォーマットを使って最適化メディアを作ってみたらCPUGPUの振る舞いが違うことに気づきました。でも17では高負荷になってました。

最適化メディアを非圧縮で作れば、編集時のGPUCPUの負荷も小さくなるはずですが、大容量のストレージが必要になります。

パソコンのスペックに不安がある場合、非圧縮で最適化メディアを作るか撮影時のカメラ設定をALL-Intraにしましょう。ALL-Intraのデータは大容量になりますがパソコンでの動作が軽くなりますから、最適化メディアの生成は不要になると思います。以前、Apple Proresのデータをあえて最適化メディアに変換してみたら逆に重くなったので、同じような現象が起こるか、あるいは処理待ちの時間を食うだけで大きな恩恵を得られないと思います。(試してないけど)
パソコンのスペックが不足している人はこの辺の設定を色々試してみましょう。

ちなみに、レンダーキャッシュはこんな具合。↓

レンダーキャッシュ生成時

レンダーキャッシュ生成時におけるフォーマットによるCPUとGPUの使用率の違い
フォーマットCPU使用率GPU使用率使用CPU使用GPU
DNxHR HQX50-90%30-35%Xeon E5-2697 v2GTX 1660 SUPER
非圧縮10-bit10-20%15-20%Xeon E5-2697 v2GTX 1660 SUPER

じゃあこの使用率と比例するようにキャッシュ生成時間が変わるかというと、そんなことはありませんでした。3秒間のある同じテキストの合成を10個並べて、合計30秒の動画をキャッシュしたところ、DNxHR HQXでは48秒で、非圧縮10-bitでは50秒で、ほぼ誤差の範囲内でした。
DNxHR HQXだとエンコードする分CPUに負荷が掛かるのかもしれませんね。

ノイズリダクションのノードだけキャッシュできない?

  • キャッシュはなるべく作りたくない(ストレージ圧迫するから)

  • でもNR(ノイズリダクション)だけはキャッシュしたい

  • ところがユーザー指定でノードのキャッシュを生成しても、タイムラインまでキャッシュ生成してしまう

解決策はこちらにまとめました。ノイズリダクションに限らず、特定のノードだけキャッシュを生成する方法です。↓

キャッシュを作るとPCの動作は軽くなるのですが、キャッシュを作る時には重くなるし、SSDの容量をめっちゃ消費します。作業が終わるたびに削除すれば済むんですが、その作業が面倒。しかもSSDの寿命も縮む。なので、私は最近ではなるべく使わないようにしています。

ただこれ(キャッシュ一切無し)には問題があって、レンダリングする度にノイズリダクションをレンダリングする必要があるので、動画の書き出しにめっちゃ時間がかかります。例えば私の環境の場合、4K映像でNR無しならレンダリング速度25 fpsでも、中程度のNRをかけると3-4 fpsまで落ちます。これでは使い物にならない。

そう思ってキャッシュのレンダリングを「ユーザー」に指定して、カラーページでNRのノードだけキャッシュをONにすると、なぜかタイムラインのキャッシュが真っ先に作られてしまう。字幕までもキャッシュが作られる。タイムライン上でのキャッシュ無しでのカクつきについては、作業モニタが1080p環境なのでプロキシモードを1/2にしたり、レンダリング時以外はNRをOFFにすることで回避可能なので、別にキャッシュは要らないんですよね。でもノイズリダクションについては、GTX 2080 Tiみたいなハイエンドモデルのグラフィックボードでもカクつきが起こるので、この設定は高性能パソコンを使用している人にも役立つのではないでしょうか。

レンダリングが途中で止まるエラーと原因

これはGeforce GTX 1660 SUPERでもGeforce GTX 660 Tiでも経験しているのですが、VRAM不足(グラフィックボードのメモリ不足)と思って間違いないでしょう。

例えば4K60pの動画をレンダリング出来ても、6K24pの映像だとエラーが起こることがあります。私の場合だと4K30pがギリギリのスペックでたまにエラーが起こりますが、Davinci Resolveを再起動後に一切エディットページで編集するなどしてVRAMを消費せずにデリバー画面でレンダリングをおこなえばすんなり成功することがかなり多いです。VRAMが8 GB未満のグラフィックボードで4K映像のエラーが出る人はグラフィックボードの買い替えをオススメします。



Davinci Resolve購入時の体験談というか注意点やメモはこちら。