스튜디오 프로덕션
무료 플랜 검증부터 프레임, 모션, 보이스, 사운드트랙 생성까지, 모든 스튜디오 프로덕션 도구의 매개변수를 권한, 견적과 함께 설명합니다.
Nodaro Cloud에서 사용할 수 있습니다
스튜디오 프로덕션 도구는 studio.nodaro.ai의 Nodaro Studio 편집기에서 열리는 영화를 만들고 변경합니다. 이 페이지에는 각 도구의 매개변수가 나와 있습니다. 작업 루프, 사용자와 대화할 때 쓰는 용어, 편집 오퍼레이션, 크레딧 사용 규칙은 스튜디오 프로덕션에서 설명합니다. 먼저 읽어 보세요.
스튜디오 프로덕션은 Nodaro Cloud 기능입니다. 이 기능이 없는 배포에서는 이 그룹의 모든 도구가 not_available로 응답합니다. 기능을 제안하기 전에 list_studio_productions를 호출해 확인하세요.
도구, 권한, 가격
| 도구 | 권한 | 크레딧 |
|---|---|---|
get_studio_production_skill | 없음 | 무료 |
validate_studio_plan | workflows:read | 무료 |
list_studio_productions | workflows:read | 무료 |
get_studio_production | workflows:read | 무료 |
plan_studio_export | workflows:read | 무료, 견적입니다 |
create_studio_production | workflows:write | 무료 |
import_studio_production | workflows:write | 무료 |
edit_studio_production | workflows:write | 무료 |
share_studio_production | workflows:write | 무료 |
clone_studio_production | workflows:write | 무료 |
describe_studio_production | workflows:write와 workflows:execute | LLM 실행 1회 |
generate_studio_still | workflows:write와 workflows:execute | 후보 이미지마다 |
generate_studio_keyframe | workflows:write와 workflows:execute | 이미지 1장 |
generate_studio_clip | workflows:write와 workflows:execute | 동영상 1개 |
new_studio_shot_from_frame | workflows:write와 workflows:execute | 프레임 추출 1회 |
voice_studio_shot | workflows:write와 workflows:execute | 텍스트 음성 변환 실행 1회 |
revoice_studio_clip | workflows:write와 workflows:execute | 보이스 교체 실행 1회 |
score_studio_production | workflows:write와 workflows:execute | 음악 생성 실행 1회 |
크레딧을 쓰는 도구와, 작업물을 볼 수 있는 사람을 바꾸는 share_studio_production에는 도구 정의에 확인 표시가 붙어 있습니다. 크레딧을 쓰는 도구는 8~128자의 재시도 토큰인 client_request_id를 받습니다. 시간 초과 후 같은 값을 다시 보내면 어떤 작업도 두 번 시작되거나 두 번 청구되지 않습니다.
계획과 읽기
get_studio_production_skill
어시스턴트가 프로덕션 작업을 시작하기 전에 읽는 가이드를 반환합니다. 가이드는 실제로 운영 중인 배포에서 생성됩니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
part | string | operating(기본값): 도구 맵, 작업 루프, 편집 오퍼레이션입니다. authoring: 플랜 형식입니다. catalog: 모든 피커, 모델, 옵션입니다. schema: 플랜의 JSON Schema입니다. |
validate_studio_plan
작성한 플랜을 무료로 검사하며, 아무것도 저장하지 않습니다. 또한 모든 cast 이름을 내 캐릭터, 장소, 오브젝트, 크리처와 대조합니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
plan | object | 필수. nodaro-studio-production 플랜입니다. |
반환값: valid, errors(각 오류에 해당 필드 이름 포함), warnings, 그리고 출연진 이름 중 몇 개가 내 라이브러리와 일치했는지 알려 주는 summary입니다. 오류를 고치고 valid가 true가 될 때까지 다시 호출하세요.
list_studio_productions
내 프로덕션을 최신순으로 나열합니다. ID, 이름, 버전, 썸네일, 공유 여부, 장면 수를 반환합니다. 대시보드와 마찬가지로 보관된 프로덕션은 표시되지 않습니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
limit | integer | 1~100입니다. 기본값은 25입니다. |
cursor | string | 이전 페이지의 nextCursor입니다. |
get_studio_production
프로덕션 하나를 반환합니다. 영화 룩, 출연진, 폴더, 컷, 휴지통, 실행 중인 항목, 그리고 타임라인 순서의 장면이 들어 있습니다. workflows:write 권한이 있으면 마지막으로 읽은 뒤 완료된 모든 작업을 먼저 반영하므로, 완료된 생성은 이 읽기를 통해 장면에 들어갑니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션 ID입니다. |
detail | string | summary(기본값): 개수와 각 장면의 현재 프레임입니다. full: 지난 모든 결과와 그 결과를 만든 맥락입니다. |
shot_id | string | 장면 하나만 읽습니다. 생성 후에 쓰는 가벼운 읽기입니다. |
reconcile | boolean | false면 완료된 작업을 반영하지 않고 읽습니다. 기본값은 true입니다. |
반환값: 프로덕션과, 아직 실행 중인 항목을 알려 주는 pending 블록입니다. 결과는 위치가 아니라 key, 작업 ID 또는 URL로 지정하세요.
plan_studio_export
프로덕션을 내보내는 단계를 순서대로, 크레딧 견적과 함께 반환합니다. 아무것도 시작하지 않고 아무것도 청구하지 않습니다. 사용자가 수락하기 전에 보여 주세요.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션 ID입니다. |
upscale | boolean | 비용이 큰 4K 처리를 추가합니다. 기본값은 false입니다. |
만들기와 변경
create_studio_production
내 Studio 프로젝트에 프로덕션을 만듭니다. 만든 프로덕션은 studio.nodaro.ai의 내 대시보드에 바로 나타납니다. 플랜을 함께 보내면 모든 장면, 출연진 연결, 영화 룩이 같이 들어가고, 플랜이 없으면 빈 프로덕션이 만들어집니다. 먼저 플랜을 검증하세요.
| 매개변수 | 타입 | 설명 |
|---|---|---|
plan | object | 검증된 플랜입니다. |
name | string | 플랜에 자체 제목이 없을 때 쓰는 이름입니다. 최대 200자입니다. |
import_studio_production
기존 프로덕션에 플랜의 장면을 추가하고, 새 출연진을 등록합니다. 프로덕션의 이름, 개요, 룩은 바꾸지 않습니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
plan | object | 검증된 플랜입니다. 이 값이나 plan_job_id를 보내세요. |
plan_job_id | string | 출력이 스튜디오 프로덕션 플랜인, 완료된 LLM 작업입니다. 아직 실행 중인 작업은 not_finished로 거부됩니다. |
가져오기 전후로 편집기 새로고침
프로덕션이 스튜디오 편집기에 열려 있으면, 편집기는 편집이 있을 때마다 잠시 뒤 자체 사본을 저장하면서 추가한 장면을 덮어씁니다. 가져오기 전과 후에 편집기를 새로고침해 달라고 사용자에게 요청하세요.
edit_studio_production
오퍼레이션 일괄 처리로 프로덕션을 변경합니다. 장면 이름 바꾸기, 타임라인 순서 바꾸기, 테이크 선택, 장면 모션 안의 샷 설정, 출연진 등록, 휴지통 비우기 같은 오퍼레이션이 있습니다. 오퍼레이션과 그 인수는 get_studio_production_skill이 part: "operating"으로 제공합니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
ops | array | 필수. 순서대로 적용되는 오퍼레이션 1~100개입니다. |
dry_run | boolean | 일괄 처리를 미리 봅니다. 각 오퍼레이션이 무엇을 할지, 어느 버전에 적용될지, 각 삭제를 복원할 수 있는지를 보여 줍니다. 아무것도 쓰지 않습니다. |
expected_version | integer | 일괄 처리를 작성할 때 기준으로 삼은 버전입니다. |
strict | boolean | 프로덕션이 바뀌었으면 리베이스하지 않고 충돌로 거부합니다. expected_version이 필요합니다. |
반환값: receipts입니다. 오퍼레이션마다 과거형으로 쓴 한 줄이 들어 있습니다. 일괄 처리는 한 단계로 적용됩니다. 오퍼레이션 하나가 거부되면 응답에 그 인덱스가 표시되고 아무것도 쓰이지 않습니다. 조금 이전 버전을 기준으로 작성한 일괄 처리도 적용되며, 이때 rebased: true가 표시됩니다.
share_studio_production
프로덕션을 공유 링크로 공개하거나 다시 비공개로 돌립니다. 링크가 있는 사람은 누구나 공유된 프로덕션을 읽을 수 있으므로 먼저 사용자에게 물어보세요. 공유 상태는 이 도구로만 바뀝니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
shared | boolean | 필수. true는 링크를 공개하고, false는 링크를 거둬들입니다. |
clone_studio_production
내 프로덕션이나 나와 공유된 프로덕션을 내 Studio 프로젝트로 복사합니다. 사본은 비공개로 시작하며, 그래프와 반영된 모든 결과를 함께 가져갑니다. 위험한 편집을 한 차례 하기 전에 사용하세요.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 복사할 프로덕션입니다. |
name | string | 사본의 이름입니다. 기본값은 원래 이름 뒤에 공백과 copy를 붙인 이름입니다. |
생성
생성은 작업 ID를 바로 반환합니다. 완료된 결과는 다음 get_studio_production 호출에서야 장면에 들어갑니다. get_job과 wait_for_job은 상태를 알려 줄 뿐 결과를 반영하지 않습니다.
describe_studio_production
개요를 디렉터에게 넘기면 디렉터가 장면, 출연진, 룩을 프로덕션에 써 넣습니다. 사용자에게 플랜이 아니라 이야기가 있을 때 사용하세요.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
brief | string | 필수. 이야기, 톤, 제약 조건입니다. |
llm_model | string | 필수. 프로덕션 초안을 쓰는 LLM으로, list_models에서 고릅니다. |
mode | string | append(기본값)는 장면을 추가합니다. replace는 프로덕션을 새로 씁니다. |
label | string | 실행의 이름입니다. |
client_request_id | string | 재시도 토큰입니다. |
generate_studio_still
장면에 이미 있는 내용, 즉 프롬프트, 레퍼런스, 출연진, 연출을 바탕으로 장면 프레임의 후보를 생성합니다. 다시 생성하면 테이크가 추가되며, 기존 테이크를 대체하지 않습니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
shot_id | string | 필수. 장면의 ID입니다. |
count | integer | 후보 수로, 1~10입니다. 기본값은 장면 자체의 설정입니다. |
overrides | object | 이번 호출에만 적용되는 설정입니다. |
dry_run | boolean | 모델과 가격을 반환하고 아무것도 시작하지 않습니다. credits: null은 무료가 아니라 가격을 알 수 없다는 뜻입니다. |
client_request_id | string | 재시도 토큰입니다. |
generate_studio_keyframe
계획된 프레임의 후보 하나를 생성합니다. 계획된 프레임은 사용자가 검토하고 수락하는 프레임으로, 장면의 프레임과는 다릅니다. 파생 프레임에는 수락된 부모 프레임이 필요합니다. 이 도구에는 견적이 없으며, dry_run: true는 거부됩니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
keyframe_id | string | 필수. 계획된 프레임입니다. |
expected_revision | integer | 필수. 내가 검토한 프레임 플랜의 리비전입니다. |
overrides | object | 모델, 화면 비율, 해상도입니다. 프롬프트와 레퍼런스는 플랜이 정합니다. |
client_request_id | string | 재시도 토큰입니다. |
후보가 반영되어도 수락되지 않으며, 다른 프레임이 시작되지도 않습니다. 검토한 뒤 edit_studio_production으로 수락하세요. 이 도구는 계획된 프레임을 지원하는 배포에서만 쓸 수 있습니다.
generate_studio_clip
장면의 프레임, 시작 프레임과 종료 프레임, 연출을 바탕으로 장면의 모션을 생성합니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
shot_id | string | 필수. 장면의 ID입니다. |
mode | string | 경로를 강제로 정합니다. start는 시작 프레임만, start-end는 시작 프레임과 종료 프레임을, references는 레퍼런스 미디어를 보냅니다. 생략하면 장면에 저장된 입력을 따릅니다. |
overrides | object | 이번 호출에만 적용되는 설정입니다. |
dry_run | boolean | 모델과 가격을 반환하고 아무것도 시작하지 않습니다. |
retake_result_key | string | 기존의 연결된 테이크를 원래 설정으로 리테이크합니다. mode와 overrides는 생략하세요. |
expected_input_hash | string | 리테이크를 제출할 때 필요합니다. 리테이크 견적에서 받은 해시입니다. |
client_request_id | string | 재시도 토큰입니다. |
연결된 테이크를 그대로 리테이크하려면 먼저 retake_result_key와 dry_run: true로 호출하고 가격과 inputHash를 확인하세요. 그런 다음 dry_run 없이 expected_input_hash와 새 client_request_id를 붙여 같은 호출을 제출하세요. 리테이크는 그 뒤로 플랜이 바뀌었더라도 테이크의 원래 설정과 시작·종료 프레임 이미지를 사용합니다. 이 기능을 지원하는 배포는 operations.retakeLinkedClips 기능을 알립니다.
new_studio_shot_from_frame
장면의 현재 모션에서 프레임 하나를 가져와 활용합니다. 호출은 추출이 끝날 때까지 기다린 뒤 업데이트된 프로덕션으로 응답합니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
shot_id | string | 필수. 프레임을 가져올 모션이 있는 장면입니다. |
target | string | new-shot(기본값)은 그 프레임으로 다음 장면을 엽니다. start-frame 또는 end-frame은 그 프레임을 이 장면의 시작 또는 끝으로 고정합니다. still은 그 프레임을 이 장면 프레임의 테이크로 추가합니다. |
mode | string | first(기본값), last, timestamp 중 하나입니다. |
timestamp | number | timestamp에 쓰는 초 단위 값입니다. |
client_request_id | string | 재시도 토큰입니다. |
voice_studio_shot
장면 위에 대사 한 줄을 보이스오버로 입힙니다. 호출은 음성이 완성될 때까지 기다린 뒤 업데이트된 프로덕션으로 응답합니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
shot_id | string | 필수. 장면입니다. |
text | string | 필수. 말할 대사입니다. |
voice_id, voice_type | string | list_voices에서 고른 보이스입니다. 생략하면 장면 자체의 보이스 설정을 유지합니다. |
delivery | object | 속도, 안정성 같은 전달 설정입니다. |
tts_provider | string | 음성 모델이 중요할 때 지정합니다. |
client_request_id | string | 재시도 토큰입니다. |
revoice_studio_clip
장면의 현재 모션 안에 있는 보이스를 교체합니다. 대사를 다시 연기해 같은 화면 위에 다시 믹스합니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
shot_id | string | 필수. 장면입니다. |
plan | object | 필수. 어느 화자에게 어떤 보이스를 줄지 정합니다. 형식은 운영 가이드에서 설명합니다. |
client_request_id | string | 재시도 토큰입니다. |
score_studio_production
음악 설명으로 프로덕션 전체에 쓸 사운드트랙 하나를 만듭니다.
| 매개변수 | 타입 | 설명 |
|---|---|---|
production_id | string | 필수. 프로덕션입니다. |
prompt | string | 필수. 음악의 분위기, 악기, 장르입니다. 최대 2,000자입니다. |
duration | number | 초 단위로, 1~600입니다. |
instrumental | boolean | 보컬 없이 만듭니다. |
vocal_gender | string | 가수의 목소리입니다. |
model | string | list_models에서 고르는 음악 모델입니다. |
client_request_id | string | 재시도 토큰입니다. |
자주 묻는 질문
어떤 스튜디오 도구에 크레딧이 드나요?
describe_studio_production, generate_studio_still, generate_studio_keyframe, generate_studio_clip, new_studio_shot_from_frame, voice_studio_shot, revoice_studio_clip, score_studio_production입니다. 프로덕션을 읽고, 검증하고, 만들고, 편집하고, 공유하고, 복제하는 것은 무료입니다.
스튜디오 생성 도구가 어시스턴트에 보이지 않는 이유는 무엇인가요?
이 도구들에는 workflows:write와 workflows:execute가 모두 필요합니다. 둘 중 하나만 허용한 연결에는 이 도구가 하나도 보이지 않습니다. 다시 연결하고 두 권한을 모두 허용하세요.
완성된 프레임이 아직 프로덕션에 없는 이유는 무엇인가요?
완료된 작업은 get_studio_production이 쓰기 권한으로 프로덕션을 읽을 때만 해당 장면에 반영됩니다. get_job과 wait_for_job은 상태를 알려 줄 뿐 결과를 반영하지 않습니다. 프로덕션을 다시 읽으세요.
생성하기 전에 가격을 확인하려면 어떻게 하나요?
generate_studio_still이나 generate_studio_clip에 dry_run을 true로 보내세요. 도구는 모델과 크레딧을 반환하고 아무것도 시작하지 않습니다. 내보내기 견적은 plan_studio_export로 받을 수 있습니다.
관련 문서
스튜디오 프로덕션
스튜디오 프로덕션
Recast
MCP 도구 레퍼런스
최종 업데이트