in today's video I'm going to be showing you how you can create entirely automated YouTube shorts using nadn we're going to generate the scripts the audio the visuals and then we're even going to edit all of that together into one short form video you can use these shorts to promote something like your business or your product or you can just use these shorts as a way to grow a YouTube channel and since these are short form they'll also work on platforms like Tik Tok and Instagram reals so first of all you can set this up
with any kind of trigger here you could have an agent call this you could have it hooked up to a lot of different triggers that can set this automation off but I'm just using a very basic setup right now where I just put in the query that I want for my video idea it's just one simple line of text right here the user query so I'll just do an interesting fact about a jellyfish and if I go back to Canvas here now all I would need to do is hit test workflow and this thing would
be Off to the Races so let's just give it a try I'll just hit test workflow so here it just generated a script and then it split that script into timestamped chunks and then it's creating images for each one of these six chunks that make up this video so we have these weight steps so that the videos can generate and right now it's requested it but then once that's done we'll go ahead and get the images and the model that we're using for this is flux Laura so that we can keep a consistent style all
right and now the images are done so now it's going to turn those into six different video clips now keep in mind this process is totally automated we just put in a simple query over here it went and generated a script and then it generated images and then finally it's generating those videos from the images and now it's going on to the editing step so it's already sent off the request for this video to be edited and now it's actually rendering all right and now as you can see our video is complete so let's check
it out to access this I'm just going to open up the get final video grab the URL and I'll just paste it in a new tab did you know jellyfish are 95% water jellyfish often mistaken for simple creatures are intriguing marvels of nature they have been around for over 500 million years making them one of the oldest living species on Earth moreover some jellyish can even glow in the dark due to bioluminescence adding to their mysterious charm learn more about these fascinating creatures and their unique traits discover more amazing facts and as you can see
that video turned out pretty amazing and all it took was one simple prompt now I'm going to show you every step of the way how to build this but if you want the copy and paste easy install then I highly recommend investing in and joining the AI foundations community in the AI foundations Community me and my brother Drake are sharing the best course for nadn in the industry if you go to our classroom here you can go to this nadn Mastery course and then you can drill down into the viral shorts automation this is where
you're going to find the quick install link so if you click on this hit download then all you have to do is click on these three dots here import from file then you can go find that file and hit open and boom you have it all right here the community is definitely not just about templates though it's about learning the foundational steps to actually building these systems yourself s so if you want to network with passionate people in the space of generative AI automations and agents and you want to learn these things from the ground
up then I highly recommend investing in AI foundations the link will be in the top pinned comment and the description below I'm going to walk you guys through the Click by click but before we do I just want to stress we're coming out with original automations we're coming out with original agent architectures here at AI foundations and I wear this right here on my chest AI foundations means originality it means implementing things that nobody else has dared to implement yet and what you'll see as you go throughout YouTube videos is that 90% of the people
here on YouTube are pretty much just copying the stuff from the best 10% people I mean the other day I came up with an automation on a self-learning agent and I'm already seeing numerous people in the industry that are just carbon copying exactly what I created that's the price that I pay for putting this stuff out there there for free on the internet so if you could I would appreciate it if you like this video because I'm putting my best foot forward and I'm giving you guys all of my best stuff right here for free
and if you're looking for the number one Community to learn generative Ai and how you can actually practically implement it into your life and into your business then joining AI foundations is going to be the best decision that you make so I am going to be cracking open a sparkling water I've got my Saratoga here let me know in the comments are you guys uh sparkling or Still Water drinkers what do you like to drink uh this is going to be a long tutorial and I'm going to be right there with you doing this so
make sure to grab a drink grab a beverage or a snack and just dive in and have fun with this process as we build the shorts automation kicking things off here we're going to hit add First Step I'm going to click on trigger manually and this is going to allow us to start our workflow just by hitting this test workflow button as you can see that sends an item through and triggers our workflow to start I'm just going to delete this for now and we're going to begin building out this automation next I'm going to
hit this plus button I'm going to type in open Ai and I'm going to click on this top open AI not the open AI chat model but just open Ai and I'm going to click on message a model now I'm going to name this the ideator and I'm just going to go with the brain Emoji just to kind of symbolize what this chat complete is going to be doing I'm going to connect a credential here and I know that this one works for me but if you haven't already added your open AI credentials you're just
going to need to hit create new credential and go through and get your API key I show how to do this in a lot of my tutorials so I'm not going to show how to connect the credential here this is pretty commonplace knowledge now to get this you can go log into platform. open.com this is where you're actually getting your API Keys when you go to settings and then you go to your API keys now here where we're selecting our model I'm going to switch this to expression and we're actually going to use the new
03 Mini model so to do this I'm going to type in 03- mini- 2025 d01 D31 this is going to give me access to chat gpt's latest model which is actually pretty reasonable and inexpensive but highly capable then we're going to give 03 mini a system prompt so I'm going to change the roll on this message here to system and I'm going to drag this window out so that I can type my prompt out here so I'm just going to type in a simple prompt you create video Concepts based on the user query then I'm
going to enter the output format so this is the output format in Json it's just showing that it needs to Output a script with an intro a bass which is like the middle of the script and then a call to action at the end and then the next part of this Json object is a title and I give it a quick example and tell it 30 to 50 characters for the description we say 50 to 150 characters and I tell it how to give that call to action now this is the system prompt it's all
ready to go next I'm going to hit add message and we're going to leave the role on user and since I told it here that it's going off of the user query we're just going to enter user- query and then I'm going to close off that box with/ user- query and then this is where we can type in our video idea okay so whatever your video idea is you're just going to replace video ideas and we can do that later down the line and now to get it to actually output this Json we need to
scroll down and turn on output content as Json I also leave simplify output on now I'm going to go back to the canvas and let's just see what this does if we hit test workflow so now 03 mini is going to work and now it output an item so let's click into here and see what it output all right so as you can see here it output this structured data right here and it gave us the entire script in all these different pieces now I'm going to go back to Canvas and I'm going to click
the plus button here and next I'm going to type in set and I'm going to click on edit Fields set and now we're going to construct our script so I'm going to click into here and I'm just going to give this a name of script and then we'll drag in each part of our script so that we can give the full script value so I'm going to pull in the intro and then I'll put a space after that I'll pull in the base put a space after that variable and then finally I'll put in the
CTA so now as you can see it has our entire script right here I'm going to go back to Canvas and now if we run this through it should output our entire script right here so let's just go ahead and rename this to script and if I click into here as you can see it's just outputting the full script I'll go back to Canvas and next we're going to implement 11 labs to generate the audio for our script this is going to be the the voice that runs the entire script and the voice of our
channel to do this I'm going to hit the plus button I'm going to type in HTTP and I'm going to click on HTTP request we'll change the method to post and then I'm going to put in the URL to get the text to speech so this is just api. 11. iv1 text- 2-sp speech and then we have the model ID or the voice ID that is going to run this so this is the ID that defines which voice we want to use and then I also have this outputting the timestamps because I want this to
Output in a very special format and when we're generating these videos they need to be dynamic so we need to understand the total length of this video and when certain things are being said throughout it so that later down the line you can actually create you know sort of these videos and images that are relevant to that part of the video and I've really put some thought into this guys I've made this adaptive right I've made it so that no matter what you put through here it's going to be able to generate short form content
whether it's a 30-second video or a one minute video I'm going to rename this to script generator just so we can stay nice and organized here and then I'm going to check send headers next I'll go over to 11 labs. I'll hit go to app and in another window I'm going to go to the API reference the documentation for 11 labs to see exactly how they want to receive our API key so here it shows X i- api-key that's the name of the key so I'm going to copy that and we're going to paste it
as the name for our header parameter and then I need to go and get my API key to put in the value here and we also need to find a voice that we want to use for our automation so that we can replace this right here to get your API Keys you can go to the bottom left you can click on API keys and then you can click on create API key here you can give it a name or it will generate one for you and I'm just going to hit create and then I'm going
to copy this key to my clipboard and I'll paste that in as the value for my header parameter so this is how you have authenticated and given access to your 11 Labs account think of this as your password now we'll close this and I'll head over to the text to speech playground next I'm just going to type in this is a test and from here I can click on the different voices over here and I can listen to all of these different voices that they have available and If I want to test out a specific
bit of text I can just hit generate speech this is a test now they have the voice of Patrick baitman from American Psycho here so if I wanted to use this one click on the three dots next to the voice that you want to use after you've tested it out and you like the voice that you've chosen and click on copy voice ID then we'll go back into our script generator and I'll replace the text right here with the key that I want to use next I'll scroll down I'll tick send body and then I'll
scroll down some more and now we have some more fields to fill out I'm going to keep this on Json and using Fields below then I'm going to type in text for the name right here and we're going to drag in the script value for the text that we want to generate now I'm going to add another parameter and this is where we can decide what model we want to use from 11 Labs it's similar to chat GPT they have different voice generation models kind of like chat GPT has a 40 and an 03 and
to call the model the you want to use you set the name or the key here as the model ID and then for the value you can pop in the model that you want to use I'm going to be using 11 multilingual V2 and now if we test this step it's going to execute the node and it's generating this content from our script and it's going to come back as a base 64 so this is basically the file represented as a string and it gives us alignment the characters involved the normalized alignment and if you
scroll down here quite a ways which I probably can't even get to it because it's so far down you'll see the character start time Seconds character start time seconds again for the normalized alignment and this is what the next step is going to require in order for us to actually figure out where in the script the first 6 seconds the second six seconds and so on are now the reason that we use 6 seconds is because the video generation model that we're going to be using generates 6C Clips I'm going to go back to Canvas
and next we need to chunk out this script so how do you do that well we write a custom bit of code and I already have this code written out so I'm just going to copy and paste it but to do this you're just going to ask chat GPT and work with chat GPT whenever you need certain code written like I knew that I needed to use this with timestamps output and I needed to give it the base information and the characters that are included here in order for it to give me those certain timestamps
for the certain parts of that video so all the data is passing through here but now I need to run it through a script so let's click the plus button type in HTTP and just as a quick aside you could use the code node for this the code node allows you to use Python code but I don't like the way that the variables are handled in nad's official code node so I use a third- party tool for this you can use something else if you wanted to but I'm just just going to do an HTTP
request and we're going to call a tool called zeroc code kit I use this in a ton of my automations and they have a run python endpoint that we can access so I'm going to set the method to post and I'm going to use this URL right here prod. zerod kit.com Cod python again we're going to send the headers and this time the key is similar but this time it's off and then we're going to put our API key in right here this time we're going to zeroc codekit docomo on your API key right here
go back to your workflow and enter the value of that API key here so again this is like your secret password to allow access to your zeroc code kit account so that you can use your credits over there to generate different code operations next it's as simple as clicking on send body scrolling down here and you'll see that we have the body content type set to Json by default that's perfect using Fields below that's great as well and we're just going to enter the name code just to say 20 codit that this is the code
value and this is what it needs to run so now I'm going to change this to expression because I have different variables that I'm pulling from this script generator like the audio base 64 the alignment the normalized alignment all of this character data cuz you can kind of just pull these right in and give the code access to those variables right so I'm just going to paste in my code because I've already gone hard at work with this and written out some code with the help of chat GPT and it inserts these different variables it
inserts the audio base 64 it inserts the alignment string it inserts the normalized alignment string and we're using json. stringify for a lot of these because if I wasn't using Json stringify it wouldn't work that well so I'm going to get rid of this base 64 variable really quick just to illustrate this for you guys and as you can see if I got rid of this Json stringify right here it would make this variable undefined so I'm going to bring json.stringify that operation back into the variable and as you can see it pulls it through
here in a way that the code can understand so I'll bring my other variable back in with the base 64 and as you can see here the first thing that it does is it sanitizes these strings that are pulling through it gets rid of the non asky characters and then it parses the Json strings into python dictionaries and what this is going to do overall is it's going to send through the sixc chunks of that script so that I can generate a prompt for each chunk of the script so again if you just want my
full code if you don't want to work with chat gbt to get this code if you don't want to you know maybe screenshot this and just use the code that I have then you can join our community you can plug this right in and then it'll just work for you so now I'm going to close this window I'm going to scroll down to options and I'm going to hit add option and we're going to click on the redirects and I want to make sure follow redirects is on and we have Max redirects at 21 now
let's see what happens when I hit test step as you can see here it split our script into these different data variables so we have three different variables or actually four if you count the zero place and it pulls through the duration of each of these sets of the script right down to the character that it takes place at right so the first 6 seconds is right here the second 6 seconds is here and then if I go all the way to the end you'll see that it pulls the duration for the last clip as
well so that we know exactly how long that last clip was so if I just move my face here you'll see what I'm talking about with that duration there so this result came through perfect I'm going to go back to Canvas and now as you can see this is only pulling through one it but this is a problem because we want to split this out into multiple items so that they can go through chat GPT independently and it can create a prompt for each one of those different sixc Snippets so that it can create a
prompt for each one of those 6C Snippets so I'm going to click the plus button right here I'm going to type in split and you should see split out it's this little purple icon and what this is is this icon actually it shows it very well one item coming in multiple items coming out so we're going to click split out we're going to change include to all other fields and then I need to enter what I want to split out here so I actually want to split out the data so that's within this result object
here so if I type in result and then I type in dot data that's going to get the object within result just by adding that dot and then data there so if I test this step now as you can see it outputs four different items so now our script has been turned into four different requests for the next llm so now I'll go back to Canvas I'll click plus right here type in open Ai and we'll click on that open AI again and message a model resource can be set to text make sure that you
have the right credential selected make sure your resource is on text and you're messaging a model and then you can select one from the list but you'll notice once again that if I type in 03 it's not going to be available it shows like it's not actually here yet so I'll go back to Canvas I'll click on my ideator over here and I'm just going to copy the model ID from this one and then go back to Canvas and we'll open up open AI again and then here I'm going to change to expression and I'm
just going to paste that in just to keep things organized I also want to rename this one to image prompter with my little camera emoji and I'll just hit rename and now this is where you can get creative with the image prompts because what we're going to do is we're going to create in this case we have four items we're going to create four different images so it needs to know how to handle each one of those items so I'm just going to drag this out right here and I'm going to paste in my prompt
and I'm going to walk you guys through this really quick so don't worry but this is where you can get really creative with it and you can give it instructions on how to Output those prompts so this prompt is where you can actually really start to influence the results of your short form automations and I just start out by saying you are an image prompt generator agent for video production Your Role is to create starting frames for a longer video by transforming script segments into visually descriptive image prompts then I give it the Json output
that it actually needs to output for each one of these four items and it's just a basic prompt and then I had to add in these important instructions down here to make sure that it wasn't outputting too long of prompts or it wasn't outputting anything too advanced and I also added some Nuance like I said keep it extremely simple don't make things that the video generation model will fail to animate and I listed some things that AI is not good at and then I also listed some things that it is really good at another important
note in the instructions is I tell it to always include a certain keyword and we'll get to this a little bit more later this is going to depend on the flux Laura model that you use but the flux Laura model that I use the Boreal flux Laura model uses this flicker photo from 2021 keyword in order to trigger it and get it to actually generate those images the way that that I want them to since this is the system prompt here I'm going to change the r to system and then I'm going to add the
next message where we pass in the exact variables that are necessary so I'll hit add message and now we're going to leave the role on user and first I'm going to give it the full script so I'll paste in this variable here change it to expression and now as you can see it's pulling in the full script the next part that I'm pasting in is going to be the exact chunk of the script that we want to use so it's going to pull in each of these individually and then it's going to pull in the
ID for that section to show the placeholder of where that is so if I click into here to open this up for a preview you'll see that it gives the full script and then it tells it okay so here's the current scene that you're actually generating discover unexpected quirky life hacks for everyday Brilliance join us as we explore creative video idea so this is the first portion of the script that it's generating that first image for and as you can see it says script position one and it's pulling through the full script so that it
can understand that this is the part of the script that's animating and then this is what's coming up next now I'm going to close this and we're going to scroll down and make sure that we output content as Json and when we output the content is Json it should output in this format right here where it just passes The Prompt for each of these results so now let's test the step and now it's outputting four items that go along with these four sections of the script so each of these have a prompt and as you
can see it followed that special instruction that I gave it to add this flicker photo from 2012 keyword into each prompt now we need to start generating the images we have the prompt for the image but we need to actually get it into production and generate that so I'll go back to Canvas and we need to pass to The Next Step which is going to be another HTTP module right here so we'll click the plus button I'll type in HTTP and I'll click on HTTP request we need to change the method to post I'll name
this to request image and I'm going to add in this URL here api. replicate docomo so I'm going to make this authorization for the name and then we need to paste in our API key here but for replicate before the value we need to type in be ER and then space and then we'll put in our key right here so you're going to go to replicate dcom get logged in and then click on your profile in the upper leftand corner and click on API tokens now I can create a new key and I'm just going
to call this key short form video generator and then I'll hit create token and now I'll just hit copy on that token and I'll paste it in right here after barer in my value so it should be Bearer space and then our authentication token for replicate next we need need to give it the type of information that it's going to be passing through so I'm going to go to add parameter I'm going to type in content-type and then for the content type value we're going to put in application SL Json and this is just telling
it that Json is going to be passed through now I'm going to add one more parameter and I'm just going to type in prefer and then we'll type in for the value wait now we'll go down to send body and I'll check send body scroll down just a bit here and we'll leave it on Json for the content type and instead of using a name and a value I'm just going to be using Json this time and I'm going to change it to expression and then I'm going to paste in this bit of Json here
so I'll open this up in a full window and the first thing that this requires is a version so this is saying exactly which model we want to contact so if we go to the models Tab and then I just click I want to run models then I'll see the different models that I can run here I'm just going to search for flux Laura and hit enter and I'm going to be using this flux dd- Laura so I'll click on it then I'll click on API and as you can see it gives me the version
right here so that's what I have right here for the version then we need to put in the variable for our prompt so what I did was I just Dragged In The Prompt right here and as you can see that pulls in the prompt to our request now this is where you're going to get to decide on the style I'm using this Boreal dlux ddev DV B2 from kud zui and then here I've got a list of all of the different flux Laura repos that I could find on hugging face so these you can think
of as just different models that people have trained up to produce very similar results every time and you can think of them as Styles like they've got one here for flux dm- Lisa and if I click on the hugging face page for this you're going to see that this is a Mona Lisa trained flux so it basically is going to pull Mona Lisa into whatever your prompt is and as you can see they all have this keyword in there MN LSA so it's going to pull in a photo of Mona Lisa when you're using this
repo and you're using this keyword right here and it looks like more broadly they use a photo of Mona Lisa woman so if you remember when I was adding that instruction into my agent's prompt I just put a flicker photo from 2012 or something like that because that was the flux repo that I was using but in this case if I wanted to use this repo then I could just pull in this keyword and give that as an instruction and I could use this repo right here in that placeholder for the HTTP request so the
one that I'm using is this Boreal flux Dev so if I click into this one you'll notice that again it has flicker photo from 2008 flicker photo from 2012 a lot of them say flicker photo from and then it just gives a year and these produce some very realistic looking images so you can find a repo that you like on hugging face or if you guys just want to access this big list of repos that I have I'll be including this in the community as well on that same module where you download the install for
this so you can head over to my community and you can check out all of those just by using the link below signing up and then heading over there to access all of these Styles and I'll just be giving you guys a PDF with all of these different things that you can use to call these different models it is important to note that not all of these models are here forever they are hosted by different people who have trained these models and you can even train your own flux Laura and I might make a video
on that in the future let's see what this sin still one is all right this one is pretty sweet and as you can see it has this in the style of sin still so if I wanted to use this model I could just copy that keyword right there we could go back into n8n and I'll go back to Canvas and then I'm going to go into my image prompter and instead of that flicker photo instruction I'm just going to add in this new instruction so always include the keyword and then I'll paste in the keyword
that I want to use in the style of CN still then I'll go back to Canvas and we'll add this as the flux repo for our request so I'll go into the request image I'll scroll down to the Json body and this is where I need to put the hugging face Laura repo so I'll just pull this from my list and then we'll paste it in right here for the HF Laura and then you'll want to make sure that the aspect ratio is 9x6 so that you get those nice vertical images for your short form
content now I'm going to go back to my canvas here and we're going to rerun the image prompter so that I can get some new prompts in here because if you remember right we ran it with those Boreal prompts but this time I want to run it with the sin style prompts all right so now that's run through it passed our four prompts and now I'm just going to click to run the request image and now this has output for items as well so we'll click into the request image and we're going to see what
it generated here and if I scroll over even further you'll see the HF Laura you'll see our aspect ratio you'll see the prompt that it passed and as you can see it put that in the style of cnst L and then scroll over furthermore and you're going to see the output URLs so I'm just going to copy one of these and we're going to see what this looks like we'll just open it up in a new tab and as you can see this is what we got so it's not exactly that style but it is
quite realistic and I like the look of it let's see this next one I really like these but they're not quite getting the CN still kind of style that I'm going for so I'm going to show you guys how to kind of alter that image prompt in order to get more results like the ones that we wanted so another thing that I'm noticing is a lot of these prompts have nighttime and they follow a very specific style every time so in order to get better results with my prompting I want to copy these prompts since
they are pulling that exact same style I want to put them into my image prompters instructions here so I'll just come down here and I'm going to put in example prompts for the style I'm going for and then I'm just going to paste in these prompts so I'll just copy each of these and paste them in as examples now I've given it four example prompts let's go ahead and test the step again all right it completed another four items so let's check that out all right it's a little bit closer but I'm still not getting
that night style that was going for I do like the ambient lighting that it's bringing in but it's not giving that nighttime effect with the neon lights so I'll go back into my image prompter and once again here I'm just going to improve the instructions so we'll drag this down and I'm just going to enter in style preferences in here so I'll just do style preferences and I'm just going to say always make the prompts a nighttime scene use lots of nighttime ambient lighting and neon lighting I'll say go for wide shots and I'll also
say use 4K and sinil 800t let's test again and see what we get and these prompts are looking a little bit closer so let's see what kind of generations we get this time all right perfect now we're getting the style of image that we're after another example here of this nice neon lit kitchen and yet another example of this nice city street so as as you can see from this kind of iterative workflow this is how you get it to generate the types of images that you want and you might have to do some work
at this stage to get the images that you're after now since we have in our request image here a prefer wait it should wait until the images are complete but what I like to do next is just to add a little weight step in here just to make sure that the images go all the way through before moving on to the next step so I'll just click wait and I'm just going to leave it a 10-second time interval so that there's a little bit of a weight a little bit of a gap between this and
the next request which is to actually get these images I'll go back to Canvas and now I'm going to add another HTTP request and this time it's going to be a get request and we'll rename this to get image I'm going to change the url to an expression because now we're actually going to be getting each URL as it comes through then I'll hit execute previous nodes and as you can see it pulls in the rest of that variable there so I can see the URL that it's going to pull from I'll click on send
headers and then we're going to put in our authorization so I'll just do authorization and then I'll put in my key once again just like I did on the post request and now I'll test this step and it should pull through our images now I'll go back to the canvas and we're going to add in another HTTP request and this time we're actually going to request a video of that image so we'll use our image as the first frame of the video and that's going to allow us to generate a video using Minx which is
the model that we're going to be using also hosted on replicate so I'll hit plus here type in HTTP click HTTP request I'll rename this one to request video this time I'm going to use a post request and I'm going to use this URL here so this one is going to use the minia max model for our prediction and I'll tick send headers and then we're going to add in our authorization which is the same as the previous ones since this is also hosted on replicate so I'll paste in that value then we need to
add the content-type parameter for application slash Json then I'll scroll down tick send body and we're going to use Json once again I'll switch this Json to expression and I'm going to paste in my new Json that's going to be pulling in these prompts if you wanted to you could add another chat completion in here to open AI that generates a video of this or a video prompt for each of these and that would probably improve your results as well so if you guys want to use that as the next step you could do that
but just for the sake of this video I'm going to keep it simple and we're just passing in the first frame image for the image URL that it's pulling through here for the output I'll change this ad parameters to prefer and then we'll type in wait and I'm going to hit test step now this one's going to take a little bit longer because we're actually requesting a video this time so this can usually take like 2 to 3 minutes sometimes though it can take up to 10 minutes all right now my output is complete but
if I scroll over here even though I use the prefer weight you're going to notice that it still has this status of starting which means they might not be complete yet what we're going to do next is use this this for the get request so that we can actually pull these in so I'll go back to Canvas and I'm going to add in another weight step so to do that I can just duplicate this one here and I can drag it over to my request video and drag it and then I'll click into here and
I'll just rename this to wait for video and for this one we're going to change it and you can play around with this but I usually change it to 10 minutes just to be safe then on the other side of it I can right click and duplicate this one and that way I'll still have my credentials in here and I can connect it now for this one we'll click in we'll change the method to get and then I'll use an expression for my URL and I'm just going to use this expression which is going to
pull from our request video module the Json ID I'll rename this to get video and we already have our authorization here but I don't need the content type or the prefer weight on this one I can also turn off the send body now if I want to I can go into the back end of replicate and I can see that these have succeeded if I go over to my dashboard and if I click on each of these I can watch the video so as you can see that one looks pretty freaking amazing since these have
succeeded I know that I can run this now so I'm just going to run it all right and then it's pulled through four new items so I'm going to take a look at these items and see what it's pulling through so we have our kitchen image turned into a video we have our urban street corner and I kind of like how this is flashing oh my gosh did you just see that car right there it actually has a car coming through super clean and it looks nice it looks like it's actually a real video and
let's check out this final video as well and as you can see it has all of this fog right here forming which looks super nice next we're going to move on to the edit step of this video but first because we've already moved our audio through in the format that it's in we need to actually upload that audio as the full form of the audio we need to create a file for it that we can host somewhere so for this I use a free cloudinary account and cloudinary is kind of like a beefed up version
of Google Drive if I could have used Google Drive for this if it would have worked I would have done that but cloudinary is a lot better at handling video and audio files and passing them through in programmatic automations like this one so for this next step we actually have to go back to when we were generating the script over here and instead of going one way all all the way through with the script we need to connect it down here to upload to cloudinary and then we're going to need to merge it back in
with the rest of this before editing the video so I'll click the plus button in the upper right hand corner I'll type in HTTP and I'm going to click on HTTP request so you're going to make sure the method is set to post you're going to make sure the name is upload to cloudinary and then I'm going to paste in this URL here and here we're going to need to go over to cloudinary and get our Cloud name so head over to Cloud orinary get logged in and then copy your Cloud name from up here
we're going to paste it in right here where I have Cloud written then you're going to tick send body and scroll down and for the body content type we're going to change it to form URL encoded and for the name here I'm going to type in file and then I'm going to paste in this value right here and change it to expression so this value is just going to pull the base 64 audio from the previous module query 11 Labs I'll add another parameter and this time we're going to type in upload uncore preset and
we're going to head back over to cloudinary click on the settings button in the bottom left click on upload click on these three dots on the ml default and hit edit and then just for right now I'm going to be using an unsigned version of this then I'll hit save and we'll copy that ml default and we're going to paste that in for the value of the upload unor preset and then we're going to go back to Canvas and now now we need to connect up this upload to cloudinary if you don't have data in
here you're going to need to pin some data from a previous execution so go back to your executions and find a piece of data that is all the way through at least to the script generator and hit copy to editor and then we're going to drag our script generator into this upload to cloudinary and then we're going to run upload to cloudinary and as you can see it pulled that one item through now I'll go back to execute tions once more and I want to repin this data so that I have everything all the way
through to the get video and here I'm going to click on the plus after get video and I'm going to type in Aggregate and I should see aggregate here I'll click on it and then we want to select all item data into a single list we're going to change this put output field to videos then we're going to include specified fields and I want to get the output field I believe is what it's called yep output right here so it's this URL so I'll type in output for the fields to include then we'll test the
step and it should pull through our videos in this clean format now I'll go back to Canvas we'll click plus here and I'm going to type in merge and then I'll click on this merge node I'll change the mode to combine and we're going to combine by position and I'm going to add an option here for include any unpaired items and I'm going to turn that on and then we'll go back to Canvas now we have this merge node here and I can pull in the upload to cloudinary into the input 2 so it will
get that base 64 from the file we created it'll upload it to cloudinary and then it's going to pass that over to the merge field so now I'm going to run this merge and it should pull through the item from cloudinary and now we're back on the right track now I'm going to rightclick and duplicate my o code kit and pull it over to the merge and I'm just going to pull the merge into there now I'll click into it and I want to rename this to create editor Json so I'll do create editor Json
and hit rename we can leave this on post we're still using python code and the headers look great so we can continue scrolling here to the send body and now we're just going to need to input some different code here so I'll make sure that this is on expression it already is but I'm just going to delete the code that's currently in here and I'm going to put my new code in and then I'll open this in a full window now what we're doing here is we're taking in all of those outputs and then we're
turning it into something that creatom mate which is the video editing software can understand so it's going to pull in all of these output URLs and then it's going to place them into a new Json object that can be understood by creat mate now that I have that in let's just test this step and see how it does and it pulls through the creat mate code for us now I'll go back to Canvas and this is outputting the code that we need but now I'm going to set a variable for it so that we can
get just the code variable coming through and we don't have all the other data coming from this zero Cod kit module so I'll hit plus I'll type in set and I want to click on the edit Fields set and I'll just rename this to set Json variable and then I'll rename it and I just want to pull this Source directly into this drop field here then I'll rename this to creatom mate request and we'll test the step and it pulled through our request right here now we'll go back to Canvas We'll add in another HTTP
request and I'm just going to call this one editor and hit rename and now we're going to post and we're going to post to this creatom mate.com URL V1 renders we'll check send headers and we need to authorize create so I'll put in the authorization name and then we need to go get the value so you can head over to creatom mate.com click get started click on these three dots and then click project settings and you should see API key here so you can click to reveal and then you can copy this API key now
over here I'm going to type in Bearer space and then I'm going to paste in my API key for creatom mate we'll add another parameter and this one is going to be content-type and again we're going to do application SL Json now I'm going to check send body for the specify body we'll do using Fields below I'm going to type in source and then we're just going to drag the value for this entire creat mate request into the value section there now I'll hit test step and as you can see it's planned to edit that
video and I can see the URL of the final edited video here I'll go back to Canvas and now we're going to add another weight step while that waits to render so I'll click plus type in wait I'll click on waight here and this one needs to be about 1 minute but I usually like to go a little longer so we'll go seconds and I'll go 70 seconds so we'll go 1 minute and 10 seconds and then I'm going to rename this one to rendering just to show what we're waiting for I'll hit rename back
to Canvas then we'll duplicate our editor I'll zoom out because it went way over here and I'll drag it back over and then we're going to connect our editor and I'll click into here and I'm going to rename this to get final video Hit rename and I'm going to paste in this URL and change it to expression so this should pull from our editor node that we just created and it should pull the Json ID so it's going to pull in the render that we want to pull from I'm going to change the method to
get we can leave the send headers on and we don't need content type and we don't need the send body now I'm just going to hit test step and I'll go back to Canvas while it's rendering and as you can see here it's doing that rendering step and it should be 70 seconds and then we should get our final video and finally our video is complete so I'll click into get final video and then if I scroll over here I should see a URL so I'll grab that and we're going to open it in a
new tab discover unexpected quirky life hacks for everyday Brilliance join us as we explore creative video ideas that include unique DIY projects ging cooking experiments and original travel Vlogs discover unconventional angles and compelling storytelling techniques that transform ordinary moments into Unforgettable content perfect for creators seeking fresh inspiration and sharable magic in every frame like And subscribe now for fresh inspiring content so as you can see that was the completed video and I really like how this style turned out again if you want to join AI foundations then you can use the link below this video
or in the top pinned comment with that being said I hope you enjoyed this video and I'll see you guys in the next one