inlife / nexrender

📹 Data-driven render automation for After Effects
https://www.nexrender.com
MIT License
1.58k stars 322 forks source link

Error: Couldn't find a result file: result.mp4 #989

Open dominicosavio opened 1 month ago

dominicosavio commented 1 month ago

I am very new to nexrender, and I got this error. I have searched the net but couldn't find any answer regarding to this error.

Error: Command failed: nexrender-cli --file temp_config_v1.json > job rendering failed Error: Couldn't find a result file: /var/folders/d8/yzcvyzzj127gtxvyss32gt7sn3vxlg/T/nexrender/GB7JVXnv3MvfyJ2zCB6s4/result.mp4 at ChildProcess. (/usr/local/lib/node_modules/@nexrender/cli/node_modules/@nexrender/core/src/tasks/render.js:318:31) at ChildProcess.emit (node:events:517:28) at maybeClose (node:internal/child_process:1098:16) at Socket. (node:internal/child_process:450:11) at Socket.emit (node:events:517:28) at Pipe. (node:net:350:12) at ChildProcess.exithandler (node:child_process:422:12) at ChildProcess.emit (node:events:517:28) at maybeClose (node:internal/child_process:1098:16) at Socket. (node:internal/child_process:450:11) at Socket.emit (node:events:517:28) at Pipe. (node:net:350:12) { code: 1, killed: false, signal: null, cmd: 'nexrender-cli --file temp_config_v1.json' }

JamesBotterill commented 1 month ago

Can you provide the full output from the cli, it looks like the render failed at some point (hence no mp4) but without seeing the output we'd not know why

dominicosavio commented 1 month ago

Here it is:

C:\Users\abc\Desktop\nexrender>node render.js Error: Command failed: nexrender-cli --file temp_config_v1.json > job rendering failed Error: Couldn't find a result file: C:\Users\abc\AppData\Local\Temp\nexrender\SOpjBYnkEPDfoKX8ItKgy\result.mp4 at ChildProcess. (C:\Users\abc\AppData\Roaming\npm\node_modules\@nexrender\cli\node_modules\@nexrender\core\src\tasks\render.js:318:31) at ChildProcess.emit (node:events:519:28) at maybeClose (node:internal/child_process:1105:16) at Socket. (node:internal/child_process:457:11) at Socket.emit (node:events:519:28) at Pipe. (node:net:338:12) at genericNodeError (node:internal/errors:984:15) at wrappedFn (node:internal/errors:538:14) at ChildProcess.exithandler (node:child_process:422:12) at ChildProcess.emit (node:events:519:28) at maybeClose (node:internal/child_process:1105:16) at ChildProcess._handle.onexit (node:internal/child_process:305:5) { code: 1, killed: false, signal: null, cmd: 'nexrender-cli --file temp_config_v1.json' }

SynchronDEV commented 1 month ago

Having the same issue on Macos 14.4.1, however, my issue is with nexrender-worker-macos but I assume it's the same underlying logic.

AE Version 24.4.1

I have read all previous threads pertaining to "Couldn't find a result file" and didn't find any solutions that worked.

I have tested the following on both 1.50.8 (latest) and 1.43.3 (randomly chosen older version):

Opening the .aep manually works without issue. Running aerender manually works without issue, even the full command to render a file, which it successfully completes.

The .log files are always empty for some reason.

Attached is tmp folder, please advise.

E3i1ug-lAWYZenVq8k2W_.zip

inlife commented 1 month ago

Have you tried this? https://github.com/inlife/nexrender?tab=readme-ov-file#after-effects-2023

SynchronDEV commented 1 month ago

Have you tried this? https://github.com/inlife/nexrender?tab=readme-ov-file#after-effects-2023

Yes I have tried, I believe it should be visible in the provided aep

SynchronDEV commented 3 weeks ago

@inlife Still having this issue unfortunately, no further progress. Please advise what you would need to help debug. Sonoma 14.5 on Apple Silicon.

The aerender.log is empty unfortunately.

> starting nexrender-worker endpoint http://localhost:3000; using secret: no
using automatically determined directory of After Effects installation:
 - /Applications/Adobe After Effects 2024/aerender
adding default render-only-node licenses for After Effects at:
 - /Users/chrdav/Documents/ae_render_only_node.txt
 - /Users/chrdav/Documents/Adobe/ae_render_only_node.txt
