# 화자별 화면 배치

> 팟캐스트나 인터뷰 녹화 전체를 아무것도 자르지 않고 노드 하나로 화자별로 프레이밍합니다. 카메라가 여러 대면 각 화자를 자신의 카메라로 보여 줍니다.

Source: https://nodaro.ai/ko/docs/nodes/video/speaker-layout

**화자별 화면 배치** 노드는 녹화 전체를 한 번에 화자별로 프레이밍합니다. 아무것도 자르지 않으므로 동영상은 녹화와 길이가 같습니다. 카메라가 한 대면 각 화자를 차례로 프레이밍합니다. 한 대화를 여러 카메라로 찍었다면 각 화자를 자신의 카메라로 보여 줍니다.

내부에서 노드는 직접 연결해 만들 수 있는 것과 같은 단계를 실행합니다. 화자 레이블과 단어 타이밍이 있는 [음성 텍스트 변환](https://nodaro.ai/docs/nodes/audio/transcribe)과, 녹화 전체에 대한 [화자 뷰](https://nodaro.ai/docs/nodes/video/speaker-view)입니다. 화자 뷰는 화면의 각 화자에게 박스를 두고, 말하는 사람으로 전환합니다. 각 단계는 자체 작업으로 실행되므로, 긴 녹화, 취소, 실패는 직접 만든 워크플로에서와 똑같이 동작합니다.

화자별 화면 배치는 화자 뷰로 렌더링하며, 화자 뷰는 Nodaro Cloud에서 실행됩니다. 셀프 호스팅 설치에서는 **연동 › nodaro.ai**에서 또는 API 키로 [설치를 Nodaro Cloud에 연결](https://nodaro.ai/docs/self-hosting/cloud-connect)하세요. 연결이 없으면 노드가 제공되지 않으며, 실행은 아무것도 시작되기 전에 거부됩니다.

## 사용 시기
- 두 사람이 나오는 동영상 팟캐스트 전체를 화자별로 프레이밍한 세로 버전으로 만들 때.
- 아무것도 자르지 않고 각 화자가 자신의 카메라에 나오는 멀티캠 인터뷰를 만들 때.
- 패널 토론 녹화를 모든 화자를 박스에 담은 정사각형이나 `4:5` 버전으로 만들 때.

녹화도 잘라 내려면, 예를 들어 무음과 필러 단어를 없애려면 프레이밍을 선택한 [에피소드 다듬기](https://nodaro.ai/docs/nodes/video/tighten-episode)를 쓰세요. 짧은 클립에는 [클립 세트](https://nodaro.ai/docs/nodes/video/clip-pack)를 쓰세요.

## 빠른 시작
### 노드 추가
캔버스에서 Tab을 누르고 **동영상 › 팟캐스트 › 화자별 화면 배치**를 선택하세요.

### 녹화 연결
동영상을 **녹음** 입력에 연결하세요. 예를 들어 [동영상 업로드](https://nodaro.ai/docs/nodes/video/upload-video) 노드에서 연결합니다. 녹화는 최대 3시간까지 가능하며, 소리가 있어야 합니다.

### 비율과 레이아웃 선택
먼저 **비율**을 선택한 다음 **레이아웃**, **전환**, **강조**를 선택하세요. 기본값은 `9:16`, **세로 배치**, **컷**, **스케일**입니다.

### 실행
노드에서 **실행**을 클릭하세요. 노드는 프레이밍된 동영상과 화자 뷰가 그린 편집을 돌려줍니다.

Workflow: 화자별 화면 배치는 두 사람 팟캐스트 전체를 화자를 세로로 쌓아 9:16으로 프레이밍하고, 동영상을 다음 노드로 넘깁니다.

- 동영상 업로드 → 화자별 화면 배치 (녹음)
- 화자별 화면 배치 → SNS 포맷 (동영상)

## 입력
| 입력 | 받는 것 | 하는 일 |
| --- | --- | --- |
| **녹음** | 동영상 | 녹화. 최대 3시간이며 소리가 있어야 합니다. 필수입니다. [여러 카메라](#several-cameras)를 쓸 때는 각 카메라의 녹음을 여기에 연결하세요. |
| **마스터 오디오** | 오디오 | 여러 카메라를 쓸 때: 믹서나 녹음기의 트랙으로, 동영상의 소리가 됩니다. 선택 사항입니다. |

다음은 아무것도 청구되기 전에 거부됩니다.

- **이미 폭이 좁은 동영상.** 녹음이 하나일 때, 선택한 비율만큼 좁거나 더 좁은 동영상에는 화자를 따라 움직일 여분의 폭이 없습니다. 더 좁은 비율을 선택하거나 더 넓은 동영상을 쓰세요.
- **화면이 없는 녹음.** 프레이밍할 것이 없습니다.
- **읽을 수 없는 녹음.**

**녹음**에 녹음을 여러 개 연결하면 첫 번째 녹음이 카메라 1이 됩니다. 설정 패널에서 녹음을 드래그해 순서를 바꾸세요.

## 출력
| 출력 | 전달하는 것 |
| --- | --- |
| **동영상** | 프레이밍된 동영상. 동영상이 자신의 길이를 담고 있으므로, [동영상 자르기](https://nodaro.ai/docs/nodes/video/trim-video)나 [동영상 합치기](https://nodaro.ai/docs/nodes/video/combine-videos)처럼 받은 것의 길이로 가격이 정해지는 노드는 프레이밍된 동영상의 길이로 가격이 정해집니다. |
| **편집(EDL)** | 화자 뷰가 그린 편집. 녹화 전체와 각 화자의 박스가 들어 있습니다. 다른 렌더링, 예를 들어 다른 비율의 두 번째 [화자 뷰](https://nodaro.ai/docs/nodes/video/speaker-view)에 연결하세요. 미디어가 아니라 데이터이므로 오디오, 동영상, 이미지만 받는 입력에는 연결되지 않습니다. 그곳에는 **동영상** 출력을 연결하세요. |

## 설정
| 설정 | 하는 일 |
| --- | --- |
| **비율** | 동영상의 비율: `16:9`, `9:16`(기본값), `1:1`, `4:5`. |
| **레이아웃** | 선택한 비율에서 화자 뷰가 그리는 레이아웃: **자동**, **단일**, **나란히**, **세로 배치**(기본값), **그리드**, **화면 속 화면**. 그 비율에서 그리지 않는 레이아웃은 그리는 레이아웃으로 바뀝니다. |
| **전환** | 화자가 바뀔 때마다의 전환. 기본값은 **컷**입니다. 레이아웃에서 쓸 수 없는 전환은 화자 뷰에서처럼 이유와 함께 회색으로 표시됩니다. |
| **강조** | 말하는 사람을 표시하는 방식: **없음**, 또는 **스케일**(기본값), **테두리**, **어둡게**를 하나씩 또는 함께. |
| **프레이밍 방식** | **자동 (얼굴 따라가기)**(기본값), **균등 분할**, **얼굴 따라가기**. [얼굴 따라가기](#following-faces)를 참고하세요. |
| **렌더링 전에 검토** | 기본값은 꺼짐입니다. 켜면 실행이 빠른 미리 보기에서 멈춥니다. [렌더링 전에 검토](#review-before-render)를 참고하세요. |
| **카메라** | 녹음이 두 개 이상이거나 마스터 오디오가 있을 때 표시됩니다. [여러 카메라](#several-cameras)를 참고하세요. |

**크로스페이드** 전환은 항상 회색으로 표시되며, “녹화에서 잘려 나가는 구간이 없어 크로스페이드를 적용할 곳이 없습니다.”라는 이유가 붙습니다. **팬**과 **줌**은 각 화자의 자리를 고정하는 **나란히**, **세로 배치**, **그리드**에서 회색으로 표시됩니다. 노드나 API 요청이 회색 전환을 지정해도 컷으로 그려집니다.

화면의 각 화자는 자동 박스를 받습니다. 잠깐만 들리는 목소리, 즉 10초 미만이면서 대화의 5% 미만인 목소리는 자신의 박스를 받지 않습니다. 그래서 녹취록에 잘못 들어간 레이블이 화면의 일부를 차지하는 일이 없습니다.

### 얼굴 따라가기
**프레이밍 방식**은 화자의 박스를 어디서 가져올지 정합니다.

- **자동 (얼굴 따라가기).** 화자 프레임을 쓸 수 있으면 얼굴을 따라가고, 쓸 수 없으면 균등 분할을 씁니다. 거부되지 않으며 추가로 청구되지도 않습니다. 예상치도 같은 규칙을 따릅니다.
- **균등 분할.** 화면의 각 화자가 화면을 똑같이 나눠 가집니다.
- **얼굴 따라가기.** [화자 프레임](https://nodaro.ai/docs/nodes/video/speaker-frames)이 각 얼굴을 추적하고, 화자 뷰가 그 얼굴을 따라갑니다. 화자 프레임은 샘플링한 1,000프레임 블록을 시작할 때마다 청구됩니다. 얼굴은 아직 화자와 연결되지 않습니다. 한 사람만 보이는 카메라는 따라가고, 여러 화자가 함께 쓰는 카메라는 균등 분할을 유지합니다.

화자 프레임을 쓸 수 없는 곳에서는 설정 패널에 프레이밍 방식이 나오지 않으며, **자동 (얼굴 따라가기)**는 균등 분할이 됩니다. 이때 **얼굴 따라가기**로 설정한 노드에는 안내가 표시되며, 그 실행은 아무것도 청구되기 전에 `403 node_not_available`로 거부됩니다.

### 여러 카메라
각 카메라의 녹음을 **녹음**에 연결하세요. 믹서나 녹음기의 트랙이 있으면 **마스터 오디오**에 연결하세요. 그러면 실행은 [오디오 동기화](https://nodaro.ai/docs/nodes/audio/audio-sync)로 녹음을 맞추고, 소리를 녹취하고, [화자 맵](https://nodaro.ai/docs/nodes/audio/speaker-map)으로 각 화자가 어느 카메라에 잡히는지 알아냅니다. 카메라가 두 대 이상이면 [카메라 전환](https://nodaro.ai/docs/nodes/video/camera-switch)이 각 구간을 말하는 사람에게 둡니다. 그다음 화자 뷰가 각 카메라의 샷을 프레이밍합니다.

- **녹음.** 한 대화의 녹음을 최대 6개, 순서대로: 카메라 1, 카메라 2 등. 카메라는 최대 5개까지입니다. 여섯 번째 자리는 소리를 위한 자리로, 마스터 오디오나 소리만 있는 녹음 하나입니다.
- **마스터 오디오.** 동영상의 소리이자 녹음을 맞추는 기준 시계입니다. 마스터 오디오가 없으면 노드가 동영상 전체에 소리 하나를 고르므로, 소리가 카메라 마이크 사이를 오가지 않습니다.
- **와이드 카메라.** 모두가 보이는 카메라. 자신의 카메라가 없는 화자는 이 카메라로 보여 줍니다. 기본값은 없음입니다.
- **녹음이 이미 동기화됨.** 모든 녹음이 이미 하나의 시계를 공유하면 켜세요. 그러면 실행은 오디오 동기화 단계를 건너뜁니다.
- **누가 어느 카메라에 나오는지.** 기본적으로 화자 맵이 카메라 자체 마이크로 정합니다. 바꾸려면 화자를 카메라나 와이드 샷으로 설정하세요. 화자 1은 처음 들린 목소리, 화자 2는 그다음 목소리, 이런 식입니다.

실행 결과에는 누구를 어느 카메라에 두었는지가 녹음 맞추기와 맵의 메모와 함께 나옵니다. 화자 맵을 쓸 수 없는 곳에서는 편집기나 앱의 실행이 첫 번째 녹음만 읽으며, 설정 패널에 그렇게 표시됩니다.

## 렌더링 전에 검토
**렌더링 전에 검토**를 켜면 실행이 미리 보기에서 멈춥니다. 화자 뷰는 미리 보기를 더 낮은 미리 보기 요금으로 렌더링합니다. 미리 보기를 확인한 다음 노드에서 **최종 렌더링**을 클릭하세요. 미리 보기를 만들 때의 설정으로 동영상을 최고 품질로 렌더링합니다.

- **편집할 것은 없습니다.** 레이아웃에는 바꿀 컷이 없으므로 노드에 검토 편집기가 없습니다.
- **최종 렌더링은 렌더링만 합니다.** 음성 텍스트 변환, 화자 프레임, 그리고 여러 카메라일 때의 오디오 동기화, 화자 맵, 카메라 전환은 다시 실행되거나 청구되지 않습니다. 수수료도 없습니다.
- **누군가 검토해야 합니다.** 검토할 사람이 없는 워크플로나 앱 실행은 미리 보기에서 멈출 수 없으며 `preview_review_required`로 실패합니다. MCP 도구 `speaker_layout`과 `continue_use_case`는 그 도구를 호출하는 AI 어시스턴트가 검토합니다.
- **목록 항목마다 쓸 수는 없습니다.** **렌더링 전에 검토**를 켠 노드에 목록이 입력되면, 어떤 실행도 시작되기 전에 거부되며 아무것도 청구되지 않습니다. 끄면 목록이 항목마다 노드를 한 번씩 실행하며, 각각 자체 수수료가 있는 별도의 실행입니다.

## 실행이 실패하면
완료된 단계는 완료된 상태로 남습니다. 녹취록, 녹음 맞추기, 카메라 맵 같은 결과는 유지되며 다시 청구되지 않습니다. 노드에서 **계속**을 누르세요. 실패한 단계와 그 뒤의 단계만 다시 실행됩니다. 실패한 실행의 수수료는 환불되고 **계속**이 다시 예약하므로, 한 실행의 수수료는 한 번만 청구됩니다.

## 크레딧
화자별 화면 배치는 각 단계를 그 단계가 대신하는 노드와 같은 요금으로 청구하고, 실행마다 소액의 수수료를 더합니다. 노드는 수수료를 포함한 전체 예상치를 실행 전에 보여 줍니다.

| 단계 | 가격 |
| --- | --- |
| 음성 텍스트 변환, ElevenLabs STT | 실행당 25크레딧 |
| 화자 뷰 | 레이아웃에 따라 녹화 1분당 11~14크레딧. 미리 보기는 1분당 3~4크레딧입니다. [화자 뷰](https://nodaro.ai/docs/nodes/video/speaker-view#credits)를 참고하세요. |
| 화자 프레임, 프레이밍이 얼굴을 따라갈 때 | 샘플링한 1,000프레임 블록을 시작할 때마다 청구되며, 실행 합계를 한 번만 올림합니다. 녹음이 하나면 동영상 전체를 초당 2프레임으로 샘플링합니다. [화자 프레임](https://nodaro.ai/docs/nodes/video/speaker-frames#credits)을 참고하세요. |
| 오디오 동기화, 여러 카메라일 때 | 소리에 맞추는 녹음 하나당 11크레딧. 녹음이 이미 동기화되어 있으면 들지 않습니다. |
| 화자 맵, 여러 카메라일 때 | 실행당 고정 가격 하나. [화자 맵](https://nodaro.ai/docs/nodes/audio/speaker-map#credits)을 참고하세요. |
| 카메라 전환, 카메라가 두 대 이상일 때 | 실행당 고정 가격 하나. [카메라 전환](https://nodaro.ai/docs/nodes/video/camera-switch#credits)을 참고하세요. |

- **실행당 수수료**는 실행마다 한 번 청구됩니다. 검토 뒤의 **최종 렌더링**에는 수수료가 다시 청구되지 않습니다.
- **목록은 각 항목을 별도의 실행으로 처리하며,** 각각 자체 수수료가 있습니다.
- **청구는 프레이밍된 동영상 자체의 분 단위로 이루어지며,** 예상치를 기준으로 하지 않습니다.

### 실행 전 예상치
예상치는 화자 뷰를 녹화의 전체 길이, 즉 만들어질 동영상의 길이로 계산합니다. 레이아웃은 실행 전에 알 수 없으므로 예상치는 화자 뷰의 더 높은 요금을 씁니다. 화면에 화자가 최대 두 명이고 줌이 없는 녹화는 더 낮은 요금으로 청구됩니다. 길이를 알 수 없는 녹화는 상한인 180분으로 예상합니다. 여러 카메라일 때 화자 뷰는 소리의 길이, 즉 마스터 오디오의 길이, 없으면 가장 긴 녹음의 길이로 계산합니다.

## 팁
- **자동 프레이밍을 유지하세요.** **자동 (얼굴 따라가기)**는 가능하면 얼굴을 따라가고, 불가능하면 추가 비용이 들지 않습니다.
- **긴 녹화는 검토하세요.** **렌더링 전에 검토**를 켜고, 최고 품질 렌더링에 비용을 쓰기 전에 미리 보기를 확인하세요.
- **편집을 다시 쓰세요.** **편집(EDL)** 출력을 두 번째 화자 뷰에 연결하면 같은 프레이밍을 다른 비율로 렌더링할 수 있습니다.
- **자르기와 프레이밍을 함께 하세요.** 무음과 필러 단어도 없애려면 프레이밍을 선택한 [에피소드 다듬기](https://nodaro.ai/docs/nodes/video/tighten-episode)를 쓰세요.

## 문제 해결
| 문제 | 해결 방법 |
| --- | --- |
| 동영상 폭이 너무 좁아 실행이 거부됩니다 | 동영상이 이미 비율만큼 좁거나 더 좁습니다. 더 좁은 **비율**을 선택하거나 더 넓은 동영상을 쓰세요. |
| 실행이 시작되기 전에 거부됩니다 | 녹화가 동영상이고, 길이가 최대 3시간이며, 소리가 있는지 확인하세요. |
| 첫 번째 녹음만 쓰였습니다 | 화자 맵을 쓸 수 없으므로 노드가 첫 번째 녹음만 읽습니다. 설정 패널에 그렇게 표시됩니다. |
| **얼굴 따라가기**가 `403 node_not_available`로 거부됩니다 | 화자 프레임을 쓸 수 없습니다. **균등 분할** 또는 **자동 (얼굴 따라가기)**를 선택하세요. |
| 노드가 `preview_review_required`로 실패합니다 | 미리 보기를 검토할 사람이 없는 실행이었습니다. API, 트리거, 검토할 사람이 없는 앱에서 실행할 때는 **렌더링 전에 검토**를 끄세요. |
| 한 단계가 실패했습니다 | 노드에서 **계속**을 누르세요. 완료된 단계는 결과를 유지하며 다시 청구되지 않습니다. |
| 셀프 호스팅 설치에 노드가 없습니다 | 설치를 Nodaro Cloud에 연결하세요. [Nodaro Cloud에 연결](https://nodaro.ai/docs/self-hosting/cloud-connect)을 참고하세요. |

## API에서 사용
`POST /v1/speaker-layout`은 실행을 시작하고 `jobId`와 `executionId`를 담아 `202`로 응답합니다. 본문은 `mediaUrls`(동영상 녹음 하나, 또는 한 대화의 녹음 최대 6개의 목록)와, 선택적으로 `masterAudioUrl`, `cameras`, `targetAspect`, `layout`, `switchType`, `emphasisStyle`, `framingSource`, `reviewBeforeRender`를 받습니다. 작업은 `GET /v1/jobs/:id/status`로 확인하세요.

- `cameras`는 `wide`(녹음 번호 또는 `null`), `synced`(녹음이 이미 시계를 공유하면 `true`), 그리고 화자 번호를 녹음 번호에 연결하는 `speakerCameras`를 받습니다. `0`은 와이드 샷을 뜻합니다.
- `framingSource`는 `"auto"`, `"static"`, `"tracking"` 중 하나입니다. 생략하면 `"auto"`입니다. `emphasisStyle`은 `"none"`, 또는 `"scale"`, `"border"`, `"dim"`을 `"+"`로 이은 값입니다.
- 작업의 `output_data`에는 프레이밍된 동영상(`videoUrl`), 실행이 길이를 알 때의 초 단위 길이(`durationSec`), 편집(`json`), 녹취록, `quality`(미리 보기는 `proxy`, 그 외에는 `final`)가 들어 있습니다. 녹음이 여러 개인 실행에는 누가 어느 카메라에 나오는지에 대한 보고인 `cameras`가 더해집니다. 실패한 실행은 실패한 단계를 `failedStep`에 표시합니다.
- `Idempotency-Key` 헤더를 보내면 같은 요청의 재시도가 같은 `jobId`와 `"deduped": true`로 응답하고 아무것도 시작하지 않습니다.
- `POST /v1/speaker-layout/estimate`는 같은 본문을 받아 아무것도 시작하지 않고 `{ data: { totalCredits, stepsCredits, feeCredits, durationSec } }`로 응답합니다.
- `POST /v1/speaker-layout/continue`에 `{ jobId, mode }`를 보내면 실행을 이어 갑니다. `"mode": "from-failed"`는 실패한 실행이 완료하지 못한 부분을 실행합니다. `"mode": "render-final"`은 검토 실행의 최종본을 렌더링합니다. `editedEdl`은 받지 않으며, 보내면 `400 use_case_no_plan`으로 거부됩니다.

SDK(`client.edit.speakerLayout`, `client.edit.estimateSpeakerLayout`, `client.edit.continueUseCase`), CLI(`nodaro edit speaker-layout`, 예상치에는 `--estimate`, 그리고 `nodaro edit continue-use-case`), MCP 도구 `speaker_layout`, `estimate_use_case`, `continue_use_case`는 같은 라우트를 호출합니다. [단일 노드 실행](https://nodaro.ai/docs/developers/api/nodes), [SDK에서 편집](https://nodaro.ai/docs/developers/sdk/editing), [MCP 도구 레퍼런스](https://nodaro.ai/docs/mcp/tools)를 참조하세요.

## 자주 묻는 질문

### 화자별 화면 배치는 무엇을 하나요?

화자별 화면 배치는 녹화 전체를 받아 처음부터 끝까지 화자별로 프레이밍해 돌려줍니다. 아무것도 자르지 않으므로 동영상은 녹화와 길이가 같습니다. 내부에서 녹화를 녹취하고 화자 뷰로 각 화자를 프레이밍합니다.

### 화자별 화면 배치와 에피소드 다듬기는 무엇이 다른가요?

화자별 화면 배치는 녹화 전체를 그대로 두고 프레이밍만 합니다. 에피소드 다듬기는 무음, 필러 단어, 잘못 시작한 말도 잘라 냅니다. 녹화를 자르면서 프레이밍도 하려면 프레이밍을 선택한 에피소드 다듬기를 쓰세요.

### 화자별 화면 배치에서 여러 카메라를 쓸 수 있나요?

네. 한 대화의 녹음을 최대 6개 연결하고, 필요하면 마스터 오디오도 연결하세요. 실행은 녹음을 맞추고, 각 화자가 어느 카메라에 잡히는지 알아낸 뒤, 각 화자를 자신의 카메라로 보여 줍니다.

### 화자별 화면 배치는 크레딧이 얼마나 드나요?

각 단계는 그 단계가 대신하는 노드와 같은 요금으로 청구되고, 실행마다 소액의 수수료가 더해집니다. 노드는 실행 전에 전체 예상치를 보여 줍니다. 청구는 프레이밍된 동영상 자체의 분 단위로 이루어집니다.

### 최고 품질로 렌더링하기 전에 결과를 확인할 수 있나요?

네. 렌더링 전에 검토를 켜세요. 실행이 빠른 미리 보기에서 멈춥니다. 최종 렌더링을 누르면 같은 설정으로 최고 품질의 동영상을 렌더링하며, 실행당 수수료는 다시 청구되지 않습니다.
