import fal_clientdef on_queue_update(update): if isinstance(update, fal_client.InProgress): for log in update.logs: print(log["message"])result = fal_client.subscribe( "fal-ai/veo3.1/image-to-video", arguments={ "prompt": "A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.Sample Dialogue:Monkey (Banana): \"Welcome back to Bananas & Ice! I am Banana\"Polar Bear (Ice): \"And I'm Ice!\"", "image_url": "https://storage.googleapis.com/falserverless/example_inputs/veo31_i2v_input.jpg" }, with_logs=True, on_queue_update=on_queue_update,)print(result)
import { fal } from "@fal-ai/client";const result = await fal.subscribe("fal-ai/veo3.1/image-to-video", { input: { prompt: "A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.Sample Dialogue:Monkey (Banana): \"Welcome back to Bananas & Ice! I am Banana\"Polar Bear (Ice): \"And I'm Ice!\"", image_url: "https://storage.googleapis.com/falserverless/example_inputs/veo31_i2v_input.jpg" }, logs: true, onQueueUpdate: (update) => { if (update.status === "IN_PROGRESS") { update.logs.map((log) => log.message).forEach(console.log); } },});console.log(result.data);console.log(result.requestId);
curl --request POST \ --url https://fal.run/fal-ai/veo3.1/image-to-video \ --header "Authorization: Key $FAL_KEY" \ --header "Content-Type: application/json" \ --data '{ "prompt": "A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\nSample Dialogue:\nMonkey (Banana): \"Welcome back to Bananas & Ice! I am Banana\"\nPolar Bear (Ice): \"And I'\''m Ice!\"", "image_url": "https://storage.googleapis.com/falserverless/example_inputs/veo31_i2v_input.jpg"}'
The safety tolerance level for content moderation. 1 is the most strict (blocks most content), 6 is the least strict. Default value: "4"Possible values: 1, 2, 3, 4, 5, 6
URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio. If the image is not in 16:9 or 9:16 aspect ratio, it will be cropped to fit.
{ "prompt": "A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\nSample Dialogue:\nMonkey (Banana): \"Welcome back to Bananas & Ice! I am Banana\"\nPolar Bear (Ice): \"And I'm Ice!\"", "aspect_ratio": "auto", "duration": "8s", "resolution": "720p", "generate_audio": true, "auto_fix": false, "safety_tolerance": "4", "image_url": "https://storage.googleapis.com/falserverless/example_inputs/veo31_i2v_input.jpg"}