inlife/nexrender

Permissions problems

benwoodward opened this issue · 8 comments

Just ran into a couple of permissions issues using nexrender-cli for the first time. The first issue:

❯ nexrender-cli --file myJob.json
> starting nexrender-cli
using automatically determined directory of After Effects installation:
 - /Applications/Adobe After Effects 2020/aerender
checking After Effects command line renderer patch...
backing up original command line script to:
 - /Applications/Adobe After Effects 2020/Backup.Scripts/Startup/commandLineRenderer.jsx
/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/@nexrender/core/src/helpers/patch.js:85
                throw err
                ^

Error: EACCES: permission denied, mkdir '/Applications/Adobe After Effects 2020/Backup.Scripts'
    at Object.mkdirSync (fs.js:834:3)
    at mkdirpManualSync (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/mkdirp/lib/mkdirp-manual.js:48:10)
    at mkdirpManualSync (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/mkdirp/lib/mkdirp-manual.js:52:43)
    at mkdirpNativeSync (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/mkdirp/lib/mkdirp-native.js:33:14)
    at Function.mkdirpSync [as sync] (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/mkdirp/index.js:21:7)
    at module.exports (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/@nexrender/core/src/helpers/patch.js:64:20)
    at init (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/@nexrender/core/src/index.js:94:5)
    at Object.<anonymous> (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/src/bin.js:214:12)
    at Module._compile (internal/modules/cjs/loader.js:936:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:947:10) {
  errno: -13,
  syscall: 'mkdir',
  code: 'EACCES',
  path: '/Applications/Adobe After Effects 2020/Backup.Scripts'

I fixed this with:

sudo chmod 777 /Applications/Adobe\ After\ Effects\ 2020/

Second permissions issue was:

❯ sudo nexrender-cli --file myJob.json
> starting nexrender-cli
using automatically determined directory of After Effects installation:
 - /Applications/Adobe After Effects 2020/aerender
checking After Effects command line renderer patch...
command line patch already is in place
[ctb-V_zwzeTkSSgUlmxdy] setting up job...
[ctb-V_zwzeTkSSgUlmxdy] working directory is: /tmp/nexrender/ctb-V_zwzeTkSSgUlmxdy
[ctb-V_zwzeTkSSgUlmxdy] downloading assets...
[ctb-V_zwzeTkSSgUlmxdy] applying prerender actions...
[ctb-V_zwzeTkSSgUlmxdy] running script assemble...
[ctb-V_zwzeTkSSgUlmxdy] rendering job...
[ctb-V_zwzeTkSSgUlmxdy] rendering took ~32.637 sec.
[ctb-V_zwzeTkSSgUlmxdy] writing aerender job log to: /tmp/nexrender/aerender-ctb-V_zwzeTkSSgUlmxdy.log
[ctb-V_zwzeTkSSgUlmxdy] dumping aerender log:
Running Script: /tmp/nexrender/ctb-V_zwzeTkSSgUlmxdy/nexrender-ctb-V_zwzeTkSSgUlmxdy-script.jsx
aerender Error: After Effects error: Error in output for render queue item 2, output module 1. Can not create a file in directory /tmp/nexrender/ctb-V_zwzeTkSSgUlmxdy. Try checking write permissions.
aerender version 17.5.1x47
PROGRESS: Launching After Effects...
PROGRESS: ...After Effects successfully launched

> job rendering failed
Error: Couldn't find a result file: /tmp/nexrender/ctb-V_zwzeTkSSgUlmxdy/result.mov
    at ChildProcess.<anonymous> (/Users/ben/.asdf/installs/nodejs/12.10.0/.npm/lib/node_modules/@nexrender/cli/node_modules/@nexrender/core/src/tasks/render.js:171:31)
    at ChildProcess.emit (events.js:209:13)
    at maybeClose (internal/child_process.js:1021:16)
    at Socket.<anonymous> (internal/child_process.js:430:11)
    at Socket.emit (events.js:209:13)
    at Pipe.<anonymous> (net.js:658:12)

This issue was fixed with:

chmod 777 /tmp/nexrender.

Information about environment

  • MacOS Catalina 10.15.2 (19C57)
  • zsh
  • Creative Cloud 2020
  • Which version of nexrender are you using?
    1.23.1

  • What kind of the setup do you have? (server+worker or cli)
    cli

  • Are you using pre-built binaries or globally installed npm packages?
    globally installed npm packages

  • Which kind (and version) of operating system you are running it in?

  • MacOS Catalina 10.15.2 (19C57)

Expected behavior
Expected there to be information in the README about this at least. Ideally a user-friendly error with instructions on how to fix the issue.

Not sure, but seems like this is a newer issue. From all my previous testing on macOS it was not something that would usually happen. However, your proposition is good, we definitely will add something like this to the readme. 👍

UPDATE: added a new section to the docs: https://github.com/inlife/nexrender#problems
Feel free to create a PR with additions or improvements as well!

Cheers!

Problem
While rendering i get the issue mentioned in picture.

i get result.avi in temp folder which works fine

json
This is the job.json file. i think i get issue in actions: postrender: @nexrender/action-encode.
how to resolve the issue @inlife

@Daryakhan182 try using one of supported presets like mp4, and changing the output file as well. For more info: https://github.com/inlife/nexrender/tree/master/packages/nexrender-action-encode

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Experiencing the same issue as @benwoodward I have allowed access to both aerender & the tmp/nexrender but i still get this error:

`> starting nexrender-cli
checking After Effects command line renderer patch...
command line patch already is in place
[5NHjREaDehjqa20Z3UOpm] setting up job...
[5NHjREaDehjqa20Z3UOpm] working directory is: /var/folders/wr/prkl46pj0f7dy9s8l7tq6q31l2v2_c/T/nexrender/5NHjREaDehjqa20Z3UOpm
[5NHjREaDehjqa20Z3UOpm] downloading assets...
[5NHjREaDehjqa20Z3UOpm] applying prerender actions...
[5NHjREaDehjqa20Z3UOpm] running script assemble...
[5NHjREaDehjqa20Z3UOpm] rendering job...
[5NHjREaDehjqa20Z3UOpm] rendering took ~18.244 sec.
[5NHjREaDehjqa20Z3UOpm] writing aerender job log to: /var/folders/wr/prkl46pj0f7dy9s8l7tq6q31l2v2_c/T/nexrender/aerender-5NHjREaDehjqa20Z3UOpm.log
[5NHjREaDehjqa20Z3UOpm] dumping aerender log:
aerender version 18.4x41
PROGRESS: Launching After Effects...
aerender ERROR -1701: AEGetParamPt failed at line 918

job rendering failed
Error: Couldn't find a result file: /var/folders/wr/prkl46pj0f7dy9s8l7tq6q31l2v2_c/T/nexrender/5NHjREaDehjqa20Z3UOpm/result.mov
at ChildProcess. (/snapshot/nexrender/packages/nexrender-cli/node_modules/@nexrender/core/src/tasks/render.js)
at ChildProcess.emit (events.js:311:20)
at maybeClose (internal/child_process.js:1021:16)
at Socket. (internal/child_process.js:443:11)
at Socket.emit (events.js:311:20)
at Pipe. (net.js:668:12)`

@mcmenaminconall this is an issue with OSX 11.4 #607

having a similar problem in mac sonoma 14.5

bob@dan-MacBook-Air automation % sudo ./render_jobs.sh
Password:

starting nexrender-cli
using automatically determined directory of After Effects installation:

  • /Applications/Adobe After Effects 2024/aerender
    checking After Effects command line renderer patch...
    command line patch already is in place
    [sNONt7zpy6owdqI_S-K3H] setting up job...
    [sNONt7zpy6owdqI_S-K3H] working directory is: /tmp/nexrender/sNONt7zpy6owdqI_S-K3H
    [sNONt7zpy6owdqI_S-K3H] applying predownload actions...
    [sNONt7zpy6owdqI_S-K3H] downloading assets...
    [sNONt7zpy6owdqI_S-K3H] applying postdownload actions...
    [sNONt7zpy6owdqI_S-K3H] applying prerender actions...
    [sNONt7zpy6owdqI_S-K3H] running script assemble...
    [sNONt7zpy6owdqI_S-K3H] rendering job...
    [sNONt7zpy6owdqI_S-K3H] -- 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.

[sNONt7zpy6owdqI_S-K3H] rendering reached an error: After Effects error: Error in output for render queue item 1, output module 1. Can not create a file in directory /tmp/nexrender/sNONt7zpy6owdqI_S-K3H. Try checking write permissions.

[sNONt7zpy6owdqI_S-K3H] rendering took ~13.116 sec.
[sNONt7zpy6owdqI_S-K3H] writing aerender job log to: /tmp/nexrender/aerender-sNONt7zpy6owdqI_S-K3H.log
[sNONt7zpy6owdqI_S-K3H] dumping aerender log:
WARNING:After Effects warning: Project has missing fonts.

WARNING:After Effects warning: File “this-or-that.aep” is locked. You can’t save any changes to this file.
Running Script: /tmp/nexrender/sNONt7zpy6owdqI_S-K3H/nexrender-sNONt7zpy6owdqI_S-K3H-script.jsx
PROGRESS: Adding specified comp to Render Queue
aerender Error: After Effects error: Error in output for render queue item 1, output module 1. Can not create a file in directory /tmp/nexrender/sNONt7zpy6owdqI_S-K3H. Try checking write permissions.
aerender version 24.4.1x2
PROGRESS: Launching After Effects...

catching the error internally
[sNONt7zpy6owdqI_S-K3H] cleaning up...

job rendering failed
Error: Couldn't find a result file: /tmp/nexrender/sNONt7zpy6owdqI_S-K3H/result.mov
at ChildProcess. (/opt/homebrew/lib/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:337:12)

i installed through node.js

here is the log:
WARNING:After Effects warning: Project has missing fonts.

WARNING:After Effects warning: File “this-or-that.aep” is locked. You can’t save any changes to this file.
Running Script: /tmp/nexrender/sNONt7zpy6owdqI_S-K3H/nexrender-sNONt7zpy6owdqI_S-K3H-script.jsx
PROGRESS: Adding specified comp to Render Queue
aerender Error: After Effects error: Error in output for render queue item 1, output module 1. Can not create a file in directory /tmp/nexrender/sNONt7zpy6owdqI_S-K3H. Try checking write permissions.
aerender version 24.4.1x2
PROGRESS: Launching After Effects...

that's it