신청 절차
Gemini Videos Generation API를 사용하려면 먼저 Ace Data Cloud 콘솔에서 API Token을 받아 예비용으로 보관하세요.
아직 로그인하거나 등록하지 않았다면, 자동으로 로그인 페이지로 이동하여 등록과 로그인을 안내하며, 완료 후 현재 페이지로 자동 반환됩니다.
하나의 API Token으로 플랫폼의 모든 서비스를 호출할 수 있으며, 서비스마다 별도로 신청할 필요가 없습니다. 최초 신청 시 무료 크레딧이 제공되어 무료로 체험할 수 있으며, 크레딧이 부족할 경우 콘솔에서 공용 잔액을 충전할 수 있습니다.
📘 전체 문서: Gemini Videos Generation API →
기본 사용
먼저 기본 사용 방식을 알아보겠습니다. 프롬프트prompt, 모델 model 및 종횡비 aspect_ratio를 입력하면 해당 비디오를 생성할 수 있습니다.
여기에서 Request Headers를 설정한 것을 볼 수 있으며, 다음을 포함합니다:
accept: 수신하려는 응답 결과의 형식으로, 여기에서는 JSON 형식인application/json으로 작성합니다.authorization: API 호출 키로, 신청 후 직접 드롭다운에서 선택할 수 있습니다.
prompt: 생성하려는 비디오 콘텐츠를 설명하는 텍스트 프롬프트로, 필수입니다.model: 비디오를 생성하는 모델로, 현재는omni-flash만 지원하며 기본값도omni-flash입니다.aspect_ratio: 생성 비디오의 종횡비로,16:9(가로 화면) 또는9:16(세로 화면)을 선택할 수 있으며 기본값은16:9입니다.resolution: 선택 가능한 출력 해상도로,720p또는1080p를 선택할 수 있으며 기본값은720p입니다.image_urls: 비디오 생성을 유도하는 데 사용되는 선택 가능한 참조 이미지 링크 배열로, 비어 있는 항목은 무시됩니다.video_urls를 사용하여 비디오 편집을 할 때는 이 파라미터가 필수입니다(최소 한 장).video_urls: 비디오 편집 / 비디오 참조에 사용되는 선택 가능한 참조 비디오 링크 배열(최대 1개)로, 제공 시 반드시 최소 한 장의image_urls도 함께 제공해야 합니다.callback_url: 비동기 콜백 주소로, 설정 후 API는 즉시task_id를 반환하며 작업 완료 시 결과를 해당 주소로 POST합니다.async: 선택 사항으로,true로 설정하면 인터페이스가 즉시task_id를 반환하며callback_url을 제공할 필요가 없고, 이후 해당 작업 조회 인터페이스를 통해 폴링하여 결과를 가져옵니다.
success: 이번 비디오 생성 요청의 성공 여부입니다.task_id: 이번 비디오 생성 작업의 ID입니다.trace_id: 이번 요청의 추적 ID로, 문제를 조사하는 데 사용됩니다.data: 생성된 비디오 결과 목록입니다.id: 생성 비디오의 고유 식별자입니다.video_url: 생성 비디오의 링크 주소입니다(state가pending일 때는null).state: 비디오 생성 작업의 상태로,pending/succeeded/failed중 하나입니다.aspect_ratio: 해당 비디오의 종횡비로, 요청 파라미터와 일치합니다.prompt: 해당 비디오 생성에 사용된 프롬프트입니다.
started_at, finished_at, elapsed(소요 시간, 초) 및 cost(이번 차감 금액, 단위 Credit) 등의 필드도 함께 포함됩니다.
결과에서 data의 video_url 링크 주소에 따라 생성된 비디오를 가져오기만 하면 됩니다.
해당 CURL 코드는 다음과 같습니다:
이미지로 비디오 생성
참조 이미지를 기반으로 비디오를 생성하려면,image_urls에 하나 이상의 이미지 링크를 전달하여 비디오 생성을 유도할 수 있습니다:
비디오 편집 / 참조 비디오(입력 비디오, 생성 비디오)
「한 편의 비디오를 직접 입력하고, 새로운 비디오 한 편을 생성」하는 것을 지원합니다:video_urls에 참조 비디오 링크 하나(최대 1개)를 전달하고, 동시에 image_urls에 최소 한 장의 참조 이미지를 제공한 뒤(업스트림의 필수 요구 사항), prompt로 원하는 편집 효과(스타일 변경, 장면 교체, 요소 추가 및 삭제 등)를 설명합니다.
아래는 완전한 실제 예시입니다——햇살 가득한 해변 비디오 한 편을 눈이 펑펑 내리는 겨울 장면으로 바꾸면서, 동시에 해변, 야자수 및 작은 배의 배치를 유지합니다. 비디오 편집은 시간이 비교적 오래 걸리므로(이 예시에서는 약 6.5분), async: true로 비동기 제출합니다:
task_id를 반환합니다:
task_id를 id로 사용하여 Gemini Tasks API를 폴링하면, 작업 완료 후 생성된 새 비디오를 받을 수 있습니다(이는 본 예시의 실제 반환 결과입니다):
resolution을 1080p로 설정할 수 있습니다(나머지 매개변수는 변경하지 않음).
안내: 예시의 입력 / 출력 미디어 링크는 모두 실제 생성 결과입니다. 플랫폼에서 생성된 비디오 및 이미지 링크에는 보관 기간이 있으며, 만료 후에는 무효화됩니다. 결과를 받은 후 즉시 다운로드하여 자체 스토리지에 저장하세요.
주의: 참조 비디오는 최대 1개까지 가능합니다. 또한video_urls를 제공할 때는 최소 한 장의image_urls를 반드시 제공해야 하며, 그렇지 않으면 다음과 같은 매개변수 오류가 반환됩니다:
비동기 콜백
비디오 생성에는 일정한 처리 시간이 필요합니다. 긴 연결을 유지하며 대기하고 싶지 않은 경우callback_url을 전달할 수 있습니다. 이때 API는 즉시 task_id를 반환하고, 작업이 완료되면 최종 결과를 해당 주소로 POST합니다:
작업 결과 조회
비동기 콜백을 사용했거나 작업 상태를 직접 조회하려는 경우, Gemini Tasks API(POST https://api.acedata.cloud/gemini/tasks)를 통해 task_id를 기준으로 작업의 최신 상태와 결과를 조회할 수 있습니다. 요청 본문에는 비디오 생성 시 반환된 task_id를 id로 전달합니다:
response.data의 구조는 동기 생성 시와 동일합니다(생성 중일 때 state는 pending이고 video_url은 null입니다):
오류 처리
요청에 문제가 발생하면 API는 해당 오류 코드와 설명을 반환합니다. 일반적인 경우는 다음과 같습니다:400: 요청 매개변수가 잘못되었습니다. 예를 들어prompt가 누락되었거나aspect_ratio값이 유효하지 않습니다.401: 인증에 실패했습니다. token이 유효하지 않거나 API와 일치하지 않습니다.403: 잔액이 부족하거나 프롬프트가 콘텐츠 심사에 걸려 거부되었습니다.500: 서버 내부 오류 또는 업스트림 생성 실패입니다.

