[ { "i": 0, "speaker": "Speaker 1", "text": "Hey everyone, it's dark from cod code here. I heard a lot of questions about how" }, { "i": 1, "speaker": "Speaker 1", "text": "How did fable edits on launch video? So I want to go over that" }, { "i": 2, "speaker": "Speaker 1", "text": "You know, it also made this deck. So it's a little meta. It's also editing this video" }, { "i": 3, "speaker": "Speaker 1", "text": "Yeah, but it did edit this launch video and so how did how did it work?" }, { "i": 4, "speaker": "Speaker 1", "text": "So I worked with a video production crew and we did 17 takes so there were four scenes in it and across that we did" }, { "i": 5, "speaker": "Speaker 1", "text": "a bunch of different takes" }, { "i": 6, "speaker": "Speaker 1", "text": "And this is what I got right like not color graded" }, { "i": 7, "speaker": "Speaker 1", "text": "25 gigabytes worth of files and ended up with this so color graded we had some UI" }, { "i": 8, "speaker": "Speaker 1", "text": "we stitched it all together and cloud code did everything I didn't touch like a" }, { "i": 9, "speaker": "Speaker 1", "text": "Didn't touch it terminal or so I didn't touch a video editor. So" }, { "i": 10, "speaker": "Speaker 1", "text": "Yeah, what does it look like the starting prompt is this I'm processing a bunch of recordings of videos" }, { "i": 11, "speaker": "Speaker 1", "text": "I want you to run a" }, { "i": 12, "speaker": "Speaker 1", "text": "Transcription service on them and stitch together the best shots into one final clip" }, { "i": 13, "speaker": "Speaker 1", "text": "You know notes their multiple takes per scene" }, { "i": 14, "speaker": "Speaker 1", "text": "The best takes are usually the ones at the end with the fewest arms, but that can change" }, { "i": 15, "speaker": "Speaker 1", "text": "I can also I we shot the final scene" }, { "i": 16, "speaker": "Speaker 1", "text": "You know and I asked it to create a JSON file for the video that shows per scene" }, { "i": 17, "speaker": "Speaker 1", "text": "Each clip we're using and so this is all like all I gave it with this folder of videos" }, { "i": 18, "speaker": "Speaker 1", "text": "I didn't tell it for example, which videos are in which scenes, right?" }, { "i": 19, "speaker": "Speaker 1", "text": "And what it did is it transcribed every one of them. So it used whisper and" }, { "i": 20, "speaker": "Speaker 1", "text": "It created this array of words per video and it you know deduped them and chose the best one" }, { "i": 21, "speaker": "Speaker 1", "text": "So I'll be 17 takes and figure out which ones are in which scenes" }, { "i": 22, "speaker": "Speaker 1", "text": "and then it" }, { "i": 23, "speaker": "Speaker 1", "text": "You know like finds the best one for it, right and it compiles all of this into an edited JSON file of" }, { "i": 24, "speaker": "Speaker 1", "text": "And it compiles all of this into an edited JSON file" }, { "i": 25, "speaker": "Speaker 1", "text": "Basically, it has every see in the candidate takes the reasons" }, { "i": 26, "speaker": "Speaker 1", "text": "It chose the the scenes it did and the start and end times per scene" }, { "i": 27, "speaker": "Speaker 1", "text": "if this doesn't do any clipping in the middle of the video, but it totally could have you know, like this is not something that I" }, { "i": 28, "speaker": "Speaker 1", "text": "I tried to make each cut fairly clean. So" }, { "i": 29, "speaker": "Speaker 1", "text": "And then you get F of M peg to like stitch together the first cut. So" }, { "i": 30, "speaker": "Speaker 1", "text": "This is what it looked like. This is actually a little bit postgrading. So" }, { "i": 31, "speaker": "Speaker 1", "text": "This is what it looked like. This is actually a little bit postgrading. So" }, { "i": 32, "speaker": "Speaker 1", "text": "But yeah, yeah, the F of M peg does this" }, { "i": 33, "speaker": "Speaker 1", "text": "Now then we can do the color grader. So the color grader looks muted. Like this is actually what it looked like here in neutral 709" }, { "i": 34, "speaker": "Speaker 1", "text": "What do we want to end up with?" }, { "i": 35, "speaker": "Speaker 1", "text": "and" }, { "i": 36, "speaker": "Speaker 1", "text": "Yeah, how can we regrade it? So it writes, you know, I know nothing about color grading, right?" }, { "i": 37, "speaker": "Speaker 1", "text": "I just know that like it's a thing. So I just asked it to write" }, { "i": 38, "speaker": "Speaker 1", "text": "a bunch of color gradings and" }, { "i": 39, "speaker": "Speaker 1", "text": "This is the final you know off the camera to like to a neutral color grade. So" }, { "i": 40, "speaker": "Speaker 1", "text": "So did that the next point is I" }, { "i": 41, "speaker": "Speaker 1", "text": "Want to create like design assets, so I I gave it previously the script" }, { "i": 42, "speaker": "Speaker 1", "text": "And I had to make a bunch of like design assets and then I said, okay, like I want to turn" }, { "i": 43, "speaker": "Speaker 1", "text": "use Remotion. Remotion is a library that like takes video and react components and allows you" }, { "i": 44, "speaker": "Speaker 1", "text": "to like kind of export them all together into an end video. And so I said, okay, let's make a bunch" }, { "i": 45, "speaker": "Speaker 1", "text": "of components for Remotion, uh, that showed that implements design. So this is what it looks like." }, { "i": 46, "speaker": "Speaker 1", "text": "It's all reacted, like, um, chooses the beats and timings using the transcription JSON that we had" }, { "i": 47, "speaker": "Speaker 1", "text": "before. Right. So it has all this data inside of itself, you know, fades things in and out," }, { "i": 48, "speaker": "Speaker 1", "text": "um, has a bunch of like, you know, knobs I can adjust. Um, and, uh, the final edit is this sort" }, { "i": 49, "speaker": "Speaker 1", "text": "of like, you know, when to show which, uh, UI component. Right. And so here's an example of," }, { "i": 50, "speaker": "Speaker 1", "text": "you know, uh, it switching like a UI component on the right beat. So as soon as I say is cloud" }, { "i": 51, "speaker": "Speaker 1", "text": "doing the right work, it switches the two, two components. And again, it's doing this all" }, { "i": 52, "speaker": "Speaker 1", "text": "by itself, right. Based on the transcription, um, and the, and the Remotion component. So" }, { "i": 53, "speaker": "Speaker 1", "text": "uh, then I say like, okay, let's export the designs to Figma. Um, and, uh, yeah, I want to" }, { "i": 54, "speaker": "Speaker 1", "text": "let the design team be able to edit it. Right. And so, um, I start with this, this was like a first" }, { "i": 55, "speaker": "Speaker 1", "text": "pass essentially in like a cloud design like way, but I know the design team has much better taste" }, { "i": 56, "speaker": "Speaker 1", "text": "than me. Um, and I also give them like the ability to edit the color grader. They end up doing this," }, { "i": 57, "speaker": "Speaker 1", "text": "but like, you know, like I sent them an HTML file that like lets them, uh, play with, uh, some of" }, { "i": 58, "speaker": "Speaker 1", "text": "the, um, uh, like the, the settings. Um, and then, so they, they go edit the Figma and they give" }, { "i": 59, "speaker": "Speaker 1", "text": "it back to me. And I just say, this is all using the Figma MCP. I just say, the design has been" }, { "i": 60, "speaker": "Speaker 1", "text": "updated in this Figma. Can you update the video to match? Um, and it does this, right. So, um," }, { "i": 61, "speaker": "Speaker 1", "text": "it like turns it into this like clean, uh, like, you know, transparent look that the design team" }, { "i": 62, "speaker": "Speaker 1", "text": "put together. And this is what it looks like." }, { "i": 63, "speaker": "Speaker 1", "text": "It looks in the end. So it's a before and after, um, or like, it's got this, like, you know," }, { "i": 64, "speaker": "Speaker 1", "text": "before and after UI, this is a sample clip. Um, astute watchers might realize that this is not" }, { "i": 65, "speaker": "Speaker 1", "text": "the video we uploaded to cloud devs. Um, I was not able to turn around the design in time" }, { "i": 66, "speaker": "Speaker 1", "text": "cause I'm in Tokyo, but, um, you know, this, I, I ended up doing it. So, um, you know, the" }, { "i": 67, "speaker": "Speaker 1", "text": "important thing here is like, this is all just code, right. There's all cloud code that cloud" }, { "i": 68, "speaker": "Speaker 1", "text": "code is writing. So every," }, { "i": 69, "speaker": "Speaker 1", "text": "there's a transcript for every Jason. Then there's that final edit Jason file that I mentioned," }, { "i": 70, "speaker": "Speaker 1", "text": "right. Then there's this, um, this is grading these grading files. Uh, then there are a bunch" }, { "i": 71, "speaker": "Speaker 1", "text": "of react components for re motion. There's this final edit that stitches all together. And then" }, { "i": 72, "speaker": "Speaker 1", "text": "it uses NPX re motion render to render the video, apply the color grading, do the re motion, uh, UI" }, { "i": 73, "speaker": "Speaker 1", "text": "and, and put it all together in the end. So, um, yeah, you know, it's, uh, and it, it, it, it, it," }, { "i": 74, "speaker": "Speaker 1", "text": "it did it. So, um, yeah, that's, that's how it happened. Uh, yeah. Fable is incredible. Um," }, { "i": 75, "speaker": "Speaker 1", "text": "hoping to, you know, make more video now that it's, it's, uh, it's easier to edit. Let me know" }, { "i": 76, "speaker": "Speaker 1", "text": "if you have any questions. Thanks guys." } ]