Generative AI with Node JS in Hindi #20 Generate Video with simple prompts

Generate Video with GenAI

Steps of video:-

  1. Use veo-3.0-generate-001
  2. Use Loop to show progress and check status
  3. Use AI method to store video


Code:-


import { GoogleGenAI } from '@google/genai'
import dotenv from 'dotenv'
import { writeFileSync } from 'fs'
import express from 'express';

const app = express();
app.use(express.urlencoded({ extended: true }));
app.use(express.json());

dotenv.config();
const GoogleAI = new GoogleGenAI({ apiKey: process.env.geminiKey })

app.get("/", (req, resp) => {
resp.send(`<form action="/generate" method="post">
<input type='text' placeholder='enter your prompt' name="imageText" />
<button>Click Me</button>
</form>`)
})

app.post("/generate", async (req, resp) => {
const prompt = req.body.imageText;
await main(prompt)
resp.send("image generated")
})



async function main(prompt) {
let operation = await GoogleAI.models.generateVideos({
model: 'veo-3.0-generate-001',
prompt: "running a girl on grass",
config: {
numberOfImages: 1
}
})

while (!operation.done) {
console.log("please wait, video is getting ready")
await new Promise((resolve) => setTimeout(resolve, 1000));
operation = await GoogleAI.operations.getVideosOperation({
operation: operation
})
}

GoogleAI.files.download({
file: operation.response.generateVideos[0].video,
downloadPath: "video.mp4",
})

}


main();

// app.listen(3000)