Amazon Nova Reel 1.1: represent up to 2 multi-shot videos | Amazon Web Services

Amazon Nova Reel 1.1: represent up to 2 multi-shot videos | Amazon Web Services

Polly expressed

At Re: Invent 2024, we have Andded Amazon Nova Models, the new generation Foundation Models (FMS), included Amazon Nova Reel, a video generation model that creates short videos from text descriptions and optional reference images (“challenge”).

Today we present Amazon Nova Reel 1.1, which provides improvement in quality and latency in 6 second generation of one -time video, compared to Amazon Nova Reel 1.0. This update allows you to generate videos with multiple shots up to 2 minutes in length with a composition style across shots. You can either provide one challenge for a 2 -minute video composed of 6 moves, or design each shot individually using a customs challenge. This gives you new ways to create video content through Amazon Bedrock.

Amazon Nova Reel increases creative productivity while helping to shorten the time and cost of making video using generative AI. Amazon Nova Reel can be used to create competent videos for your marketing campaigns, product designs and social media content with increased effective and creative control. For example, in advertising campaigns you can create a high -quality commercial video with visuals and timing using a natural language.

Start with Amazon Nova Reel 1.1
If you are a newcomer in using the Amazon Nova Reel models, go to the Amazon Bedrock Console console, choose to select Access to the model in the navigation panel and a request for access to Amazon Nova Reel Model. When you get access to Amazon Nova Reel, both 1.0 and 1.1.

You can try after accessing access Amazon Nova Reel 1.1 Directly from Amazon Bedrock, AWS SDK or AWS command line (AWS CLI).

Test Amazon Nova Reel 1.1 Model in console, select Image/Video under Playground On the left pane. Then he chooses Nova Reel 1.1 As a model and input challenge to generate video.

Amazon Nova Reel 1.1 offers two modes:

  • Multishot automated – In this way, Amazon Nova Reel 1.1 accepts a single challenge of up to 4,000 characters and creates a multi-shot video that reflects this challenge. This mode does not accept the input image.
  • Multisthot Manual – For those who want a more direct check over the folding of the video, with manual mode (also renewed as Storyboard mode), you can specify a unique challenge for each individual shot. This mode accepts an optional initial image for each frame. Images must have a resolution of 1280 × 720. You can provide images in Base64 format or from Amazon Simple Storage (Amazon S3).

For this demo I use the AWS SDK for Python (Boto3) to induce a model using the Amazon Bedrock API and Startasyncinvoke Operation to start asynchronous invocation and generating video. I used Gatasyncinvoke to check the progress of video generation tasks.

This script Python creates a 120 -second video using MULTI_SHOT_AUTOMATED Mode as a task parameter from this text challenge, created by nitin Eusebius.

import random
import time

import boto3

AWS_REGION = "us-east-1"
MODEL_ID = "amazon.nova-reel-v1:1"
SLEEP_SECONDS = 15  # Interval at which to check video gen progress
S3_DESTINATION_BUCKET = "s3://<your bucket here>"

video_prompt_automated = "Norwegian fjord with still water reflecting mountains in perfect symmetry. Uninhabited wilderness of Giant sequoia forest with sunlight filtering between massive trunks. Sahara desert sand dunes with perfect ripple patterns. Alpine lake with crystal clear water and mountain reflection. Ancient redwood tree with detailed bark texture. Arctic ice cave with blue ice walls and ceiling. Bioluminescent plankton on beach shore at night. Bolivian salt flats with perfect sky reflection. Bamboo forest with tall stalks in filtered light. Cherry blossom grove against blue sky. Lavender field with purple rows to horizon. Autumn forest with red and gold leaves. Tropical coral reef with fish and colorful coral. Antelope Canyon with light beams through narrow passages. Banff lake with turquoise water and mountain backdrop. Joshua Tree desert at sunset with silhouetted trees. Iceland moss- covered lava field. Amazon lily pads with perfect symmetry. Hawaiian volcanic landscape with lava rock. New Zealand glowworm cave with blue ceiling lights. 8K nature photography, professional landscape lighting, no movement transitions, perfect exposure for each environment, natural color grading"

bedrock_runtime = boto3.client("bedrock-runtime", region_name=AWS_REGION)
model_input = {
    "taskType": "MULTI_SHOT_AUTOMATED",
    "multiShotAutomatedParams": {"text": video_prompt_automated},
    "videoGenerationConfig": {
        "durationSeconds": 120,  # Must be a multiple of 6 in range (12, 120)
        "fps": 24,
        "dimension": "1280x720",
        "seed": random.randint(0, 2147483648),
    },
}