checking After Effects command line renderer patch...
command line patch already is in place
starting nexrender-worker with following settings:
 - workpath: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender
 - addLicense: true
 - forceCommandLinePatch: false
 - skipCleanup: true
 - skipRender: false
 - stopOnError: false
 - debug: false
 - multiFrames: false
 - multiFramesCPU: 90
 - maxMemoryPercent: undefined
 - maxRenderTimeout: 0
 - imageCachePercent: undefined
 - wslMap: undefined
 - onInstanceSpawn: undefined
 - maxUpdateTimeout: 60
 - __initialized: true
 - process: nexrender-worker-cli
 - logger: [object console]
 - track: function () { [native code] }
 - trackCombined: function () { [native code] }
 - trackSync: function () { [native code] }
 - session: 07d476239a9c5630f6d620ee99d9a36e
 - analyticsId: 81268084fd2d76ba6fb892d2a3dc2c79
 - wsl: false
 - aeBinaryStrategy: auto
 - binary: /Applications/Adobe After Effects 2024/aerender
 - aeBinaryVersion: Unknown
[lr-xzUrUK6pCa4HAtMiPG] setting up job...
[lr-xzUrUK6pCa4HAtMiPG] working directory is: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/lr-xzUrUK6pCa4HAtMiPG
[lr-xzUrUK6pCa4HAtMiPG] applying predownload actions...
[lr-xzUrUK6pCa4HAtMiPG] downloading assets...
[lr-xzUrUK6pCa4HAtMiPG] applying postdownload actions...
[lr-xzUrUK6pCa4HAtMiPG] applying prerender actions...
[lr-xzUrUK6pCa4HAtMiPG] running script assemble...
[lr-xzUrUK6pCa4HAtMiPG] rendering job...
[lr-xzUrUK6pCa4HAtMiPG] setting aerender log path to project folder: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/lr-xzUrUK6pCa4HAtMiPG/aerender.log
[lr-xzUrUK6pCa4HAtMiPG] rendering took ~0.086 sec.
[lr-xzUrUK6pCa4HAtMiPG] writing aerender job log to: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/lr-xzUrUK6pCa4HAtMiPG/aerender.log
[lr-xzUrUK6pCa4HAtMiPG] dumping aerender log:

catching the error internally
[lr-xzUrUK6pCa4HAtMiPG] skipping the clean up...
[lr-xzUrUK6pCa4HAtMiPG] error occurred: Error: Couldn't find a result file: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/lr-xzUrUK6pCa4HAtMiPG/result.mp4
    at ChildProcess.<anonymous> (/snapshot/nexrender/packages/nexrender-core/src/tasks/render.js)
    at ChildProcess.emit (node:events:537:28)
    at maybeClose (node:internal/child_process:1091:16)
    at Socket.<anonymous> (node:internal/child_process:449:11)
    at Socket.emit (node:events:537:28)
    at Pipe.<anonymous> (node:net:747:14)
[lr-xzUrUK6pCa4HAtMiPG] render proccess stopped with error...
[lr-xzUrUK6pCa4HAtMiPG] continue listening next job...
inlife commented 3 weeks ago

Could you try enabling debug: true, that hopefully should get more values out for the logs

SynchronDEV commented 3 weeks ago

@inlife Log file still empty

> starting nexrender-worker endpoint http://localhost:3000; using secret: no
using automatically determined directory of After Effects installation:
 - /Applications/Adobe After Effects 2024/aerender
adding default render-only-node licenses for After Effects at:
 - /Users/chrdav/Documents/ae_render_only_node.txt
 - /Users/chrdav/Documents/Adobe/ae_render_only_node.txt
checking After Effects command line renderer patch...
command line patch already is in place
starting nexrender-worker with following settings:
 - workpath: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender
 - addLicense: true
 - forceCommandLinePatch: false
 - skipCleanup: true
 - skipRender: false
 - stopOnError: false
 - debug: true
 - multiFrames: false
 - multiFramesCPU: 90
 - maxMemoryPercent: undefined
 - maxRenderTimeout: 0
 - imageCachePercent: undefined
 - wslMap: undefined
 - onInstanceSpawn: undefined
 - maxUpdateTimeout: 60
 - __initialized: true
 - process: nexrender-worker-cli
 - logger: [object console]
 - track: function () { [native code] }
 - trackCombined: function () { [native code] }
 - trackSync: function () { [native code] }
 - session: b4db2f7919a5967701910ab4d4a0ea26
 - analyticsId: 81268084fd2d76ba6fb892d2a3dc2c79
 - wsl: false
 - aeBinaryStrategy: auto
 - binary: /Applications/Adobe After Effects 2024/aerender
 - aeBinaryVersion: Unknown
