0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DavinciResolve無償版 スクリプト実行時にResolveオブジェクトがNoneを返してくるとき

Last updated at Posted at 2025-03-09

プログラム初心者なので不備不足があったら申し訳ございません。
使用バージョン:
DavinciResolve19
Python3.12

結論

  • そもそも内部スクリプトやコンソール実行時は、Resolveオブジェクトを取得する必要はない
    • つまりresolve = GetResolve()resolve = dvr_script.scriptapp("Resolve")を書かなくていい
    • いきなりfusion = resolve.Fusion()と記述してもFusionオブジェクトが取得できる
    • あえて記述したいならresolve = app.GetResolve()が使える

問題

  • DavinciResolve無償版でスクリプトを動かそうとしたが、最初のResolveオブジェクトの取得がうまくいかなかった。
    • 中身がNoneのResolveオブジェクトが返ってきてしまう。
      そのため、たとえば下のコードではfusion = resolve.Fusion()が通らない。
公式ドキュメントのサンプルコード
import DaVinciResolveScript as dvr_script
resolve = dvr_script.scriptapp("Resolve")
fusion = resolve.Fusion()
projectManager = resolve.GetProjectManager()
projectManager.CreateProject("Hello World")
  • 有償版(DavinciResolveStudio)では、環境設定から外部スクリプトの使用許可を「ローカル」以上にすることで解決できるようだが、無料版にその設定項目はない。

解決

  • 内部スクリプトやコンソールから実行する場合は、最初からResolveオブジェクトが使える状態で置いてあるようなので、そのまま呼び出して使用することができる。改めて取得する必要はない。
    • 以下のようにResolveオブジェクト取得の行を無効化すれば問題なく実行できるはず。
公式ドキュメントのサンプルコード:Resolveオブジェクト取得の行を無効化
import DaVinciResolveScript as dvr_script
#resolve = dvr_script.scriptapp("Resolve")
fusion = resolve.Fusion()
projectManager = resolve.GetProjectManager()
projectManager.CreateProject("Hello World")
  • もしResolveオブジェクト取得の行を記載する必要がある場合は、代替としてapp.GetResolve()が使える。
公式ドキュメントのサンプルコード:Resolveオブジェクト取得の行を代替
import DaVinciResolveScript as dvr_script
resolve = app.GetResolve()
fusion = resolve.Fusion()
projectManager = resolve.GetProjectManager()
projectManager.CreateProject("Hello World")

取り急ぎ以上です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?