영상 중간에 다른 영상을 넣는 방법

영상에 다른 영상을 넣으려면 메인 영상을 삽입 지점에서 나누고, 앞부분, 새 클립, 나머지를 렌더 한 번으로 차례로 재생하세요.

읽는 시간 5분Sume
전체 글

영상에 다른 영상을 넣으려면 메인 영상을 삽입 지점에서 나누고 세 조각을 차례로 재생하세요. 삽입 지점까지의 메인 영상, 새 클립, 메인 영상의 나머지 순서입니다. 삽입 지점 뒤의 모든 내용은 새 클립 길이만큼 뒤로 밀리므로, 결과물은 두 영상을 합친 길이가 됩니다.

아래 Sume 관련 내용은 2026-09-28에 확인한 Timeline 1.0, 오디오 분리, 타임라인 합성 문서와 Sume API 레퍼런스를 바탕으로 합니다. 현재 동작이라고 설명한 내용은 Sume의 코드에서 확인한 것입니다.

Sume로 클립을 어떻게 삽입하나요?

Timeline 1.0 렌더 한 번이면 되며, 먼저 트림할 필요가 없습니다. video[] 슬롯마다 자기 source_url과 source_in(그 파일 안의 인포인트)을 지정하므로, 첫 번째 슬롯과 세 번째 슬롯이 모두 메인 영상을 읽을 수 있습니다. 렌더의 소리는 오디오 스파인과 선택 사항인 사운드트랙에서만 나오며, 현재 코드에서는 각 슬롯 자체의 오디오가 빠집니다. 그래서 같은 세 구간을 audio.parts[]로 지정해 소리를 다시 만듭니다.

  • 두 영상 모두 앞서 실행한 Sume Job의 출력처럼 이미 워크스페이스에 있는 media.sume.com 파일이어야 합니다. Sume에는 컴퓨터에 있는 파일을 올리는 공개 업로드 경로가 없습니다(엔드포인트별로 받는 URL).
  • POST /v1/audio-detach로 각 영상의 소리를 분리하세요. 기본 출력은 스파인이 요구하는 형식인, 샘플 단위로 정확한 WAV입니다.
  • 표처럼 슬롯 세 개와 그에 맞는 part 세 개를 배치하세요. audio.duration_seconds는 전체 길이입니다.
60초짜리 영상의 0:20 지점에 10초짜리 클립을 넣은 경우이며, 출력은 70초입니다. 필드는 Timeline 1.0 기준이며 2026-09-28에 확인했습니다.
구간`video[]` 슬롯`audio.parts[]` 조각
메인 영상, 삽입 전start 0, duration 20, source_in 0메인 WAV, source_in 0, duration 20
새 클립start 20, duration 10, source_in 0클립 WAV, source_in 0, duration 10
메인 영상, 삽입 후start 30, duration 40, source_in 20메인 WAV, source_in 20, duration 40
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: insert-clip-001" \
  -d '{
    "audio": {
      "duration_seconds": 70,
      "parts": [
        { "url": "https://media.sume.com/artifacts/artf_demo/main.wav", "source_in": 0, "duration": 20 },
        { "url": "https://media.sume.com/artifacts/artf_demo/clip.wav", "source_in": 0, "duration": 10 },
        { "url": "https://media.sume.com/artifacts/artf_demo/main.wav", "source_in": 20, "duration": 40 }
      ]
    },
    "output": { "width": 1920, "height": 1080 },
    "video": [
      { "source_url": "https://media.sume.com/artifacts/artf_demo/main.mp4", "start": 0, "duration": 20 },
      { "source_url": "https://media.sume.com/artifacts/artf_demo/clip.mp4", "start": 20, "duration": 10 },
      { "source_url": "https://media.sume.com/artifacts/artf_demo/main.mp4", "start": 30, "duration": 40, "source_in": 20 }
    ]
  }'

새 클립의 크기나 프레임 레이트가 다르면 어떻게 되나요?

기본 출력은 1080×1920이므로, 예제처럼 output.width와 output.height를 메인 영상의 크기로 지정하세요. 그러면 모양이나 프레임 레이트가 다른 클립은 해상도가 다른 영상 두 개를 합치는 방법에서처럼 처리됩니다. 슬롯의 fit(기본값 cover)이 클립이 프레임을 채우는 방식을 정하고, 프레임 레이트가 다른 클립은 프레임을 반복하거나 버리며 output_fps_resamples_sources 경고가 붙습니다.

대신 두 번째 영상을 첫 번째 영상 위에 겹쳐 보여 줄 수 있나요?

Sume의 미디어 도구로는 할 수 없습니다. 삽입은 클립을 차례로 재생하며, 소스 두 개를 한 화면에 동시에 보여 주는 도구인 타임라인 합성은 영상 두 개가 아니라 스틸 하나와 영상 하나를 받습니다. 새 클립이 메인 영상의 소리를 멈추지 않고 그 위에서 재생되어야 한다면 그것은 컷어웨이입니다. 토킹 헤드 영상에 B-roll 넣기를 참고하세요. 스틸 이미지를 넣으려면 영상의 특정 시간에 이미지 넣는 방법을 참고하세요.

비용은 얼마이고, 한도는 어떻게 되나요?

오디오 분리는 Job당 $0.01, 렌더는 출력 분당 $0.10이며, 기본적으로 5.5% 에이전트 수수료가 더해집니다. 렌더는 ceil(audio.duration_seconds / 60)분을 예약하므로, 70초짜리 예제는 올림해서 이 분을 예약합니다. 과금되지 않는 POST /v1/timeline-1.0/plan으로 타임라인 문서를 먼저 확인하세요. 이 검사는 렌더링 전에 타임라인 검증하기에서 다룹니다.

  • 출력 길이는 1–1,800초이며, 슬롯 하나는 최소 0.2초입니다.
  • 현재 코드에서 오디오 분리와 렌더는 300 MiB가 넘는 소스 파일을 모두 source_too_large로 거부합니다.
  • 렌더 한 번에는 오디오 part를 최대 20개까지 넣을 수 있고, part 길이의 합은 audio.duration_seconds 이상이어야 합니다.
  • 오디오 분리 한 번의 출력은 최대 900초입니다. 메인 영상이 더 길면 range를 지정한 분리가 두 번 필요하며, 이때 각 part의 source_in은 자기 파일의 시작부터 셉니다.
  • 오디오 트랙이 없는 클립은 분리 단계에서 detach_source_has_no_audio로 실패합니다. frames: false로 무료 검사를 하면 probe.has_audio를 미리 확인할 수 있습니다.
  • 현재 코드에서는 채널 수가 서로 다른 part가 거부됩니다(audio_parts_channel_mismatch). 한 영상이 모노라면 두 영상 모두 channels: "mono"로 분리하세요.

출처

관련 글

미디어 도구 카테고리의 다른 글

미디어 도구 글 전체 보기

작성자 Sume