사진으로 AI 생일 축하 영상 만들기: 움직임·음악·문구
사진 몇 장을 짧은 클립으로 움직이고, 새로 만든 연주곡 위에 이어 붙인 뒤, 메시지를 화면에 입혀 AI 생일 영상을 만드세요.

AI 생일 영상을 만들려면 이미지로 영상 만들기 모델을 써서 생일을 맞은 사람의 사진 몇 장을 짧은 클립으로 움직이고, 새로 만든 연주곡 트랙 위에 클립을 이어 붙인 뒤, 메시지를 텍스트로 화면에 넣으세요. 각 사진은 그 클립의 첫 프레임이 되므로 영상은 여러분이 고른 사진으로 시작하고, 입력한 문구는 생성되는 대신 텍스트로 입혀집니다.
Sume에서는 에이전트 탭에서 영상을 설명하고, 진행되는 대로 검토할 수 있습니다. 에이전트가 모델을 고르고, 비용을 쓰기 전에 먼저 확인을 받습니다. API로는 아래와 같이 호출 네 번입니다. 내용은 2026-09-28에 확인한 영상 생성 (영문), Music Router (영문), Timeline 1.0, 영상 캡션 문서에서 가져왔으며, 현재 동작이라고 표시한 제한은 Sume의 코드에서 확인한 것입니다.
AI로 사진을 생일 영상으로 만들려면 어떻게 하나요?
- 사진마다 움직이기: 공개 HTTPS URL에 올린 사진을
frame_images의first_frame으로POST /v1/videos에 보내고, 잔잔한 움직임을 프롬프트로 주세요. - 음악 만들기:
POST /v1/music-router/generate로 브리프를 보내세요. 예를 들면 “Bright acoustic pop, 112 BPM, ukulele and handclaps, a big finish at 0:25. A 30-second track. Instrumental, no vocals.”(밝은 어쿠스틱 팝, 112 BPM, 우쿨렐레와 박수, 0:25에 크게 마무리. 30초 트랙. 연주곡, 보컬 없음) 같은 브리프입니다. 기존 곡 이름을 대지 말고, 새 연주곡을 여러분의 말로 요청하세요. - 클립 잇기: 아래에 나온 Timeline 1.0 렌더 한 번으로, 클립은
video[]슬롯에 넣고, 길이는audio.mode: "silence"로 정하고, 트랙은gain_db: 0의 반복되는soundtrack으로 넣습니다. 이미지 슬라이드쇼와 같은 방식이지만 움직이는 클립을 씁니다. 클립과 트랙은 Sume 출력물이므로 그media.sume.comURL을 그대로 쓸 수 있습니다. 현재 코드에서는 클립 자체의 소리가 빠지므로, 들리는 것은 트랙입니다. - 메시지 넣기: 렌더 결과의
video_url과 함께, 넣을 문구를 시간을 지정한cues로 담아POST /v1/video-captions에 보내세요(다음 섹션 참고).
curl -X POST https://api.sume.com/v1/timeline-1.0/render \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: birthday-edit-001" \
-d '{
"audio": { "mode": "silence", "duration_seconds": 15 },
"soundtrack": { "url": "https://media.sume.com/artifacts/artf_demo/birthday-track.mp3", "gain_db": 0, "loop": true, "fade_out_seconds": 2 },
"video": [
{ "source_url": "https://media.sume.com/artifacts/artf_demo/photo-1.mp4", "start": 0, "duration": 5 },
{ "source_url": "https://media.sume.com/artifacts/artf_demo/photo-2.mp4", "start": 5, "duration": 5, "transition": { "type": "fade", "duration": 0.5 } },
{ "source_url": "https://media.sume.com/artifacts/artf_demo/photo-3.mp4", "start": 10, "duration": 5, "transition": { "type": "fade", "duration": 0.5 } }
]
}'AI 생일 영상 프롬프트에는 무엇을 써야 하나요?
- 사진에 어울리는 작은 움직임과 단순한 카메라: “She laughs and leans toward the cake as the candles flicker. Slow push-in, warm indoor light.”(촛불이 깜박이는 가운데 그녀가 웃으며 케이크 쪽으로 몸을 기울임. 천천히 푸시인, 따뜻한 실내 조명)
- 이름, 나이, 날짜는 넣지 마세요. 정확한 문구를 직접 정할 수 있는 텍스트 단계에서 넣습니다.
- 모든 클립에 같은 화면 비율: 세로 영상이면
aspect_ratio: "9:16", 가로 영상이면"16:9"로 하고, 사진도 그에 맞게 자르세요. 렌더의 기본 출력은 1080×1920이므로, 가로 영상이라면output.width와output.height를 지정하세요. - 동의한 사람의 사진이나 사용 허락을 받은 사진을 쓰세요. 얼굴은 달라질 수 있습니다. 첫 프레임 이후의 모든 프레임은 생성되므로, 클립마다 확인하고 누군가 달라 보이면 다시 생성하세요.
생일 메시지는 화면에 어떻게 넣나요?
자막 Job으로 입히세요. cue마다 text와 초 단위의 start, end가 있으며, cue를 쓰면 음성 인식을 건너뛰고 그 문구를 그 시각에 입힙니다. 같은 단계로 파티 초대 영상도 만들 수 있습니다. 날짜, 시간, 장소를 cue에 넣으세요.
음악을 넣은 뒤 완성된 편집본에 자막을 입히세요. 현재 코드에서 자막 Job은 cue를 보내더라도 60초를 넘는 영상이나 오디오 스트림이 없는 영상을 거부합니다. style을 생략하면 라틴 문자 텍스트에는 slam이 적용되는데, 현재 코드에서 이 스타일은 문구를 대문자로 보여 주고 프레임 위에 옅은 어두운 틴트를 깝니다. 줄이 놓이는 위치는 영상에 텍스트 넣는 방법에서 다룹니다.
curl -X POST https://api.sume.com/v1/video-captions \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: birthday-text-001" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/birthday-edit.mp4",
"cues": [
{ "text": "Happy 7th birthday, Maya!", "start": 0, "end": 4 },
{ "text": "Love, Grandma and Grandpa", "start": 11, "end": 15 }
]
}'AI 생일 영상 비용은 얼마인가요?
호출 네 번에 가격도 네 가지입니다. 예시처럼 15초짜리 영상이라면 클립 세 개, 트랙 하나, 렌더 한 번, 자막 Job 하나가 듭니다.
| 단계 | 호출 | 가격 |
|---|---|---|
| 사진마다 움직이기 | POST /v1/videos | 모델별, 공급사 정가 × 1.25. GET /v1/videos/models의 pricing_skus 참고 |
| 음악 | POST /v1/music-router/generate | 오디오 생성 건당 $0.125 |
| 잇기 | POST /v1/timeline-1.0/render | 출력 분당 $0.10, 분 단위로 예약 |
| 메시지 | POST /v1/video-captions | 60초 이하 영상 기준 Job당 $0.20 |
어떤 제한이 있나요?
- 현재 코드에서 자막 단계는 60초 이하 영상만 받으므로, 완성된 영상을 그 안으로 맞추거나 나누세요. 나누는 방법은 API로 긴 영상에 자막 넣기에서 보여 줍니다.
- 클립 하나의 길이는 모델에 따라 2–30초입니다. 위 예시의 5초 슬롯에 6초 클립을 쓰듯, 각 클립을 슬롯보다 일 초 길게 만드세요. 현재 코드에서 페이드가 되려면 페이드로 이어지는 클립이 페이드 길이만큼 슬롯을 넘어 재생되어야 하며, 그렇지 않으면 하드 컷으로 렌더됩니다.
- 사진 URL은 공개 HTTPS여야 하며, 렌더와 자막 단계는 Sume가 반환한
media.sume.com파일을 씁니다. - 음악 길이는 설정하는 것이 아니라 프롬프트로 유도합니다. Music Router는
duration을 거부합니다. 트랙이 짧으면 반복되는soundtrack으로 메우면 됩니다.
출처
관련 글
활용 사례 카테고리의 다른 글
- AI 동화책 삽화 만들기: 모든 페이지에 같은 캐릭터
주인공을 그림 한 장으로 확정하고, 모든 페이지에서 레퍼런스로 재사용하고, 페이지마다 글 넣을 자리를 남겨 인쇄 크기로 생성하세요.
- AI 만화 생성기: 컷마다 같은 캐릭터로 만화 만들기
AI 만화는 한 컷씩 만드세요. 캐릭터마다 레퍼런스 이미지 한 장을 재사용하고, 컷마다 모양을 정하고, 말풍선 대사는 직접 넣으세요.
- AI 건설 타임랩스 영상: 빈 부지에서 완공까지
AI 건설 타임랩스는 빈 부지를 첫 프레임으로, 완공된 건물을 마지막 프레임으로 고정합니다. 그 사이의 모든 공정은 모델이 지어냅니다.
- 사진으로 AI 드론 샷 만들기: 한 장을 항공 무빙으로
사진을 드론 샷으로 바꾸려면 AI 영상의 첫 프레임으로 보내고 공중 카메라 무빙을 설명하세요. 사진 바깥의 모든 것은 지어낸 것입니다.
작성자 Sume