Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Batch processing clip combinations to render queue

Guest
Dec 05, 2012 Dec 05, 2012

Hi all,

I have 16 clips I want to put together in all their unique combinations. This will obviously take some time as there is thousands of outcomes. Is it possible to use a script to do all the processing and render out all the videos?

TOPICS
Scripting
1.7K
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Dec 05, 2012 Dec 05, 2012

Actually, it's just 256, I think.  16x16. 

As far as I know, there isn't a script that will automatically:

  • create 256 AE comps
  • add each of the 16 clips to each comp
  • check that each clip is in a different order than the preceeding comps
  • add each comp to the Render Queue
  • and render....

... but then maybe someone else does.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 05, 2012 Dec 05, 2012

Actually, it's not 256 because it's not 16 x 16; it's 16 factorial. Thus it's 20,922,789,888,000. I don't think it's really what he wants to do, but that's what he is asking for.

It would definitely require some sort of programming or a whole lot of interns. (And a lot of hard drive space.)

(Technically correct - the best kind of correct.)

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Dec 05, 2012 Dec 05, 2012

Thanks for correcting the arithmetic, sir. 

However, the original poster now curses you, I think.  Or else he/she needs to describe what's needed in greater detail.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Dec 05, 2012 Dec 05, 2012

Thanks for your replys guys.

Sorry I should have explained better. It will be limited to 3 clips from the 16 to make one video so it will be 16x16x16.

Thanks

J

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Dec 05, 2012 Dec 05, 2012

Ah. 4096.  Despite the number of comps to be made, I still am at a loss to recommend a script for the task.

I hope another individual can offer a solution.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Dec 05, 2012 Dec 05, 2012

I think it would actually be 16x15x14 if you don't want the same clip used twice in one comp.

This is the basic structure of how I would set it up. It works for me, but it needs some additional work, such as making sure it renders to the proper folder and uses the correct Render and Output Module Templates. It could also use some error checking. It assumes that all the participating clips are selected in the Project panel and that they all have the same width, height, pixelAspect ratio and framerate.

{

    var myClips = app.project.selection;

    var w = myClips[0].width;

    var h = myClips[0].height;

    var pA = myClips[0].pixelAspect;

    var fR = myClips[0].frameRate;

    var compDur;

    var myComp;

    for (var i = 0; i < myClips.length; i++){

        for (var j = 0; j < myClips.length; j++){

            for (var k = 0; k < myClips.length; k++){

                if (i == j || i == k || j == k) continue;

                compDur = myClips.duration + myClips.duration + myClips.duration;

                myComp = app.project.items.addComp("comp_"+i+"_"+j+"_"+k,w,h,pA,compDur,fR);

                myComp.layers.add(myClips)

                myComp.layers.add(myClips);

                myComp.layers.add(myClips);

                myComp.layer(2).startTime = myComp.layer(1).outPoint;

                myComp.layer(3).startTime = myComp.layer(2).outPoint;

                app.project.renderQueue.items.add(myComp);

                app.project.renderQueue.render();

                myComp.remove();

            }

        }

    }

}

By the way, this should work for any number of clips, not just 16.

Dan

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Dec 09, 2012 Dec 09, 2012
LATEST

Many thanks for this Dan. I haven't tested as of yet, but I will let you know my results.

Thanks again

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines