Page 1 of 1

Command Line with MacOS X

PostPosted: Thu Sep 29, 2022 5:18 pm
by sumitrai
Hi All,

I'm fairly new to Fusion and trying desperately to try and invoke Fusion Render Node from the command line... I have Fusion and Render node installed and can happily submit scripts via the Fusion Render Manager however I'd love to be able to set off the renderings from the command line in Mac OS X. I can see in the manual and example for windows but nothing there for Mac. Can someone point me in the right direction?

Thanks!

Re: Command Line with MacOS X

PostPosted: Thu Sep 29, 2022 9:15 pm
by Andrew Hazelden
If you Launch Fusion Render Node from the Terminal window with the help flag added to the end you will see the command line syntax that is available:

Code: Select all
"/Applications/Blackmagic Fusion 18 Render Node/Fusion Render Node.app/Contents/MacOS/Fusion Render Node" -h

Fusion Render Node [<filename.comp> | <filename.dfq>] [/quiet] [/render [/frames <frameset>] [/start <frame>] [/end <frame>] [/step <step>] [/quit]] [/listen] [/join <host>] [/log <filename>] [/cleanlog] [/verbose] [/quietlicense] [/version] [/pri high|above|normal|below|idle] [/args [...]] [/execute <script string>]

Re: Command Line with MacOS X

PostPosted: Thu Sep 29, 2022 11:18 pm
by sumitrai
Amazing! thank you... I got somewhere.. but now when I ask it to run my script, there's no output generated... I've obviously tried the script in Fusion Studio as well as from the Render Manger and both generate the output.

Below is what I get back from the terminal:

Code: Select all

sumit@SabrinapleWatch ~ % "/Applications/Blackmagic Fusion 17 Render Node/Fusion Render Node.app/Contents/MacOS/Fusion Render Node" /Applications/Blackmagic Fusion 17 Render Node/comp.comp -render -quietlicense

Attribute Qt::AA_ShareOpenGLContexts must be set before QCoreApplication is created.

---------------------------------------------------
Starting Fusion Render Node 17.4.6 at 30/Sep/22 00:15:50
/Applications/Blackmagic Fusion 17 Render Node/Fusion Render Node.app/Contents/MacOS/Fusion Render Node
---------------------------------------------------
Loading Plugins
00:15:50,262 | INFO  | GPUDetect          | Starting GPUDetect 1.2_1-a7
00:15:50,262 | DEBUG | GPUDetect          |   - System Info: 0 ms.
00:15:50,262 | DEBUG | GPUDetect          |   - OpenCL: 1 detected in 0 ms.
00:15:50,262 | DEBUG | GPUDetect          |   - Metal: 1 detected in 0 ms.
00:15:50,262 | DEBUG | GPUDetect          |   - IOKit: 0 detected in 0 ms.
00:15:50,262 | DEBUG | GPUDetect          |   - CoreGraphics: 1 detected in 0 ms.
00:15:50,263 | ERROR | GPUDetect          | Failed to query IOKit monitor information
00:15:50,263 | DEBUG | GPUDetect          |   - GPU Matching: 1 matched in 0 ms.
00:15:50,263 | INFO  | GPUDetect          | Done in 0 ms.
00:15:50,263 | INFO  | GPUDetect          | Detected System:
00:15:50,263 | INFO  | GPUDetect          |   - OS: MacOS 12.6 (Build 21G115)
00:15:50,263 | INFO  | GPUDetect          |   - Model: MacBookPro18,2
00:15:50,263 | INFO  | GPUDetect          |   - System ID: b4570c47-67ff-5510-81a6-93c74b8dd52a
00:15:50,263 | INFO  | GPUDetect          |   - CPU: Apple M1 Max, 10 threads, arm64
00:15:50,263 | INFO  | GPUDetect          |   - RAM: 10.8 GiB used of 64 GiB
00:15:50,263 | INFO  | GPUDetect          | Detected 1 GPUs:
00:15:50,263 | INFO  | GPUDetect          |   - "Apple M1 Max" (gpu:7d59d3c7.24d5b074) <- Main Display GPU
00:15:50,263 | INFO  | GPUDetect          |     Integrated, 48 GiB VRAM
00:15:50,263 | INFO  | GPUDetect          |     Matches: CoreGraphics, Metal, OpenCL
00:15:50,263 | INFO  | GPUDetect          | Detected 0 monitors:
Creating GPU context on Metal device: M1 Max
log4cxx: No appender could be found for logger (DVIP).
log4cxx: Please initialize the log4cxx system properly.
DNX SDK API version 2.7.0-10-r
Cleanup licenses
sumit@SabrinapleWatch ~ %

Re: Command Line with MacOS X

PostPosted: Fri Sep 30, 2022 3:27 am
by Andrew Hazelden
sumitrai wrote:Below is what I get back from the terminal:

Code: Select all
sumit@SabrinapleWatch ~ % "/Applications/Blackmagic Fusion 17 Render Node/Fusion Render Node.app/Contents/MacOS/Fusion Render Node" /Applications/Blackmagic Fusion 17 Render Node/comp.comp -render -quietlicense



Well...ummm... To start with, you might want to start by wrapping any file path that has a space in it inside a pair of quotes. The terminal needs spaces in folders and filenames to be escaped.

Then you need to confirm if you really are placing your comp files you want to render inside the actual Fusion Render Node program's application folder? That seems like a user error waiting to happen if this is your actual working folder location. The macOS operating system's GateKeeper feature makes it quite hard to write data into the Applications folder if your user account doesn't have administrative privileges.

I'd expect your "$HOME/Documents" folder would be a better place to work from "/Users/sumit/Documents/", or to have the .comp files stored on a hard disk mounted in the "/Volumes/" folder on your Mac.

Finally you can increase the verbosity of the status information reported by adding the command line flag "-verbose".

Putting that all together you would have a command line string like:

Code: Select all
"/Applications/Blackmagic Fusion 17 Render Node/Fusion Render Node.app/Contents/MacOS/Fusion Render Node" "/Users/sumit/Documents/MyProject/MyProject.comp" -render -verbose -quit


* * *

If you need a quick way to grab the filepath for your .comp document in the Finder, I find it handy to right-click on the file with the ALT/Option key held down on the keyboard. A contextual menu item appears with a "Copy as Pathname" menu item. This will place the full absolute file path to the document in your MacOS copy/paste clipboard.

Copy as Pathname.png
Copy as Pathname.png (124.29 KiB) Viewed 1402 times

Re: Command Line with MacOS X

PostPosted: Sat Oct 01, 2022 1:03 am
by sumitrai
Andrew, you are a Gentleman and a Squire...

So far I'm cooking along with your wisdom.

Thanks!