# 분석과 편집 목록

> MCP 도구로 동영상을 장면별로 분석하고 검수하며, 무음을 감지하고 여러 녹화본을 동기화하고, 편집 결정 목록을 계획하고 렌더링합니다.

Source: https://nodaro.ai/ko/docs/mcp/tools/analysis-and-edl

**분석과 편집 목록 도구**는 기존 녹화본을 읽어 구조화된 데이터나 완성된 편집본으로 바꿉니다. `video_analysis`와 `video_audit`은 동영상을 다시 만들 수 있도록 장면별로 분석합니다. `silence_detect`와 `audio_sync`는 녹화본을 측정하고, `plan_edit`과 `apply_edl`은 녹취록으로 컷을 계획하고 렌더링합니다. `switch_cameras`는 누가 말하는지에 따라 컷마다 카메라를 고르고, `tighten_episode`는 팟캐스트 편집 전체를 한 번의 호출로 실행합니다. 모든 도구에는 `workflows:execute` 권한이 필요하며, 작업 ID를 반환합니다.

## `video_analysis`
동영상을 AI로 다시 만들 수 있도록 장면별로 분석합니다. [**동영상 분석**](https://nodaro.ai/docs/nodes/video/video-analysis) 노드와 같은 방식으로 작동합니다.

- **장면**은 자연스러운 경계에서 나뉘며 최대 8초입니다. 장면마다 이미지나 동영상을 하나씩 생성합니다.
- <strong>`visualResolved`</strong>는 각 장면을 그것만으로 이해할 수 있게 쓴, 프롬프트로 바로 쓸 수 있는 설명입니다. 이후 단계가 읽는 필드입니다.
- **각 장면**에는 샷 유형, 카메라 움직임, 오디오 레이어 목록도 있습니다. 대사는 말한 그대로 인용하고, 음악과 효과음은 생성할 수 있도록 묘사합니다. 목록이 비어 있으면 무음입니다.
- **슬롯**은 반복해서 나오는 인물, 사물, 장소입니다. 내 캐릭터로 바꿔 캐스팅할 수 있습니다.

**권한:** `workflows:execute`. **크레딧:** 동영상 길이에 따라 정해지며, 아래 표에 나와 있습니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `video_asset_id`, `video_url` 또는 `youtube_url` | string | **필수, 정확히 하나.** Nodaro 동영상 작업이나 업로드의 id, 직접 동영상 URL, 또는 YouTube 링크입니다. 최대 10분이며, 라이브 스트림은 안 됩니다. 소스가 없거나 2개이면 오류를 반환합니다. |
| `variations` | boolean | 옷 갈아입기, 꿈, 변장처럼 각 인물이나 사물의 다른 모습도 찾아내고, 모습마다 해당 장면에 연결합니다. 기본값은 `false`입니다. |
| `music_video` | boolean | 클립을 뮤직비디오로 다룹니다. 노래한 가사를 모두 대사로 받아 적습니다. 기본값은 `false`이며, 이때 화면 속 누구도 부르지 않는 노래의 보컬은 음악 레이어에 포함됩니다. |
| `translate_speech_to_english` | boolean | 말하거나 노래한 단어를 영어로 반환합니다. 기본값은 `false`로, 원래 언어를 유지합니다. |
| `translate_on_screen_text_to_english` | boolean | 간판, 자막, 제목을 영어로 반환합니다. 이 텍스트는 시각 프롬프트의 일부이므로, 다시 생성한 장면에는 영어 문구가 나옵니다. 이름은 원래 형태를 유지합니다. 기본값은 `false`입니다. |
| `analysis_focus` | string | 분석의 방향으로, 최대 2,000자입니다. 예: “제품 샷과 화면 속 텍스트에 집중”. |

**반환값:** 작업 ID입니다. 분석 결과인 `meta`, `slots`, `scenes`는 작업의 `output_data`에 있습니다.

이 도구는 항상 가장 정확한 등급인 **스마트** 분석을 실행하며, 등급이나 결과 전략 매개변수를 받지 않습니다. 아직 `llm_model`이나 `selection_mode`를 보내는 클라이언트도 스마트 분석을 받으며, 그 매개변수는 무시됩니다. 다른 등급은 [**동영상 분석**](https://nodaro.ai/docs/nodes/video/video-analysis) 노드와, MCP로 실행하는 워크플로, REST 경로에서 계속 사용할 수 있습니다.

가격은 길이 구간으로 정해집니다. 길이 구간은 60초, 180초, 360초, 600초 중 동영상이 들어가는 가장 작은 구간입니다. 60초, 180초, 360초 구간에는 각각 3초의 여유가 있으므로, 1:03 이하의 동영상에는 60초 구간 가격이 적용됩니다.

| 분석 | 60초 이하 | 180초 이하 | 360초 이하 | 600초 이하 |
| --- | --- | --- | --- | --- |
| 스마트 | 455 | 554 | 1,394 | 2,284 |

[`list_models`](https://nodaro.ai/docs/mcp/tools/models-and-credits#list_models)는 현재 가격을 반환합니다.

## `video_audit`
동영상을 분석 결과와 대조하며 다시 보고, 잘못된 부분을 고칩니다. 모든 수정은 검사를 거쳐 적용되고 보고되며, 고칠 수 없는 부분은 바꾸지 않고 표시만 합니다. [**AI 검수**](https://nodaro.ai/docs/nodes/video/ai-audit) 노드와 같은 방식으로 작동합니다.

**권한:** `workflows:execute`. **크레딧:** 길이에 따라 정해지며, 분석 결과를 전달하면 더 저렴합니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `video_url` | string | **필수.** 검수할 동영상입니다. |
| `analysis` | object | 이전 `video_analysis` 또는 `video_audit` 호출에서 받은 분석 결과로, 그대로 전달합니다. 없으면 도구가 먼저 빠른 분석을 실행하므로 비용이 더 듭니다. |

**반환값:** 작업 ID입니다. 작업의 `output_data`에 보고서가 들어 있습니다. 확인한 항목, 바뀐 내용, 해결되지 않고 남은 항목입니다.

| 실행 | 60초 이하 | 180초 이하 | 360초 이하 | 600초 이하 |
| --- | --- | --- | --- | --- |
| `analysis` 있음 | 237 | 319 | 730 | 1,181 |
| `analysis` 없음 | 436 | 523 | 1,296 | 2,114 |

## `silence_detect`
녹화본의 무음 구간을 오디오만으로 찾습니다. 녹취록도 화면도 쓰지 않습니다. [**무음 감지**](https://nodaro.ai/docs/nodes/audio/silence-detect) 노드와 같은 방식으로 작동합니다.

**권한:** `workflows:execute`. **크레딧:** 11크레딧입니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `audio_url` | string | **필수.** 오디오 또는 동영상 URL입니다. 어느 쪽이든 오디오 트랙을 읽습니다. |
| `threshold_db` | number | 무음으로 볼 수준(dBFS)으로, -90~0입니다. 기본값은 `-35`로, 음성에 알맞은 하한입니다. |
| `min_silence_ms` | integer | 보고할 가장 짧은 무음으로, 1~600,000ms입니다. 기본값은 `700`입니다. |
| `pad_ms` | integer | 각 구간 앞뒤로 남겨 두는 음성으로, 0~60,000ms입니다. 기본값은 `120`입니다. |

**반환값:** 작업 ID입니다. 결과는 `output_data.json`의 `{ ranges, durationMs }`입니다. `output_data` 전체가 아니라 이 객체를 `plan_edit`의 `silence`로 전달하거나, `ranges`로 편집 목록을 직접 작성하세요.

## `audio_sync`
카메라 파일과 메인 마이크처럼 한 대화를 담은 녹화본 2~6개의 시계가 얼마나 어긋나 있는지, 오디오를 비교해 측정합니다. [**오디오 동기화**](https://nodaro.ai/docs/nodes/audio/audio-sync) 노드와 같은 방식으로 작동합니다.

**권한:** `workflows:execute`. **크레딧:** 기준에 맞춰 정렬하는 녹화본 수에 따라, 소스 2개일 때 11크레딧부터 6개일 때 55크레딧까지입니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `sources` | array | **필수.** 녹화본 2~6개이며, 각각 고유한 id를 가진 `{ id, url }`입니다. 오디오 또는 동영상 URL입니다. |
| `reference` | string | 모든 오프셋의 기준이 되는 녹화본의 id입니다. 기본값은 첫 번째 녹화본입니다. |

**반환값:** 작업 ID입니다. 결과는 `output_data.json`의 `{ reference, offsets, notes }`이며, 각 오프셋에는 `sourceId`, `offsetMs`, `confidence`, `driftMsPerHour`가 있습니다. 기준 시계의 시간은 소스의 시간에 `offsetMs`를 더한 값입니다. 낮은 신뢰도와 시계 드리프트는 `notes`에 보고되며, 보정되지 않습니다.

## `plan_edit`
타이밍이 있는 녹취록을 녹화본의 편집 결정 목록으로 바꿉니다. 녹취록만 읽고 화면은 읽지 않습니다. [**편집 계획**](https://nodaro.ai/docs/nodes/video/edit-plan) 노드와 같은 방식으로 작동합니다.

**권한:** `workflows:execute`. **크레딧:** 3~1,664크레딧이며, 녹화본 길이, 모드, 등급에 따라 다릅니다. **Nodaro Cloud 전용.**

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `mode` | string | **필수.** `tighten`은 무음, 군말, 잘못 시작한 말을 컷 하나로 제거합니다. `clips`는 공유할 짧은 클립을 찾아 클립마다 편집 목록을 하나씩 만듭니다. `chapters`는 제목과 함께 챕터를 표시합니다. `trailer`는 가장 인상적인 순간으로 20~40초짜리 티저를 하나 만듭니다. |
| `transcript` | object | **필수.** [`transcribe`](https://nodaro.ai/docs/mcp/tools/audio#transcribe)에서 받은 단어 단위 녹취록입니다. |
| `sources` | array | **필수.** 녹화본 1~6개로, 각각 `url`이 있습니다. 선택 사항으로 `id`, `kind`(`video` 또는 `audio`), `role`(`master-audio`, `camera`, `wide` 또는 `screen`), `speakers`, 마스터 시계 기준의 `offset_ms`를 넣을 수 있습니다. `id`는 `audio_sync`에서 녹화본에 붙인 id로, 최대 200자입니다. `offsets`를 쓸 때는 필수입니다. |
| `offsets` | object 또는 string | `audio_sync` 작업의 `output_data.json`입니다. 도구는 측정된 각 오프셋을 같은 `id`의 소스에 마스터 시계 기준으로 기록합니다. 소스에 직접 넣은 `offset_ms`가 우선합니다. |
| `transcript_source_id` | string | 녹취록을 만든 소스의 `id`로, 알고 있을 때 넣으세요. 그러면 도구가 이 소스가 마스터 시계에 맞는지 확인합니다. |
| `silence` | object | `silence_detect`의 결과입니다. |
| `plan_tier` | string | `economy`, `standard`(기본값), `premium` 중 하나입니다. |
| `count` | integer | `clips`용: 클립 수로, 1~50입니다. |
| `target_duration_sec` | integer | `clips`용: 각 클립의 길이로, 5~180초입니다. |
| `target_aspect` | string | `16:9`, `9:16`, `1:1`, `4:5` 중 하나입니다. |
| `platform`, `instructions`, `style_guide` | string | 클립을 게시할 곳과 자유 형식 안내입니다. |

마스터는 `master-audio` 역할을 가진 소스이며, 없으면 첫 번째 소스입니다. 오프셋 때문에 컷의 싱크가 어긋나게 되면, 도구는 요금을 청구하기 전에 호출을 거부합니다.

- 소스에 `offset_ms`가 없고, `audio_sync`가 그 소스를 측정하지 않았거나 신뢰도 0.5 미만으로 약하게 맞췄습니다. 그 소스의 `offset_ms`를 설정하세요.
- 마스터의 `offset_ms`가 0이 아닙니다.
- 다른 소스는 측정된 오프셋을 쓰지만, `audio_sync`가 마스터를 측정하지 않았거나 약하게 맞췄습니다.
- `offsets`가 `audio_sync`의 결과가 아니거나, 짝지을 `id`가 없는 소스가 있습니다.
- 녹취록을 만든 소스가 마스터 시계에 맞지 않습니다. 마스터로 녹취록을 만들거나, 그 소스에 `master-audio` 역할을 주세요.

**반환값:** 작업 ID입니다. 플랜은 작업의 `output_data`에 있으며, 바로 `apply_edl`에 쓸 수 있습니다.

## `switch_cameras`
멀티캠 편집의 각 컷에 어느 카메라를 보여 줄지, 누가 말하는지에 따라 고릅니다. [**카메라 전환**](https://nodaro.ai/docs/nodes/video/camera-switch) 노드와 같은 방식으로 작동합니다. 소리는 절대 바뀌지 않습니다.

**권한:** `workflows:execute`. **크레딧:** 녹화본 길이나 카메라 수와 관계없이 실행마다 정해진 가격입니다. **Nodaro Cloud 전용.**

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `edl` | object 또는 string | **필수.** `plan_edit`에서 받은 편집 목록 하나입니다. 클립 세트라면 호출마다 클립 하나의 편집 목록을 넘기세요. |
| `transcript` | object 또는 string | **필수.** 화자 라벨이 있는 단어 단위 녹취록으로, 화자 감지를 켠 [`transcribe`](https://nodaro.ai/docs/mcp/tools/audio#transcribe)에서 받습니다. |
| `speaker_map` | object | 각 화자 라벨을 그 화자의 카메라에 해당하는 EDL 소스 id에 대응시킵니다. `""`는 그 화자에게 자기 카메라가 없다는 뜻입니다. |
| `speaker_names` | object | 각 화자 라벨을 표시 이름에 대응시킵니다. |
| `min_shot_ms`, `lead_ms`, `max_shot_ms`, `wide_every`, `layout_hints` | | [**카메라 전환**](https://nodaro.ai/docs/nodes/video/camera-switch#settings) 노드의 샷 설정입니다. |

`speaker_map`에 없는 화자는 `speakers` 목록에 그 화자를 적은 소스로 가고, 없으면 `wide` 소스로, 그것도 없으면 화면이 있는 아무 카메라로 갑니다. `""`로 설정한 화자는 `speakers` 목록을 건너뜁니다. 같은 카메라에 새 화자가 나와도 그 화자만의 이름 붙은 세그먼트가 생깁니다.

다음 두 경우에는 요금을 청구하기 전에 호출이 거부됩니다. 첫째는 화자 라벨이 없는 녹취록입니다. 둘째는 클립 세트, 챕터 플랜, 렌더링된 출력의 편집 목록처럼, 마스터 시계 기준의 편집 하나가 아닌 `edl`입니다.

**반환값:** 작업 ID입니다. `output_data.json`은 `apply_edl`에 쓸, 카메라가 전환된 편집 목록이고, `output_data.transcript`는 화자 이름이 들어간 녹취록입니다.

## `apply_edl`
편집 결정 목록을 완성된 편집본으로 렌더링합니다. [**EDL 적용**](https://nodaro.ai/docs/nodes/video/apply-edl) 노드와 같은 방식으로 작동하며, 분당 가격도 그 노드 페이지에 나와 있습니다.

**권한:** `workflows:execute`. **크레딧:** 렌더링된 출력 1분당 가격이 `quality`의 요율로 매겨집니다. 동영상이든 오디오든 `proxy` 미리 보기에는 별도의 더 낮은 요율이 적용됩니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `edl` | object 또는 string | **필수.** `plan_edit`의 플랜, 또는 직접 작성한 목록입니다. `segments`는 `master` 시계 기준의 정수 밀리초이며, 각 세그먼트는 EDL의 `sources` 중 하나를 id로 지정합니다. 동영상 렌더링에는 모든 세그먼트에 동영상 소스가 필요합니다. |
| `sources` | array | EDL의 소스 URL을 같은 순서로 대체하는 URL입니다. |
| `output` | string | `video`(기본값) 또는 `audio`입니다. |
| `quality` | string | `final`(기본값), 또는 빠른 720p 미리 보기용 `proxy`입니다. 미리 보기는 항상 비공개이며 미리 보기로 표시됩니다. |
| `clip_key` | string | `clips` 플랜의 클립용입니다. 그 클립의 `"<first inMs>-<last outMs>"`입니다. 결과에 `output_data.clipKey`로 돌아오므로, 클립 묶음의 각 렌더를 해당 클립과 짝지을 수 있습니다. |
| `crossfade_ms` | number | 자체 전환이 없는 경계에 넣는 크로스페이드로, 최대 5,000ms입니다. 기본값은 `0`으로, 하드 컷입니다. |
| `transcript` | object | 결과와 맞도록 컷에 맞춰 다시 매핑할 녹취록입니다. |

렌더링 한 번으로 최대 180분까지 만들 수 있습니다. 형식이 잘못되었거나 너무 긴 목록은 아무것도 실행되기 전에 거부되며, 문제가 된 세그먼트와 어긴 규칙을 알려 줍니다.

**반환값:** 작업 ID입니다. 렌더링된 파일이 작업의 결과이며, `output_data.quality`가 미리 보기인지 최종본인지 알려 줍니다.

## `tighten_episode`
팟캐스트나 인터뷰 녹화본을 한 번의 호출로 다듬습니다. 화자 레이블과 함께 녹화본의 녹취록을 만들고, 무음을 찾고, 다듬은 편집본을 계획하고 렌더링합니다. 자막과, 목소리 아래로 볼륨이 낮아지는 배경 음악도 추가할 수 있습니다. [**에피소드 다듬기**](https://nodaro.ai/docs/nodes/video/tighten-episode) 노드처럼 동작합니다.

**권한:** `workflows:execute`. **크레딧:** 각 단계의 가격에 실행마다 고정 수수료가 더해집니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `media_url` | string | **필수.** 녹화본으로, 최대 3시간의 동영상 또는 오디오 URL입니다. |
| `output` | string | `video`(기본값) 또는 `audio`입니다. 오디오 녹화본은 항상 오디오 에피소드가 됩니다. |
| `framing_aspect` | string | **화자 뷰**로 동영상 에피소드를 이 형태에 맞게 프레이밍합니다. **화자 뷰**는 화면의 화자 위에 자동 박스를 배치합니다. `16:9`, `9:16`, `1:1` 또는 `4:5`입니다. 프레이밍하지 않으려면 생략하세요. |
| `framing_layout` | string | `framing_aspect`를 지정했을 때의 레이아웃입니다. `auto`(기본값), `single`, `side-by-side`, `stacked`, `grid` 또는 `pip`입니다. 그 형태에서 그릴 수 없는 레이아웃은 가장 가까운 레이아웃으로 바뀝니다. |
| `captions` | boolean | 동영상 에피소드에 자막을 입힙니다. 기본값은 `true`입니다. |
| `caption_style` | string | `subtitle`, `word-highlight`(기본값), `karaoke`, `tiktok-words`, `word-pop` 또는 `bouncy`입니다. |
| `review_before_render` | boolean | 검토용 빠른 미리 보기에서 멈춥니다. 기본값은 `false`입니다. |
| `plan_tier` | string | 편집 품질로, `economy`, `standard`(기본값) 또는 `premium`입니다. |
| `instructions` | string | 플랜에 대한 편집 지시로, 최대 4,000자입니다. |
| `style_guide` | string | 플랜에 대한 스타일 가이드로, 최대 4,000자입니다. |
| `music_url` | string | 배경 음악입니다. 목소리 아래로 볼륨이 낮아지고 에피소드와 함께 끝납니다. |
| `music_duck_amount` | number | 말하는 동안 음악 볼륨을 얼마나 낮출지로, 0~100입니다. 기본값은 `75`입니다. |
| `client_request_id` | string | 재시도 토큰으로, 문자, 숫자, `_ - . :`로 된 8~128자입니다. 시간 초과 뒤 다시 시도할 때 재사용하면 실행이 두 번 시작되거나 청구되지 않습니다. |

**반환값:** 작업 ID입니다. 에피소드는 `output_data.videoUrl` 또는 `output_data.audioUrl`에, 편집 내용은 `output_data.json`에 있습니다. 셀프 호스팅 설치에서는 이 도구에 [Nodaro Cloud 연결](https://nodaro.ai/docs/self-hosting/cloud-connect)이 필요하며, 연결이 없으면 바로 거부됩니다.

## `continue_use_case`
`tighten_episode` 실행을 새 작업으로 이어서 진행합니다.

**권한:** `workflows:execute`. **크레딧:** 아래 모드에 따라 다릅니다.

| 매개변수 | 타입 | 설명 |
| --- | --- | --- |
| `job_id` | string | **필수.** 이전 실행의 작업 ID입니다. |
| `mode` | string | **필수.** `from-failed` 또는 `render-final`입니다. |
| `edited_edl` | object | `render-final`에서만 씁니다. 내가 검토한 편집 목록입니다. |
| `client_request_id` | string | `tighten_episode`와 같은 재시도 토큰입니다. |

- **`from-failed`**는 실패한 실행에서 끝나지 않은 단계만 다시 실행합니다. 끝난 단계는 유지되며 다시 청구되지 않습니다. 실패한 실행의 수수료가 환불되었으므로 수수료는 다시 청구되며, 전체적으로 한 번만 적용됩니다.
- **`render-final`**은 `review_before_render`로 만든 미리 보기 뒤에 최고 품질 에피소드를 렌더링합니다. 미리 보기의 설정과, `edited_edl`을 넘겼다면 그것을 사용합니다. 수수료는 청구되지 않습니다.

**반환값:** 새 작업 ID입니다. 거부되면 이어서 진행 코드와 함께 도구 오류로 반환됩니다. `already_running`과 `continuation_superseded`는 따라갈 작업이나 대신 이어서 진행할 작업을 알려 줍니다. `continuation_settling`은 잠시 뒤에 다시 시도하라는 뜻입니다.

## 녹취록으로 녹화본 편집
### 녹취록 만들기
녹화본에 [`transcribe`](https://nodaro.ai/docs/mcp/tools/audio#transcribe)를 호출하세요. 단어 타이밍은 작업의 `output_data.json.words`에 있습니다.

### 무음 찾기
`silence_detect`를 호출하세요. 이 단계는 선택 사항이지만 `tighten`에 도움이 됩니다.

### 컷 계획
녹취록, 무음 구간, 녹화본을 넣어 `tighten`, `clips`, `chapters`, `trailer` 모드 중 하나로 `plan_edit`을 호출하세요. 플랜을 확인하고 필요하면 수정하세요.

### 렌더링
플랜으로 `apply_edl`을 호출하세요. 먼저 `quality: "proxy"`로 빠르게 미리 보세요.

팟캐스트나 인터뷰라면 [`tighten_episode`](#tighten_episode)가 이 단계를 한 번의 호출로 실행합니다. `podcast-editing` 레시피는 어시스턴트에게 같은 단계를 안내합니다. [콘텐츠 레시피](https://nodaro.ai/docs/mcp/recipes)를 참조하세요. 카메라 여러 대와 별도의 마이크로 녹화했다면 먼저 `audio_sync`를 실행하고, 각 소스의 `offset_ms`를 `plan_edit`에 전달하세요.

## 자주 묻는 질문

### video_analysis는 무엇을 반환하나요?

동영상을 장면별로 나눈 분석입니다. 각 장면은 최대 8초이며, 프롬프트로 바로 쓸 수 있는 시각 설명, 샷 유형, 카메라 움직임, 오디오 레이어를 담습니다. 반복해서 나오는 인물, 사물, 장소는 다른 캐릭터로 캐스팅할 수 있는 슬롯으로 정리됩니다.

### video_analysis로 분석할 수 있는 동영상 길이는 어느 정도인가요?

Nodaro id, 직접 URL, YouTube 링크로 최대 10분까지입니다. YouTube 라이브 스트림은 거부됩니다. 가격은 동영상이 네 가지 길이 구간 중 어디에 속하는지에 따라 다릅니다.

### MCP로 팟캐스트 녹화본을 다듬으려면 어떻게 하나요?

녹화본으로 tighten_episode를 호출하세요. 녹취록 생성, 무음 감지, 컷 계획, 렌더링을 작업 하나로 처리합니다. 각 단계를 직접 제어하려면 transcribe, silence_detect, tighten 모드의 plan_edit, apply_edl을 직접 실행하세요.

### EDL은 무엇인가요?

편집 결정 목록입니다. 재생 순서대로 나열한 세그먼트 목록이며, 각 세그먼트는 소스 녹화본의 시간 구간을 지정합니다. apply_edl은 이 목록을 완성된 편집본으로 렌더링합니다.
