소개
필수 프롬프트와 이미지 또는 영상 참조 1개 이상을 바탕으로, 새 사운드가 생성되는 3–15초 영상을 만듭니다.
| 항목 | 값 |
|---|---|
| 입력 | 텍스트 |
| 출력 | 영상 |
| 제공사 | |
| Gemini API 제공 시점 | Google 발표 기준 2026년 11월 5일부터 정식 제공 |
| 모델 코드 | gemini-omni-1.2-flash |
| 생성 길이 | 3–15초, 정수 단위 설정, 기본값 8초 |
| 마지막 프레임 사용 시 길이 | 마지막 이미지를 제공하면 3–10초 |
| 편집 길이 | 원본 길이에 따르며 10초 이후 구간은 잘라 냄 |
| 출력 해상도 | Google 안내 기준 360p·720p 직접 출력, 1080p·4K는 Google이 업스케일 |
| 생성 화면비 | 16:9 또는 9:16, 기본값 16:9 |
| 영상 및 오디오 형식 | AAC 오디오 트랙이 포함된 24 fps MP4 |
| 참조 입력 | 이미지 최대 6장, 영상 최대 3개이며 각 영상은 3초 이하 |
| 긴 참조 영상 생성 | Google 안내 기준 11–15초 출력에는 참조 영상 1개 사용 |
| 워터마크 | Google의 보이지 않는 SynthID 워터마크 포함 |
| 생성 영상 보관 | 14일 후 삭제 |
핵심 기능 및 하이라이트
현장 사운드가 어우러진 시장의 한순간
자체 테스트의 6초 720p 시장 장면에서는 요리사가 불길이 솟는 웍에서 면을 볶으며 요청한 대사를 말했습니다. 기름이 지글거리는 소리, 빗소리, 시장의 말소리도 동작과 함께 나왔습니다.
보트가 출발하는 순간을 움직임으로
5초 부두 예시는 야간 정지 이미지 한 장에서 시작합니다. 자체 테스트에서는 승객이 작별 인사를 하는 동안 목제 스피드보트가 호텔에서 천천히 멀어졌고, 엔진 소리와 물소리, 멀리서 들리는 밴드 음악이 함께 생성되었습니다.
동작이 끝날 자세까지 설계합니다
스튜디오의 첫 이미지와 마지막 자세를 바탕으로 만든 5초 애니메이션입니다. 자체 테스트에서는 카메라가 고정된 상태로 무용수가 두 자세 사이를 움직였고, 잔잔한 피아노 음악이 흘렀습니다.
두 인물을 기차 안 장면으로
자체 테스트에서 참조 인물 사진 두 장으로 6초 식당칸 장면을 만들었습니다. 한 여행자가 테이블 건너로 접은 쪽지를 건네자 상대가 읽고 미소 지었으며, 기차의 규칙적인 소리와 식기 소리가 어우러졌습니다.
공연 무대를 호숫가로 옮깁니다
자체 편집 테스트에서는 회색 스튜디오가 안개 낀 수면 옆 달빛 비추는 무대로 바뀌었습니다. 배경이 바뀌는 동안 무용수와 동작은 장면에 유지되었습니다.
요청 파라미터
| 파라미터 | 필수 | 설명 |
|---|---|---|
prompt | 예 | 필수입니다. 번호로 지칭한 이미지나 영상에서 무엇을 사용할지 설명하고 새 동작과 사운드를 적습니다. 1자 이상 · 20000자 이하 |
reference_image_urls | 아니요 | 이미지 URL 최대 6개입니다. 이미지나 참조 영상 중 하나 또는 둘 다 제공합니다. 1개 이상 · 6개 이하 |
reference_video_urls | 아니요 | 영상 URL 최대 3개이며 각 클립은 3초 이하입니다. 화면의 느낌과 동작을 안내하며 오디오는 반영하지 않습니다. 1개 이상 · 3개 이하 |
aspect_ratio | 아니요 | 기본값은 가로 16:9이며 세로 9:16도 지원합니다. 구도를 바꿔도 추가 요금은 붙지 않습니다. |
resolution | 아니요 | 직접 출력인 360p 또는 720p(기본값)를 고르거나 1080p·4K를 선택합니다. 1080p와 4K는 Google이 업스케일해 요금이 더 높습니다. |
duration_seconds | 아니요 | 정수 단위로 3–15초를 선택하며 기본값은 8초입니다. 11–15초에는 Google이 안내하는 참조 영상 1개 사용 기준을 따릅니다. |
요금
참조 기반 생성은 요청한 출력 초 수에 선택한 해상도의 단가를 적용합니다. 이미지 수, 참조 클립, 화면비에 따른 별도 요금은 없습니다. 실패한 시도와 거부된 요청은 과금하지 않습니다.
| 사양 | 요금 |
|---|---|
| $0.0276 / 초 |
| $0.084 / 초 |
| $0.126 / 초 |
| $0.252 / 초 |
활용 사례
대사가 있는 시장의 짧은 장면
요리사와 한 가지 동작, 따옴표로 묶은 짧은 대사를 적고, 기름이 지글거리는 소리와 비 오는 시장의 분위기를 요청합니다.
호텔 도착 또는 출발
부두의 첫 이미지에서 보트가 출발하도록 움직이게 하거나, 마지막 구도가 정해져 있다면 종료 이미지를 추가합니다.
같은 캐릭터가 다시 등장하는 장면
참조 인물 사진을 사용해 기존 두 인물을 해 질 녘 식당칸 같은 새로운 배경에 배치합니다.
공연 배경을 다른 무대로
촬영된 동작을 유지하면서 스튜디오를 호숫가로 바꾸도록 영상 편집에 요청합니다.
프롬프트 가이드 및 실전 팁
시작 자료에 맞는 엔드포인트 선택
새 장면에는 텍스트, 애니메이션에는 첫 정지 이미지, 시각적 방향에는 참조 자료, 특정 수정에는 기존 영상을 사용합니다.
장면 구성 명확히 전달
Google에 따르면 모델은 기본적으로 여러 샷을 만들 수 있습니다. 한 테이크를 원하면 ‘no scene cuts’를 추가하고, 말할 대사는 따옴표로 묶습니다.
참조마다 역할 지정
‘Image 2의 장소 사용’ 또는 ‘Video 1처럼 움직이기’라고 적어 각 업로드의 역할을 프롬프트로 설명합니다.
해상도를 높이기 전에 작은 초안 검토
제공되는 요금 중 가장 낮은 360p로 아이디어를 시험합니다. 1080p와 4K는 Google이 업스케일하며 더 높은 요금이 적용됩니다.
편집 지시의 범위 좁히기
Google은 단순한 변경 지시 뒤에 ‘Keep everything else the same.’을 덧붙이도록 권장합니다. 편집은 10초에서 자르므로 전송 전에 원본 길이를 확인합니다.
소개
Gemini Omni 1.2 Flash 참조로 동영상은 업로드한 시각 자료를 바탕으로 새 장면을 구성합니다. prompt와 함께 reference_image_urls 또는 reference_video_urls 중 하나 이상을 제공합니다. 이미지는 인물, 사물, 장소를 안내하고 짧은 클립은 화면의 느낌과 움직임을 안내합니다. 참조 사운드트랙은 반영하지 않습니다.
Google에 따르면 1.2는 최대 6장의 참조 이미지에 걸친 일관성을 개선했으며, 최대 2명의 캐릭터에 각각 사진 3장까지 사용하도록 권장합니다. 참조 영상은 각 3초 이하로 최대 3개까지 사용합니다. Google은 11–15초 결과에 참조 클립 1개를 안내하지만, 자체 테스트에서는 클립 2개를 사용한 11초 출력도 완료되었습니다. 긴 장면을 계획할 때는 공식 안내를 기준으로 삼습니다.
주요 기능 및 특징
- 같은 생성 요청에 이미지 참조와 영상 참조를 함께 사용합니다.
- 업로드한 이미지 최대 6장에 시각적 역할을 지정합니다.
- Google의 긴 출력 관련 안내에 따라 참조 클립 최대 3개로 동작이나 화면의 느낌을 안내합니다.
- 업로드 순서에 맞춰 Image 1 또는 Video 1이라는 일반적인 명칭으로 지칭합니다.
- 참조 영상의 오디오는 사용하지 않고 장면에 맞는 새 오디오 트랙을 생성합니다.
활용 사례
- 참조한 두 여행자를 기차 식당칸에 배치해 짧은 대화 장면을 만듭니다.
- 참조 사진 속 제품을 새로 설명한 장소에 등장시킵니다.
- 짧은 동작 참조로 새 시장 장면의 움직임을 안내합니다.
프롬프트 작성 가이드와 팁
- 업로드 순서에 따라 ‘Image 1의 여행자’처럼 각 인물의 출처를 명확히 지정합니다.
- 영상의 역할을 모델이 추측하게 두지 말고 ‘Video 1처럼 움직이기’와 같이 무엇을 참고할지 설명합니다.
- ‘접은 쪽지를 테이블 건너로 밀어 줍니다’처럼 외형과 별개로 상호 작용을 설명해 새 사건을 정합니다.
- Google의 캐릭터 안내에 따라 ‘첫 번째 캐릭터에는 이미지 1–3을 사용합니다’처럼 적고, 전체 이미지는 6장 이내로 유지합니다.
- 참조 클립의 오디오는 반영하지 않으므로 ‘규칙적인 기차 소리와 달그락거리는 식기 소리’처럼 새 사운드를 설명합니다.
API 빠른 시작
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "google/gemini-omni-1.2-flash/reference-to-video",
"input": {
"aspect_ratio": "16:9",
"duration_seconds": 8,
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"resolution": "720p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
인증, 전체 스키마, 폴링과 오류 처리는 API 레퍼런스에서 확인하세요.