[6f4w6sjkrliUUNqSOqFg1] setting up job...
[6f4w6sjkrliUUNqSOqFg1] working directory is: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1
[6f4w6sjkrliUUNqSOqFg1] applying predownload actions...
[6f4w6sjkrliUUNqSOqFg1] downloading assets...
[6f4w6sjkrliUUNqSOqFg1] applying postdownload actions...
[6f4w6sjkrliUUNqSOqFg1] applying prerender actions...
[6f4w6sjkrliUUNqSOqFg1] running script assemble...
[6f4w6sjkrliUUNqSOqFg1] rendering job...
[6f4w6sjkrliUUNqSOqFg1] setting aerender log path to project folder: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/aerender.log
[6f4w6sjkrliUUNqSOqFg1] spawning aerender process: /Applications/Adobe After Effects 2024/aerender -project /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/template_03.aep -comp main -output /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/result.mp4 -OMtemplate H.264 - Match Render Settings - 15 Mbps -RStemplate Best Settings -r /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/nexrender-6f4w6sjkrliUUNqSOqFg1-script.jsx
[6f4w6sjkrliUUNqSOqFg1] rendering took ~0.018 sec.
[6f4w6sjkrliUUNqSOqFg1] writing aerender job log to: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/aerender.log
[6f4w6sjkrliUUNqSOqFg1] dumping aerender log:

catching the error internally
[6f4w6sjkrliUUNqSOqFg1] skipping the clean up...
[6f4w6sjkrliUUNqSOqFg1] error occurred: Error: Couldn't find a result file: /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/result.mp4
    at ChildProcess.<anonymous> (/snapshot/nexrender/packages/nexrender-core/src/tasks/render.js)
    at ChildProcess.emit (node:events:537:28)
    at maybeClose (node:internal/child_process:1091:16)
    at Socket.<anonymous> (node:internal/child_process:449:11)
    at Socket.emit (node:events:537:28)
    at Pipe.<anonymous> (node:net:747:14)
[6f4w6sjkrliUUNqSOqFg1] render proccess stopped with error...
[6f4w6sjkrliUUNqSOqFg1] continue listening next job...
inlife commented 3 weeks ago

And if you launch the aerender with this command, will it render?

$ "/Applications/Adobe After Effects 2024/aerender" -project /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/template_03.aep -comp main -output /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/result.mp4 -OMtemplate "H.264 - Match Render Settings - 15 Mbps" -RStemplate "Best Settings" -r /var/folders/c8/qwnrytxx6sg6_9cwk05lfztm0000gn/T/nexrender/6f4w6sjkrliUUNqSOqFg1/nexrender-6f4w6sjkrliUUNqSOqFg1-script.jsx
SynchronDEV commented 3 weeks ago

@inlife Yes, I just tried it a few seconds before your post. Running the command manually works:

PROGRESS:  2024-06-05 22:00:24 CEST: Finished composition “main”.

PROGRESS:  Total Time Elapsed: 6 Seconds
inlife commented 3 weeks ago

Could you show the full log of a successful run?

SynchronDEV commented 3 weeks ago

@inlife Here is the log from your command: AE 2024-06-05 22-00-18 CEST.txt

inlife commented 3 weeks ago

Could you also make a screenshot of a folder of a failed run with nexrender? (a fresh run is needed)

SynchronDEV commented 3 weeks ago

@inlife Screenshot image

inlife commented 3 weeks ago

Could you please try one more thing: running nexrender worker with sudo I don't seem to be able to figure out what could be going wrong except possibly permissions

SynchronDEV commented 3 weeks ago

@inlife Still the same with server + worker as sudo, and running addJob via node as sudo:

using automatically determined directory of After Effects installation:
 - /Applications/Adobe After Effects 2024/aerender
adding default render-only-node licenses for After Effects at:
 - /Users/chrdav/Documents/ae_render_only_node.txt
 - /Users/chrdav/Documents/Adobe/ae_render_only_node.txt
checking After Effects command line renderer patch...
command line patch already is in place
starting nexrender-worker with following settings:
 - workpath: /tmp/nexrender
 - addLicense: true
 - forceCommandLinePatch: false
 - skipCleanup: true
 - skipRender: false
 - stopOnError: false
 - debug: true
 - multiFrames: false
 - multiFramesCPU: 90
 - maxMemoryPercent: undefined
 - maxRenderTimeout: 0
 - imageCachePercent: undefined
 - wslMap: undefined
 - onInstanceSpawn: undefined
 - maxUpdateTimeout: 60
 - __initialized: true
 - process: nexrender-worker-cli
 - logger: [object console]
 - track: function () { [native code] }
 - trackCombined: function () { [native code] }
 - trackSync: function () { [native code] }
 - session: eb75700760dc4698f907fdc12dfed444
 - analyticsId: 81268084fd2d76ba6fb892d2a3dc2c79
 - wsl: false
 - aeBinaryStrategy: auto
 - binary: /Applications/Adobe After Effects 2024/aerender
 - aeBinaryVersion: Unknown
