リンクをクリップボードにコピー
コピー完了
お世話になっております。
現在、After Effectsを使用して自動化処理を試みていますが、
Pythonスクリプトやコマンドラインを使用してAfter Effectsを
自動起動しスクリプトを実行する際に、
After Effectsが予期せず終了する問題に直面しています。
具体的には、After Effectsの自動起動は問題なく行えますが、
スクリプトを自動実行させるとAEが終了してしまいます。
スクリプトの手動実行は問題ありません。
Pythonを使用してAE起動+UI経由でスクリプトの適用も試みましたが、
それもうまくいきませんでした。
同様の現象は2台のPCで確認されています。
使用しているAfter Effectsのバージョンは2024で、
オペレーティングシステムはWindows 10です。
GPUドライバは最新のものに更新済みですが、問題は解決していません。
この問題の解決策またはトラブルシューティングの手順について、アドバイスをいただけますと幸いです。
よろしくお願いいたします。
ありがとうございます!
原因らしきものが、判明しました。
コマンドからスクリプトを適用する際、
新規のプロジェクトじゃないと機能しないようです。
ずっと既存のプロジェクトを開くとこから
スクリプトを適用までコマンドでしようとしてました。
新規のプロジェクトに適用の動きに変更したら
コマンドラインでもPythonでもできました。
なので、既存のプロジェクトを開く動作を
スクリプトの方に持っていこうと思います。
これが原因かは断言できませんが
とりあえず1歩前進できました!
ありがとうございます!
リンクをクリップボードにコピー
コピー完了
実行するスクリプトにapp.exitAfterLaunchAndEval = falseを差し込めばよいかもしれないです。
https://aejsx.hiroshisaito.net/application-object/attributes/exitafterlaunchandeval
リンクをクリップボードにコピー
コピー完了
早速の反応ありがとうございます。
tetsuohさんからアドバイス頂いたapp.exitAfterLaunchAndEval = falseをスクリプトに追加して実行してみたのですが、After Effectsは依然として予期せず終了してしまいました。
お忙しい中ご助言いただきありがとうございました。
(もし、引き続きトラブルシューティングを行う上でのヒントがあれば助かります)
リンクをクリップボードにコピー
コピー完了
自分のところでもpythonのツールからいろいろ実行することがあるのですが、配布する際にPyInstallerでexeにしている場合だとPopenで別の実行ファイルを呼んだ後にexe化したツールを終了しても呼んだ実行ファイルのプロセスは残ったままになっているので、そのあたりを検討してみるのもよいかもです
リンクをクリップボードにコピー
コピー完了
pythonでexe化しないままいくならPopenのcreationflagsに以下のようにsubprocess.CREATE_BREAKAWAY_FROM_JOBフラグを立ててもいいかもです。
proc = subprocess.Popen(
cmd,
env=os.environ,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
creationflags=subprocess.CREATE_BREAKAWAY_FROM_JOB
| subprocess.CREATE_NO_WINDOW,
)
リンクをクリップボードにコピー
コピー完了
ありがとうございます!
原因らしきものが、判明しました。
コマンドからスクリプトを適用する際、
新規のプロジェクトじゃないと機能しないようです。
ずっと既存のプロジェクトを開くとこから
スクリプトを適用までコマンドでしようとしてました。
新規のプロジェクトに適用の動きに変更したら
コマンドラインでもPythonでもできました。
なので、既存のプロジェクトを開く動作を
スクリプトの方に持っていこうと思います。
これが原因かは断言できませんが
とりあえず1歩前進できました!
ありがとうございます!
新しいアドビコミュニティで、さらに多くのインスピレーション、イベント、リソースを見つけましょう
今すぐ検索