invocation = bedrock_runtime.start_async_invoke(
    modelId=MODEL_ID,
    modelInput=model_input,
    outputDataConfig={"s3OutputDataConfig": {"s3Uri": S3_DESTINATION_BUCKET}},
)

invocation_arn = invocation("invocationArn")
job_id = invocation_arn.split("/")(-1)
s3_location = f"{S3_DESTINATION_BUCKET}/{job_id}"
print(f"\nMonitoring job folder: {s3_location}")

while True:
    response = bedrock_runtime.get_async_invoke(invocationArn=invocation_arn)
    status = response("status")
    print(f"Status: {status}")
    if status != "InProgress":
        break
    time.sleep(SLEEP_SECONDS)

if status == "Completed":
    print(f"\nVideo is ready at {s3_location}/output.mp4")
else:
    print(f"\nVideo generation status: {status}")

After the first call of the script, the script regularly checks the status until the video is completed. I pass on a random seed to get a different result every time it starts the code.

I will start a script:

Status: InProgress
. . .
Status: Completed
Video is ready at s3://<your bucket here>/<job_id>/output.mp4

After a few minutes the script is completed and prints the Amazon S3 output rental. I will download the output video using the AWS Cli:

aws s3 cp s3://<your bucket here>/<job_id>/output.mp4 output_automated.mp4

This is a video that this challenge generates:

In case of MULTI_SHOT_MANUAL Mode as a task parameter, with a challenge for multiple shots and a description for each shot, no need to add a variable durationSeconds.

Using a challenge for multiple shots, created by Sanju Sunny.

I run Python Script:

import random
import time

import boto3


def image_to_base64(image_path: str):
    """
    Helper function which converts an image file to a base64 encoded string.
    """
    import base64

    with open(image_path, "rb") as image_file:
        encoded_string = base64.b64encode(image_file.read())
        return encoded_string.decode("utf-8")


AWS_REGION = "us-east-1"
MODEL_ID = "amazon.nova-reel-v1:1"
SLEEP_SECONDS = 15  # Interval at which to check video gen progress
S3_DESTINATION_BUCKET = "s3://<your bucket here>"

video_shot_prompts = (
    # Example of using an S3 image in a shot.
    {
        "text": "Epic aerial rise revealing the landscape, dramatic documentary style with dark atmospheric mood",
        "image": {
            "format": "png",
            "source": {
                "s3Location": {"uri": "s3://<your bucket here>/images/arctic_1.png"}
            },
        },
    },
    # Example of using a locally saved image in a shot
    {
        "text": "Sweeping drone shot across surface, cracks forming in ice, morning sunlight casting long shadows, documentary style",
        "image": {
            "format": "png",
            "source": {"bytes": image_to_base64("arctic_2.png")},
        },
    },
    {
        "text": "Epic aerial shot slowly soaring forward over the glacier's surface, revealing vast ice formations, cinematic drone perspective",
        "image": {
            "format": "png",
            "source": {"bytes": image_to_base64("arctic_3.png")},
        },
    },
    {
        "text": "Aerial shot slowly descending from high above, revealing the lone penguin's journey through the stark ice landscape, artic smoke washes over the land, nature documentary styled",
        "image": {
            "format": "png",
            "source": {"bytes": image_to_base64("arctic_4.png")},
        },
    },
    {
        "text": "Colossal wide shot of half the glacier face catastrophically collapsing, enormous wall of ice breaking away and crashing into the ocean. Slow motion, camera dramatically pulling back to reveal the massive scale. Monumental waves erupting from impact.",
        "image": {
            "format": "png",
            "source": {"bytes": image_to_base64("arctic_5.png")},
        },
    },
    {
        "text": "Slow motion tracking shot moving parallel to the penguin, with snow and mist swirling dramatically in the foreground and background",
        "image": {
            "format": "png",
            "source": {"bytes": image_to_base64("arctic_6.png")},
        },
    },
    {
        "text": "High-altitude drone descent over pristine glacier, capturing violent fracture chasing the camera, crystalline patterns shattering in slow motion across mirror-like ice, camera smoothly aligning with surface.",
        "image": {
            "format": "png",
            "source": {"bytes": image_to_base64("arctic_7.png")},
        },
    },
    {
        "text": "Epic aerial drone shot slowly pulling back and rising higher, revealing the vast endless ocean surrounding the solitary penguin on the ice float, cinematic reveal",
        "image": {
            "format": "png",
            "source": {"bytes": image_to_base64("arctic_8.png")},
        },
    },
)