[IUdp3m1CdIUjmUSI0bzia] setting up job...
[IUdp3m1CdIUjmUSI0bzia] working directory is: /tmp/nexrender/IUdp3m1CdIUjmUSI0bzia
[IUdp3m1CdIUjmUSI0bzia] applying predownload actions...
[IUdp3m1CdIUjmUSI0bzia] downloading assets...
[IUdp3m1CdIUjmUSI0bzia] applying postdownload actions...
[IUdp3m1CdIUjmUSI0bzia] applying prerender actions...
[IUdp3m1CdIUjmUSI0bzia] running script assemble...
[IUdp3m1CdIUjmUSI0bzia] rendering job...
[IUdp3m1CdIUjmUSI0bzia] -- D E P R E C A T I O N: --

nexrender is changing the default aerender log path to the project folder.
This is done to streamline the log management and enable efficient log cleanup.

If you want to keep the old behavior and mute this message, please set the environment variable NEXRENDER_ENABLE_AELOG_LEGACY_TEMP_FOLDER to true.
If you want to switch to the new behavior, please set the environment variable NEXRENDER_ENABLE_AELOG_PROJECT_FOLDER to true.

Right now, the old behavior is still the default, but this will change in the next minor releases.
Estimated date of change to the new behavior: 2023-06-01.

[IUdp3m1CdIUjmUSI0bzia] spawning aerender process: /Applications/Adobe After Effects 2024/aerender -project /tmp/nexrender/IUdp3m1CdIUjmUSI0bzia/template_03.aep -comp main -output /tmp/nexrender/IUdp3m1CdIUjmUSI0bzia/result.mp4 -OMtemplate H.264 - Match Render Settings - 15 Mbps -RStemplate Best Settings -r /tmp/nexrender/IUdp3m1CdIUjmUSI0bzia/nexrender-IUdp3m1CdIUjmUSI0bzia-script.jsx
[IUdp3m1CdIUjmUSI0bzia] rendering took ~0.015 sec.
[IUdp3m1CdIUjmUSI0bzia] writing aerender job log to: /tmp/nexrender/aerender-IUdp3m1CdIUjmUSI0bzia.log
[IUdp3m1CdIUjmUSI0bzia] dumping aerender log:

catching the error internally
[IUdp3m1CdIUjmUSI0bzia] skipping the clean up...
[IUdp3m1CdIUjmUSI0bzia] error occurred: Error: Couldn't find a result file: /tmp/nexrender/IUdp3m1CdIUjmUSI0bzia/result.mp4
    at ChildProcess.<anonymous> (/snapshot/nexrender/packages/nexrender-core/src/tasks/render.js)
    at ChildProcess.emit (node:events:537:28)
    at maybeClose (node:internal/child_process:1091:16)
    at Socket.<anonymous> (node:internal/child_process:449:11)
    at Socket.emit (node:events:537:28)
    at Pipe.<anonymous> (node:net:747:14)
[IUdp3m1CdIUjmUSI0bzia] render proccess stopped with error...
[IUdp3m1CdIUjmUSI0bzia] continue listening next job...
inlife commented 3 weeks ago

I see. Feels like some internal trigger/block that happens inside of aerender. I will try updating to the latest version of AE and reproducing this. They might've changed something on a lower level which is hard to fiddle out without proper hands on debugging.

In the meantime, my suggestion would be to try installing an older version in parallel to your existing and attempting to render with that.

SynchronDEV commented 3 weeks ago

@inlife Which version would you recommend? I tried 24.2.1 and still not working.

inlife commented 3 weeks ago

Maybe any version from 23.* could work

SynchronDEV commented 3 weeks ago

@inlife Can confirm 23.6.6 successfully works.

Running 2024: nexrender-worker-macos --skip-cleanup --debug --binary=/Applications/Adobe\ After\ Effects\ 2024/aerender Produces an error like previously in the thread

Running 2023: nexrender-worker-macos --skip-cleanup --debug --binary=/Applications/Adobe\ After\ Effects\ 2023/aerender Successfully renders

Any clue what could be causing this?

inlife commented 3 weeks ago

Again, my only theory it's somehow related to some changes within AE made by Adobe. Hard to figure out what exactly could be causing this since there are no even logs