14 Replies Latest reply on Oct 31, 2013 5:47 PM by Todd_Kopriva

    After Effects CC Output Modules on Render Only Machines

    arnietello

      Hi there, I'm having an issue with custom Output Module Templates and my renderfarm:

       

       

      After Effects CC 12.0.0.404 (showing as up to date in Creative Cloud)

      Mac OS X 10.8.4 (Latest Mountain Lion version)

      Mac Pro 2.93 GHz 8-Core, Radeon 5870, 32GB RAM and with Blackmagic Decklink Extreme 3D+

      Remote Machines (there are four) are Mac Pros as well (Quad-core, running 10.7.2 with 16GB RAM), using the ae_render_only_node.txt file in their user Documents folder.

       

       

      The exact error:

      aerender ERROR: No output module template was found with the given name.

       

       

      I am trying to get a renderfarm working with After Effects CC (see exact version above). Unfortunately, I need custom output modules and I can't seem to get the render slaves to recognize them. I found older threads on this exact issue, but no solution was found.

       

       

      I am using commandline aerender in OS X terminal to start a render with a basic test scene.

       

       

      To simplify things, I have tried testing this on one render slave machine at a time... Same result everywhere.

       

       

      Here's what I've tried:

       

       

      I exported a .aom file from my main machine (where I have my desired custom Output Modules) and attempted to bring it in on the render slaves. However, because the render slaves are render only, (they have ae_render_only_node.txt in their Documents folder), the ability to import Output Modules is disabled in After Effects (it opens as the After Effects Render Engine, and the Edit>Templates menu is greyed out).

       

       

      Next, I thought I'd try copying the main machine's /Users/(user)/Library/Preferences/Adobe/After Effects/12.0 folder over to the render slaves, thinking that would get whatever preference file to them that's needed to define the output modules. No luck. Launched After Effects (which loads as After Effects Render Engine) and reset my disk cache preferences (so they weren't still the main machine's). Tried aerender again... no luck. Same error:

      aerender ERROR: No output module template was found with the given name.

       

       

      After that, I thought it would be a good idea to sign out of Adobe Creative Cloud on the main machine, and try logging into the render slave machine with my full UserID and Password and temporarily remove the ae_render_only_node.txt file. Then, I'd import the .aom file in the full version of AE... I tried this and success! The renders work... they find the Output Modules no problem. Only issue is, as soon as I sign out, and switch to using the ae_render_only_node.txt file, the Output Modules are not found. Not sure what's going on-- if the Output Modules are being disabled by the ae_render_only_node.txt file? Or maybe signing out of my Adobe ID is removing the preferences that determine Output Modules? Don't know where the Output Module preferences are stored to be able to tell.

       

       

      Next attempt: I thought I'd try syncing my preferences with Creative Cloud. I made sure to check After Effects Sync Preferences to ensure that Output Modules are set to sync. I did a sync where I uploaded my preferences from the main machine. Then, on the render slaves, I ran Sync Preferences, and chose to download preferences. Works when signed in, but not when used as a render only node. When it's a render only node, it still prompts me to Download the Sync Preferences and Quit the Application, which I do, but nothing seems to happen. I try aerender again, and still the same error:

      aerender ERROR: No output module template was found with the given name.

       

       

      I can't seem to find any info on where Output Modules are actually stored (apparently they're not anywhere in the User/Library/Preferences/Adobe/After Effects/ folder?). Are render only nodes not allowed to have custom Output Modules? Not even for something as simple as the Multi-Machine Sequence with a post-render action of Set Proxy enabled?

       

       

      Any help is greatly appreciated!

      Thank You.

        • 1. Re: After Effects CC Output Modules on Render Only Machines
          Todd_Kopriva Level 8

          Tell us the details of the custom output module.

          • 2. Re: After Effects CC Output Modules on Render Only Machines
            arnietello Level 1

            Hi Todd,

             

            The main thing I'd like to do is export using Multi-Machine Sequence but with the Post-Render Action of Set Proxy enabled. I made a custom output module called Multi-Machine Sequences with Proxy for this. I am hoping to submit a commandline aerender for an image sequence to all the render machines, and when that's done have 1 machine compile the image sequence into a movie.

             

            I have some other custom output modules that are ProRes based, for compiling the movie, but I'm not as concerned about these. I can have a machine with a full After Effects license do the ProRes render, if I need to. But here they are:

            ProRes 422 HQ + audio

            ProRes 422 HQ + no audio

            ProRes 4444 + audio

            ProRes 4444 + no audio

            ProRes 4444 + alpha + audio

            ProRes 4444 + alpha + no audio

             

            A Multi-Machine Sequence module with Post-Render Actions (Set Proxy) is the ouput module I need to use most.

             

            Thank you.

            • 3. Re: After Effects CC Output Modules on Render Only Machines
              arnietello Level 1

              I confirmed again that the render slave(s) have the same preferences, specifically:

              Adobe After Effects 12.0 Prefs-indep-output.txt

              which lists my Multi-Machine Sequence with Proxy output module, among the others.

              It's still not working... Is this an intentional limitation of the render only node feature? Please let me know if there might be a solution to get around this.

              Thank you!

              • 4. Re: After Effects CC Output Modules on Render Only Machines
                Tim Kurkoski Adobe Employee

                I've verified this problem and filed a bug. Sorry about the hiccup.

                 

                I've trying to pin down why this happens, and while I don't have a full explanation yet I think I've stumbled onto a workaround:

                 

                1. Trash the prefs on the render machine.
                2. Enable the ae_render_only_node.txt file.
                3. Launch AE and then quit. <- This is a critical step. More on this later.
                4. Disable ae_render_only_node.txt file.
                5. Launch AE.
                6. Add your Output Module template.
                7. Quit AE.
                8. Enable the ae_render_only_node.txt file.

                 

                After you do this, I highly recommend making a backup copy of the Adobe After Effects 12.0 Prefs-indep-output.txt file. Just in case. I've had the failure reappear.

                 

                Now test with aerender and let me know if that works. It has on my machine.

                 

                Why does this matter? When you run AE with the ae_render_only_node.txt file enabled, it appears to add a new section to the preferences: "Output Module Preference Section v28-TRIAL". It's the TRIAL part that is important. Without it, AE doesn't seem to be able to keep track of the OM's when in render_only_node mode. And if you disable the ae_render_only_node.txt file, AE has a tendency to destroy the TRIAL section (I'm still tracing why that happens).

                 

                Now, should this not work for you, I recommend you work around the problem by adding your comps to the render queue in each project. When you do that, and change your aerender flags appropriately, you can render to your desired settings without specifying OMtemplate parameter.

                 

                > I can't seem to find any info on where Output Modules are actually stored (apparently they're not anywhere in the User/Library/Preferences/Adobe/After Effects/ folder?).

                 

                You probably already discovered this. In After Effects CC the OM data is stored in the Adobe After Effects 12.0 Prefs-indep-output.txt file. In older versions of AE, a single pref file such as Adobe After Effects 11.0-x64 Prefs.txt holds all of this data.

                 

                Let me know if that workaround does the trick for you. If I get more information on the cause of the problem I'll update you.

                • 5. Re: After Effects CC Output Modules on Render Only Machines
                  arnietello Level 1

                  Hi Tim,

                  This is excellent information. Thank you so much for your help! I will give this a try when I get into the studio tomorrow morning, first thing. I'll post back and let you know how it goes.

                  Thanks again!

                  • 6. Re: After Effects CC Output Modules on Render Only Machines
                    arnietello Level 1

                    I went step by step through that process, and it's still resulting in the same issue.

                     

                    On my render machine, if I inspect the indep-output txt file, I can see that the trial section is being removed when following your steps. Launching After Effects (GUI) puts the trial section back into the preference file... But if I don't launch the app (I only plan on using the commandline anyway)... it does not get added back in when running aerender from Terminal. That's good, but unfortunately it's still giving me the same error saying the output module is not found.

                     

                    This happens even when I run through all the steps again, not launching After Effects (GUI) after enabling the ae_render_only_node.txt file in step 8.

                     

                    In other words, even with the trial section not in the indep-output.txt file, it fails to find the module. I've triple-checked the spelling of the Output Module (and it works when running with ae_render_only_node.txt disabled).

                     

                    Are there preferences outside of the /User/Library/Preferences/Adobe/After Effects/ folder that I need to throw away? I'll keep trying, and post if I get it to work.

                     

                    Thanks for your help, I appreciate it.

                    • 7. Re: After Effects CC Output Modules on Render Only Machines
                      Tim Kurkoski Adobe Employee

                      > Are there preferences outside of the /User/Library/Preferences/Adobe/After Effects/ folder that I need to throw away?

                       

                      Nope.

                       

                      > In other words, even with the trial section not in the indep-output.txt file

                       

                      To be clear, we want the TRIAL section in the file. That is what will make this work.

                       

                      So to be clear, my instructions have the following intent:

                       

                      1. Trash the prefs on the render machine.
                        -> ie., Press the reset button. Make sure you're trashing ALL the prefs files. Might be worth emptying your trash, too.
                      2. Enable the ae_render_only_node.txt file.
                      3. Launch AE and then quit.
                        -> 2+3 creates the prefs files, including the TRIAL section in the output prefs.
                      4. Disable ae_render_only_node.txt file.
                      5. Launch AE.
                      6. Add your Output Module template.
                        -> 4-6 is is the only way to get the OM templates into the prefs. In theory, and on my machine, the TRIAL data is not affected by these steps.
                      7. Quit AE.
                      8. Enable the ae_render_only_node.txt file.
                        -> 7+8 get us back to the state we want to be in.

                       

                      With all that in mind, please follow the instructions again. I double-checked on my computer and this does work for me, for at least my single test template. If you're still having problems, please walk me through exactly what you're doing.

                       

                      Once you get the output prefs file set on one computer, you should be able to copy it over to your other render node machines.

                      • 8. Re: After Effects CC Output Modules on Render Only Machines
                        arnietello Level 1

                        Thanks Tim, I'm attaching a video screen capture going through the steps again. At the end of this video, I confirm that the indep-output file has both the TRIAL section and the custom Output Modules I added, but the aerender terminal command gives me the same error.

                        Thanks again.

                        • 9. Re: After Effects CC Output Modules on Render Only Machines
                          Tim Kurkoski Adobe Employee

                          Thanks for the screen capture. That was very helpful.

                           

                          The difference between what you're doing and what I am doing is that I am only adding a single template, whereas you are adding many. If I add many templates, and specifically if I add them alphabetically to the end of the list, my workaround fails the same as it fails for you.


                          I think I've got this figured out. The data in the prefs file uses index number references for each of the templates, and the TRIAL data is not getting updated with the new indexes. In other words, we're asking for template "foo", which may be index 25, but the TRIAL data only goes up to the default length of 18. Asking for 25 from a list of 0-18 is what causes the error.

                           

                          Ultimately, that's the bug: the template index data is not being copied correctly between the TRIAL and non-TRIAL sections of the preferences.

                           

                          The good news: as far as I can tell the data in the TRIAL and non-TRIAL sections should be identical, so you can copy and paste the data blocks between them to get the right result. This worked for me.

                           

                          Here's a revised set of steps for you to try (steps 9-15 are new):

                          1. Trash the prefs on the render machine.
                          2. Enable the ae_render_only_node.txt file.
                          3. Launch AE and then quit.
                          4. Disable ae_render_only_node.txt file.
                          5. Launch AE.
                          6. Add your Output Module template(s).
                          7. Quit AE.
                          8. Enable the ae_render_only_node.txt file.
                          9. Open the Adobe After Effects 12.0 Prefs-indep-output.txt file, located in the After Effects/12.0 preferences folder.
                          10. Find the "Output Module Preference Section v28" section.
                          11. Select and copy all of the text in this section (do not include the section title line).
                          12. Find the "Output Module Preference Section v28-TRIAL" section.
                          13. Select all of the text in this section and delete it.
                          14. Paste the text you copied in step 10 into this section.
                          15. Save this preferences file.

                           

                          I'm going to go try a couple of other things to see if I can make this easier. 15 steps is a lot.

                          1 person found this helpful
                          • 10. Re: After Effects CC Output Modules on Render Only Machines
                            Tim Kurkoski Adobe Employee

                            Here's a version of the instructions that skips forcing AE to create the TRIAL section. It's a text file, you can just create it yourself. There is an assumption here that you are working with fresh preferences, or at least prefs in which the TRIAL section doesn't already exist.

                             

                            1. Launch After Effects and add your Output Module templates as desired.
                            2. Quit After Effects.
                            3. Open the Adobe After Effects 12.0 Prefs-indep-output.txt file in the After Effects/12.0 preferences folder.
                            4. Find the ["Output Module Preference Section v28"] section.
                            5. Select and copy all of the text in this section, including the title line.
                            6. Paste this text directly below the existing section.
                            7. Change the title of this new section to ["Output Module Preference Section v28-TRIAL"].
                            8. Save and close this preferences file.
                            9. Enable the ae_render_only_node.txt file and run aerender.

                             

                            I also tried to find a path that wouldn't require you to manually edit this file, but that doesn't seem possible. There's really 2 bugs here: first is that AE doesn't update the template data in the TRIAL section, and the other is that opening the AE UI  can overwrite the templates with the default set. Therefore my advice is not to launch the AE UI on a render_only_node machine without backing up the output prefs file first.

                             

                            Again, sorry about the issues here. I'll be pestering the developers personally to fix this one. Let me know if this new workaround does the trick for you.

                            1 person found this helpful
                            • 11. Re: After Effects CC Output Modules on Render Only Machines
                              arnietello Level 1

                              Tim,

                               

                              This is great!! Both of those methods worked for me! Thank you so much for all your help in figuring this out. I really do appreciate it.

                               

                              I'm not certain that my plan to use Post-Render Actions to compile the sequence back to a movie will work unless I specify to the -close flag to save it (so when aerender picks up the project again, it sees the footage has been replaced with the image sequence)--- I could see how having multiple render machines trying to save the project when done could cause a bit of issues though. I will work on that, I can always have ffmpeg or a Quicktime script compile the images into a movie too. I'm just happy to get these Output Modules working!

                              This is so helpful... I'm now able to render to other image file types with Multi-Machine sequences and submit ProRes renders on individual render machines which I couldn't do on them before.

                              Thanks again so much for all your help!

                               

                              Cheers,

                              Arnie.

                              • 12. Re: After Effects CC Output Modules on Render Only Machines
                                Tim Kurkoski Adobe Employee

                                Update: This bug has been fixed in the After Effects CC (12.1) update, coming in October. AE 12.1 no longer creates the "Output Module Preference Section v28-TRIAL" section in the preferences. The same OM template indexes are now used no matter what conditions AE is running under.

                                 

                                (The TRIAL section was a vestige of an older workflow that's not applicable anymore. It should have been axed long ago.)

                                 

                                Details about the forthcoming update are here: http://adobe.ly/AE_CC_12dot1_details

                                (Bug fixes like this one aren't listed there yet because we're still working on those.)

                                • 13. Re: After Effects CC Output Modules on Render Only Machines
                                  arnietello Level 1

                                  Excellent! That is great to hear. Looking forward to 12.1! Sounds like a great update.

                                  Thanks again for your help.

                                  Arnie.

                                  • 14. Re: After Effects CC Output Modules on Render Only Machines
                                    Todd_Kopriva Level 8

                                    Today, we released the After Effects CC (12.1) update, which fixes this bug.

                                     

                                    Let us know how things work for you in the updated version.