bedrock_runtime = boto3.client("bedrock-runtime", region_name=AWS_REGION)
model_input = {
    "taskType": "MULTI_SHOT_MANUAL",
    "multiShotManualParams": {"shots": video_shot_prompts},
    "videoGenerationConfig": {
        "fps": 24,
        "dimension": "1280x720",
        "seed": random.randint(0, 2147483648),
    },
}

invocation = bedrock_runtime.start_async_invoke(
    modelId=MODEL_ID,
    modelInput=model_input,
    outputDataConfig={"s3OutputDataConfig": {"s3Uri": S3_DESTINATION_BUCKET}},
)

invocation_arn = invocation("invocationArn")
job_id = invocation_arn.split("/")(-1)
s3_location = f"{S3_DESTINATION_BUCKET}/{job_id}"
print(f"\nMonitoring job folder: {s3_location}")

while True:
    response = bedrock_runtime.get_async_invoke(invocationArn=invocation_arn)
    status = response("status")
    print(f"Status: {status}")
    if status != "InProgress":
        break
    time.sleep(SLEEP_SECONDS)

if status == "Completed":
    print(f"\nVideo is ready at {s3_location}/output.mp4")
else:
    print(f"\nVideo generation status: {status}")

As in the previous demo, after a few minutes I will download the output using the AWS cli:
AWS S3 CP S3: // / /utput.mp4 Output_manual.mp4

This is a video that this challenge generates:

More creative example
When you use Amazon Nova Reel 1.1, you will discover a world of creative options. Here are some sample challenges to help you start:

Colored rupture, created by nitin eusebius

prompt = "Explosion of colored powder against black background. Start with slow-motion closeup of single purple powder burst. Dolly out revealing multiple powder clouds in vibrant hues colliding mid-air. Track across spectrum of colors mixing: magenta, yellow, cyan, orange. Zoom in on particles illuminated by sunbeams. Arc shot capturing complete color field. 4K, festival celebration, high-contrast lighting"

Shift in shape, created by Sanju Sunny

prompt = "A simple red triangle transforms through geometric shapes in a journey of self-discovery. Clean vector graphics against white background. The triangle slides across negative space, morphing smoothly into a circle. Pan left as it encounters a blue square, they perform a geometric dance of shapes. Tracking shot as shapes combine and separate in mathematical precision. Zoom out to reveal a pattern formed by their movements. Limited color palette of primary colors. Precise, mechanical movements with perfect geometric alignments. Transitions use simple wipes and geometric shape reveals. Flat design aesthetic with sharp edges and solid colors. Final scene shows all shapes combining into a complex mandala pattern."

All exemplary videos have music added manually before uploading, AWS video.

What to know
Creative control - You can use this improved check for lifestyle videos and surrounding backgrounds in advertising, marketing, media and entertainment projects. Adapt specific elements such as camera movement and firing content or animated existing images.

Consideration modes - In automated mode, you can write challenges up to 4,000 characters. For manual mode, each shot calls up to 512 characters and you can include up to 20 shots in one video. Consider planning your shots in advance, similar to creating a traditional scenario. The input images must comply with the 1280x720 resolution request. The service automatically provides your completed videos to your specifics.

Prices and availability - Amazon Nova Reel 1.1 is available in Amazon Bedrock in the American East (N. Virginia) AWS in the AWS. You can access the model via the Amazon Bedrock Console, AWS SDK or AWS Cli. As with all Amazon Bedrock services, prices are watching the Pay-As-You-Go based on your use. For more information, Fer on Amazon Bedrock Pricing.

Are you ready to start creating with Amazon Nova Reel? Visit the AI ​​AIC Nova Reel AI, where you will learn more and immerse yourself in generating videos with Amazon Nova. Explore examples of Python in Amazon Nova Model Cookbook Restites, improve your results using Amazon Nova Reel, which evokes proven procedures and discover examples of video in the Amazon Nova Reel Gallery - instructions and reference images that revive them.

Options are endless and we look forward to seeing you! Join our growing community community in the community.

- Eli


How's the Blog of news? Take this 1 minute survey!

(This survey is hosted by an external company. AWS processes your information as described in the AWS Privacy Notice. AWS will own data collected via this survey and will not share the collection of Lissel survey.)