딥 투 블랙(암전) 전환: 클립 사이 페이드아웃·페이드인
딥 투 블랙은 한 클립을 검은 화면으로 페이드아웃한 뒤 다음 클립을 검은 화면에서 페이드인합니다. 렌더의 fade가 크로스페이드일 때 만드는 방법과 한도를 정리했습니다.

딥 투 블랙(dip to black) 전환 효과는 첫 번째 클립을 검은 프레임으로 페이드아웃한 뒤, 다음 클립을 검은 화면에서 페이드인합니다. 크로스페이드처럼 두 샷을 섞는 대신, 화면이 검은색을 거쳐 지나갑니다.
아래 Sume 관련 내용은 영상 필터, Timeline 1.0, 영상 검사, 오디오 분리 문서와 Sume API 레퍼런스를, FFmpeg 관련 내용은 FFmpeg 필터 문서를 바탕으로 하며, 모두 2026-09-28에 확인했습니다. 현재 동작이라고 설명한 내용은 Sume의 코드에서 확인한 것입니다.
딥 투 블랙은 크로스페이드와 어떻게 다른가요?
크로스페이드는 두 샷을 겹칩니다. 전환이 진행되는 동안 한 샷이 다른 샷으로 서서히 바뀝니다. 딥은 두 샷을 떼어 놓습니다. 첫 번째 샷이 완전히 검은색이 된 뒤에야 두 번째 샷이 나타나기 시작합니다.
Sume의 Timeline 1.0 렌더에는 fade, wipeleft, wiperight, slideup, slidedown, dissolve의 여섯 가지 전환 유형이 있으며, 딥으로 문서화된 것은 없습니다. 그중 fade는 FFmpeg의 xfade 필터에 대응하며, FFmpeg 문서는 이 필터를 한 영상에서 다른 영상으로의 크로스 페이드라고 설명합니다. 크로스페이드 자체는 영상 전환 효과 API에서 다룹니다.
Sume로 딥 투 블랙을 어떻게 만드나요?
영상 필터로 각 클립을 따로 페이드한 뒤, 두 클립을 평범한 컷으로 이으세요. fade는 필터의 허용 목록에 있으며, FFmpeg의 fade는 페이드아웃이 끝나는 시점에 화면을 설정된 색(기본값은 검은색)으로 채웁니다.
- 두 클립 모두 앞서 실행한 Sume Job의 출력처럼 이미 워크스페이스의
media.sume.com에 있어야 합니다(엔드포인트별로 받는 URL). - 무료 프로브로 첫 번째 클립의 길이를 읽으세요.
frames: false를 담은POST /v1/video-inspect가probe.duration_seconds를 반환합니다. - 표처럼 각 클립을
fade하나를filtergraph로 담아POST /v1/video-filter로 보내세요. 페이드아웃은 클립이 끝나기 몇 프레임 전에 끝내, 마지막 프레임들이 완전히 검은색이 되게 하세요.
| 클립 | `filtergraph` | 효과 |
|---|---|---|
| 첫 번째 클립, 8.0초 | fade=t=out:st=7.4:d=0.5 | 7.4초부터 페이드아웃, 7.9초부터 끝까지 검은 화면 |
| 두 번째 클립 | fade=t=in:st=0:d=0.5 | 검은 화면에서 시작해 0.5초 동안 페이드인 |
| 딥 투 화이트 | 두 클립 모두에 :color=white 추가 | 흰색을 거쳐 페이드. 검은색은 기본 색일 뿐임 |
# An 8.0 s clip: fade out over 0.5 s, fully black from 7.9 s
curl -X POST https://api.sume.com/v1/video-filter \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: scene-a-fade-out-001" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/scene-a.mp4",
"filtergraph": "fade=t=out:st=7.4:d=0.5"
}'페이드한 클립은 어떻게 잇나요?
새로 만든 두 파일을 transition 없이 이웃한 video[] 슬롯에 넣으세요. 현재 코드에서는 이렇게 하면 평범한 컷으로 이어집니다. 렌더의 소리는 오디오 스파인에서 나오고 현재 코드에서는 각 슬롯 자체의 오디오가 빠지므로, POST /v1/audio-detach로 각 클립의 소리를 분리해 두 파일을 audio.parts[]로 나열하세요.
딥이 적용되는 것은 화면뿐입니다. part는 이음매에 무음 없이 끝과 끝이 이어지므로, 소리는 한 클립에서 다음 클립으로 곧바로 바뀝니다.
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: dip-to-black-001" \
-d '{
"audio": {
"duration_seconds": 14,
"parts": [
{ "url": "https://media.sume.com/artifacts/artf_demo/scene-a.wav", "duration": 8 },
{ "url": "https://media.sume.com/artifacts/artf_demo/scene-b.wav", "duration": 6 }
]
},
"output": { "width": 1920, "height": 1080 },
"video": [
{ "source_url": "https://media.sume.com/artifacts/artf_demo/scene-a-out.mp4", "start": 0, "duration": 8 },
{ "source_url": "https://media.sume.com/artifacts/artf_demo/scene-b-in.mp4", "start": 8, "duration": 6 }
]
}'대신 영상의 맨 앞이나 맨 끝에 검은 화면 페이드를 넣을 수 있나요?
네, 필터 없이 할 수 있습니다. 렌더의 output.fade_in_seconds와 output.fade_out_seconds는 영상 전환 효과 API에서 설명하듯 영상 전체를 시작 부분에서는 검은 화면에서 밝히고, 끝부분에서는 검은 화면으로 어둡게 합니다. 이 필드는 렌더의 양 끝에서만 동작하며, 두 클립 사이에는 쓸 수 없습니다.
한도와 비용은 어떻게 되나요?
- 영상 필터는 최대 300초 길이의 클립을 읽습니다. 더 긴 클립은 영상 트림으로 마지막 몇 초를 새 파일로 잘라 그 조각만 페이드하고, 원본의 나머지를 재생하는 슬롯 바로 다음 슬롯에 넣으세요.
- 필터를 거친 클립은 소스의 프레임 크기, 프레임 레이트, 오디오를 그대로 유지합니다.
POST /v1/video-filter/check는 같은 허용 목록 검사를 무료로 실행하지만, 검사를 통과한 프로그램도 실제 실행에서는 실패할 수 있습니다.- 필터 인코딩은 Job당 $0.02, 오디오 분리는 Job당 $0.01, 렌더는 출력 분당 $0.10이며, 기본적으로 5.5% 에이전트 수수료가 더해집니다.
출처
관련 글
미디어 도구 카테고리의 다른 글
- Etsy 배너 사이즈: 1600×400 빅 배너와 미니 배너
Etsy는 빅 숍 배너에 1600×400 px(최소 1200×300), 미니 배너에 1600×213을 권장합니다. 로고 크기, 파일 형식, 4:1 AI 배너 만들기까지 정리했습니다.
- Etsy 리스팅 사진 사이즈: 2000픽셀과 썸네일 크롭
Etsy는 리스팅 사진을 가로세로 최소 2000 px로, 첫 사진은 최소 635 px로 권장합니다. 사진 모양, 썸네일 크롭, 작은 사진을 키우는 방법까지 정리했습니다.
- Google Ads 이미지 사이즈: 1200×628과 1200×1200
가장 흔한 Google 광고 이미지 크기는 1200×628(1.91:1)과 1200×1200(1:1), Performance Max용 960×1200(4:5)이며, 5,120 KB 이하 JPG나 PNG입니다.
- Google Play 그래픽 이미지 크기: 1024×500 요구 사항
Google Play 그래픽 이미지는 1024×500 px의 JPEG나 알파 없는 24비트 PNG여야 하며, 앱을 게시하려면 반드시 필요합니다. 규칙과 아트 제작 방법을 정리했습니다.
작성자 Sume