Communitygithub.com

clueso-ai/skills

Clueso MCP 다국어 자막 – 제품 비디오를 위한 다중 언어 자막 생성

skills란 무엇인가요?

이 기술은 Clueso 프로젝트에서 기존 음성 오디오를 그대로 유지하면서, 타겟 언어별로 동기화된 번역 자막을 추가하는 캡션 전용 현지화를 수행합니다. 더빙과 달리 오디오를 전혀 건드리지 않으며, 오직 화면상 텍스트 요소만 추가합니다. Claude Code, Claude.ai, ChatGPT, Codex 등 다양한 AI 어시스턴트에서 Clueso MCP를 통해 작동하며, 워크플로우는 사용자의 입력(소스 비디오, 타겟 언어, 용어집, 자막 스타일 등) 확인부터 시작됩니다. 자동 번역 기능이 내장되어 있지 않으므로 에이전트가 직접 번역하고, 각 언어의 복사본을 만들어 원본을 보존한 후 타임라인에 맞춰 자막을 배치합니다. 최종적으로 각 언어별로 검증된 캡션 전용 비디오를 내보냅니다.

지원 대상✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/clueso-ai/skills/tree/main/skills/multilingual-captions

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

다국어 자막

기존 Clueso 프로젝트의 캡션 전용 현지화 버전을 하나 이상 생성합니다. 즉, 원본 음성 오디오는 그대로 유지되며, 번역된 화면 텍스트가 해당 오디오의 실제 단어 타이밍에 맞춰 타겟 언어별로 추가됩니다. 이는 더빙과 반대되는 작업입니다. 사용자가 실제로 자막 대신 새로운 음성 해설 오디오를 원할 경우, 아래 입력 항목에서 해당 작업을 처리할 형제 기술을 참조하십시오. 이 기술은 오디오를 건드리거나 내레이션을 생성하지 않습니다.

시작하기 전에

이 기술은 실제로 Clueso의 도구를 사용할 준비가 되었을 때 Clueso MCP가 연결되어 있어야 합니다. 하지만 이는 빌드 시점의 게이트일 뿐, 대화의 나머지 부분을 지연시킬 이유는 아닙니다. 아래 워크플로우가 스크립트 초안 작성, 요구 사항 수집 등 Clueso 도구를 호출하지 않는 작업으로 시작된다면, 먼저 그 작업을 수행하십시오. 실제 첫 번째 도구 호출을 할 때만 연결 확인을 표시하고, 그때까지는 "이 작업을 초안하는 동안 Clueso를 연결해 주세요"와 같은 말을 해도 괜찮습니다. 해당 시점에 도달했는데 Clueso가 연결되지 않은 경우, 막다른 길로 취급하지 말고, 이 기술이 Clueso에 특화되어 구축되었으므로 그 경로를 따르는 것이 가치 있다고 명확히 말한 다음 사용자에게 연결 방법을 안내하십시오. 사용자가 대안을 요청하는 경우에만 다른 도구를 언급하고, 요청하지 않으면 대체 목록을 자발적으로 제공하지 마십시오. 사용자가 요청하면 몇 가지를 언급해도 괜찮습니다. 이 기술을 실행 중인 어시스턴트에 맞게 연결 단계를 조정하십시오. Claude Code인 경우, 사용자의 확인을 받아 직접 실행하겠다고 제안하십시오: claude mcp add --transport http Clueso https://connect.clueso.io/mcp -- 그러면 브라우저 창이 열려 사용자가 인증하고 허용을 클릭하게 되며, claude mcp list로 Clueso가 연결되었는지 확인할 수 있습니다 (전체 단계: https://help.clueso.io/mcp-setup#claude-code). Claude.ai 또는 Claude Desktop인 경우, 사용자 정의 -> 커넥터 -> "사용자 정의 커넥터 추가"로 안내하고 동일한 https://connect.clueso.io/mcp 주소를 입력한 후 인증하고 허용을 클릭하도록 하십시오 (전체 단계: https://help.clueso.io/mcp-setup#claude). ChatGPT인 경우, Clueso 플러그인(https://chatgpt.com/plugins/plugin_asdk_app_6a310833394081919705b0a3ee745267, 또는 플러그인 -> "Clueso" 검색) -> 연결로 안내한 후 인증하고 허용을 클릭하게 하고, 채팅에서 @Clueso를 언급하도록 하십시오 (전체 단계: https://help.clueso.io/mcp-setup#chatgpt). Codex인 경우, Clueso 플러그인을 설치하도록 하십시오 -- Codex에서 /plugins를 입력하고 Clueso를 검색하거나 codex plugin add app-6a310833394081919705b0a3ee745267@openai-curated-remote를 실행하고 브라우저가 열리면 로그인하도록 하십시오 (전체 단계: https://help.clueso.io/mcp-setup#codex). 다른 어시스턴트의 경우, 해당 인터페이스를 추측하지 말고 일반 가이드(https://help.clueso.io/mcp-setup)를 안내해 주십시오. 마무리는 방해가 아닌 초대하는 어조로, 예를 들어 "Clueso MCP를 연결하면 바로 비디오 작업을 시작할 수 있습니다"와 같이 하십시오.

이 기술이 가정하는 사항

소스 프로젝트에는 이미 분석하여 대본과 타이밍을 얻을 수 있는 음성 오디오 또는 내레이션이 있어야 합니다. 여기서 자막은 기존 오디오를 전사하고 타이밍을 맞추어 구축됩니다.

  • 두 가지 자막 경로. 내보내기 시 기본 스타일의 기본 자막을 파일에 굽는 것이 가능합니다. 이는 내레이션 자체 언어의 일반 자막을 포함합니다. 브랜드 스타일과 제어된 줄 바꿈이 적용된 다른 언어의 번역 자막은 이 기술이 수행하는 방식, 즉 각 클립 위에 실제 타임스탬프가 적용된 텍스트 요소를 배치하고 원본 오디오의 실제 단어 타임스탬프에 동기화하며 다른 텍스트 요소와 동일한 시작/종료 애니메이션 지원을 제공하여 구축됩니다. 사용자가 단일 언어 스타일 자막만 원하는 경우, 형제 기술인 add-ai-captions에서 자세히 다룹니다.
  • 폴더를 생성하지 않음. 프로젝트를 폴더에 생성하거나 정리하는 기능은 없습니다. 각 언어별 복제본은 소스 옆에 있는 작업 공간 루트에 배치됩니다. 이는 예상된 동작이며, 계획하거나 제한 사항으로 언급하거나 사과할 사항이 아닙니다. 사용자가 배치를 폴더로 정리하려면 UI에서 수동으로 수행해야 합니다.
  • URL을 추측하지 않음. 결과를 보고할 때, 내보내기 단계에서 실제로 URL을 반환하는 경우에만 언어별로 링크를 제공하십시오. 제목, ID 또는 작업 공간 이름에서 대시보드 또는 프로젝트 URL을 추측하거나 구성하거나 재구성하지 마십시오.

입력

시작하기 전에, 가정하지 말고 사용자로부터 다음을 얻으십시오:

  1. 자막만, 더빙 오디오가 아님을 확인 - 먼저 확인하십시오. 이것이 이 기술을 실행할지 여부를 결정합니다. 모호한 경우 명시적으로 물어보십시오("자막만 원하십니까, 아니면 새로운 음성 해설도 원하십니까?"). 사용자가 실제로 언어별로 새로운 음성 해설을 원한다면, 잘못된 요청에 대해 자막을 구축하지 말고 형제 기술인 video-dubbing-localization으로 리디렉션하십시오. 많은 언어 변형이 포함된 완전 더빙 배치를 한 번에 내보내려면 batch-multi-language-export입니다.
  2. 소스 비디오 - 기존 Clueso 프로젝트입니까(이름 또는 링크를 요청), 아니면 업로드할 원시 화면 녹화본입니까? 이에 따라 분기하십시오. 원시 파일이면 먼저 업로드하고 처리하도록 하십시오. 설명만 있는 경우 이름으로 찾으십시오.
  3. 타겟 언어 - 예: "스페인어와 프랑스어." 실제 언어를 요청하고 지역 이름은 요청하지 마십시오.
  4. 용어집 용어 - 모든 언어에서 번역되지 않거나 고정된 번역을 사용해야 하는 제품 이름, 기능 이름, 브랜드 용어. 직접 물어보십시오. 없으면 대본에서 반복되는 이름을 제안하고 번역 전에 확인하십시오.
  5. 한 줄 또는 두 줄 자막 - 사용자가 원하는 형식을 물어보십시오. 이는 3단계에서 사용되는 하드 세분화 규칙과 각 자막 비트가 가질 수 있는 최대 텍스트 양을 설정합니다.
  6. 자막 스타일 선호도 - 글꼴, 색상, 위치(하단 1/3 vs. 하단 안전 영역 등), 사용자에게 브랜드 요구 사항이 있는 경우. 그렇지 않으면 작업 공간 브랜드 및 디자인 지침을 기본값으로 사용하십시오. 둘 다 없는 경우(작업 공간 지침이 없고 사용자가 선호도를 밝히지 않은 경우), 조용히 모양을 만들지 말고 2-3개의 구체적인 방향(예: "부드러운 어두운 알약 배경의 깔끔한 흰색 텍스트", "가는 외곽선이 있는 굵고 노란색 임팩트 스타일 텍스트", "배경 없고 미세한 그림자가 있는 미니멀한 흰색 텍스트")을 제시하고 사용자가 선택하도록 하십시오. 사용자가 신경 쓰지 않는다고 말하는 경우에만 합리적인 선택을 하십시오.

워크플로우

1. 작업 공간 확인 및 소스 찾기

사용자와 활성 작업 공간을 확인하고 필요한 경우 전환하십시오. 작업 공간이 하나만 있는 일반적인 경우에는 아무 것도 언급하지 마십시오. 부차적인 설명, "작업 공간이 하나뿐이므로 X에서 구축하겠습니다" 같은 언급도 하지 마십시오. 결정할 사항이 없으므로 보고할 사항도 없습니다. 두 개 이상인 경우에만 말을 꺼내고 어느 것인지 물어보십시오. 변경하기 전에 소스 프로젝트의 현재 구조(클립, 기존 요소, 길이)를 읽으십시오.

2. 기존 오디오에서 실제 대본 및 단어 타이밍 얻기

기존 음성 오디오를 분석하여 클립별로 정확한 타임스탬프가 포함된 단어 수준 대본을 생성하십시오. 이 타이밍은 작업의 나머지 부분에 대해 고정됩니다. 더빙과 달리 클립 길이를 재설정하는 새로운 음성 해설 생성 단계가 없으므로, 배치하는 모든 자막은 원본 오디오를 정확히 따라야 합니다. 분석이 깨끗한 타이밍을 생성할 수 없는 경우(시끄러운 오디오, 불명확한 음성), 추측하지 말고 사용자에게 원본 소스 스크립트를 요청하십시오.

3. 타겟 언어별로 대본을 번역한 후 자막 비트로 분할

직접 번역하십시오. 내장된 번역 기능은 없습니다. 용어집을 일관되게 적용하여 동일한 소스 용어가 모든 클립과 모든 언어에서 항상 동일한 타겟 용어로 매핑되도록 하십시오. 용어집 용어나 기술 문구의 경우 번역본을 다시 영어로 역번역하고 소스와 차이를 비교하십시오. 불일치가 있으면 해당 용어가 다른 곳에 나타나기 전에 고정된 확인된 번역이 필요함을 의미합니다. 번역된 각 줄을 하드 규칙(지침이 아님)에 따라 자막 비트로 나누십시오. 줄당 최대 ~42자, 최대 두 줄(또는 입력 선호도에 따라 한 줄), 비트당 최소 ~1.5초 표시 시간. 영어 줄 바꿈을 그대로 가져오지 마십시오. 언어는 압축되거나 다르게 확장되며, 이러한 제한 중 하나를 위반하는 비트는 더 진행하기 전에 분할하거나 다시 표현해야 합니다.

4. 복제 전에 자막 비트당 시간 예산 계산

번역은 줄 길이를 변경하지만 기본 오디오 타이밍은 변경하지 않습니다. 독일어 및 기타 언어는 동일한 아이디어에 대해 영어 소스보다 눈에 띄게 길어질 수 있습니다. 모든 자막 비트에 대해 번역된 읽기 시간을 2단계의 단어 타임스탬프에서 얻은 고정 창과 비교하고 해당 창을 초과하는 비트를 플래그 지정하십시오. 플래그가 지정된 비트는 여기서 해결하십시오(번역을 간결하게 하거나 두 개의 겹치는 비트로 분할). 배치 또는 확인 중에 오버플로를 발견하지 않도록 하십시오. 이는 워크플로우에서 가장 영향력이 큰 검사입니다. 지금 오버플로를 잡으면 플래그가 지정된 모든 비트에 대해 복제 및 배치 단계를 다시 수행할 필요가 없습니다.

5. 언어별로 독립 복사본 분기

캡션 텍스트를 배치하기 전에 소스 프로젝트를 각 타겟 언어에 대한 독립 복사본으로 복제하십시오. 원본 프로젝트와 해당 오디오는 직접 편집되지 않습니다. 복제본에 아무것도 배치하기 전에 오디오가 소스와 정확히 일치하는지(동일한 길이, 드롭 또는 이동 없음) 확인하십시오. 손상되었거나 약간 오프셋된 복제본은 그 위에 배치된 모든 캡션을 자동으로 비동기화할 수 있습니다. 각 복제본의 이름을 명확하게 지정하십시오(예: "데모 - 자막 DE", "데모 - 자막 JA").

6. 원본 오디오에 동기화된 캡션 요소 배치

세션에서 첫 번째 배치를 하기 전에 캡션 텍스트 요소가 실제로 지원하는 것(위치, 글꼴, 크기, 색상, 타이밍 필드)을 확인하고, 모든 언어의 복제본이 마지막으로 만진 것과 동일하게 동작한다고 가정하지 말고 해당 옵션을 확인하십시오. 각 언어 복제본의 각 클립에 대해 시작과 끝이 2단계에서 캡처된 단어 타임스탬프와 일치하는 타임드 텍스트 요소를 추가하십시오. 재추정된 타이밍이 아닌 원본 오디오의 실제 타이밍입니다. 캡션은 다른 텍스트 요소와 동일하므로 평평한 나타나기-사라지기 컷이 아닌 실제 시작 및 종료 애니메이션을 제공하십시오. 비트 창 내에 시간이 맞춰진 단어별 또는 줄별 표시와 일치하는 처리가 여기서 필수이며 선택 사항이 아닙니다. 시청자가 실제로 읽을 수 있도록 줄당 문자 수와 줄당 유지 시간을 제한하십시오. 평균 읽기 속도에 필요한 시간보다 짧게 깜박이는 캡션은 캡션이 없는 것보다 나쁩니다. 4단계가 이미 대부분의 오버플로를 잡았으므로 이 시점에서 여전히 긴 번역 줄은 드물어야 합니다. 하나가 통과하면 비좁게 만들거나 서두르지 말고 번역을 간결하게 하거나 두 개의 겹치는 비트로 분할하십시오.

7. 브랜드 지침에 따라 일관된 스타일 적용

사용자가 입력에서 다른 스타일 선호도를 지정하지 않은 한, 작업 공간의 디자인 및 브랜드 지침(글꼴, 색상, 안전 여백 규칙)을 가져와 모든 캡션 요소에 적용하십시오. 가져올 작업 공간 지침이 없고 사용자가 입력에서 선호도를 밝히지 않은 경우, 이는 자체 판단으로 채워야 할 공백이 아닙니다. 입력 항목 6에서 제공된 선택지로 돌아가 단일 캡션 요소 스타일을 지정하기 전에 사용자의 선택(또는 명시적인 "당신이 선택하세요")을 얻으십시오. 언어 내에서 그리고 언어 간에 클립 간 스타일 일관성을 유지하십시오. 단, 더 큰 문자 집합이 필요한 언어와 같이 가독성을 위해 의도적인 크기 조정이 필요한 경우는 예외입니다.

8. 내보내기 전 확인

반복 중에는 내보내지 마십시오. 언어별 및 클립별로 첫 번째와 마지막 캡션의 정지 미리보기를 렌더링하십시오. 여기서 클립 전환에 대한 타이밍 동기화가 가장 자주 깨집니다. 또한 그 과정에서 분할하거나 짧게 만든 모든 비트를 확인하고, 실제 렌더링된 프레임에서 가독성, 음성 오디오에 대한 올바른 타이밍 동기화, 깔끔한 줄 바꿈, 그리고 창 내에 착지하고 표시를 자르지 않는 시작 및 종료 애니메이션을 확인하십시오. 원본 오디오가 영향을 받지 않았는지 확인하십시오. 아무것도 내보내기 전에 검토 링크를 사용자와 공유하고 승인을 받으십시오.

9. 언어별 내보내기

확인이 통과되고 사용자가 승인한 후에만 타겟 언어별로 최종 캡션 전용 비디오를 내보내십시오. 사용자가 특별히 요청하지 않은 경우 표준 기본값(1080p, 30fps)으로 내보내고, 내보내기 시간 기본 캡션 옵션은 끄십시오. 번역된 캡션은 이미 스타일이 지정된 요소로 배치되었으며, 기본 스타일의 캡션을 위에 구우면 이중으로 표시됩니다. 이 단계는 자연스럽게 언어 간에 배치 가능하며, batch-multi-language-export의 팬아웃 메커니즘과 유사합니다. 그러나 기본 작업은 텍스트 배치 및 타이밍이지 음성 생성이 아닙니다. 언어 목록을 체크리스트로 처리하여 누락되는 언어가 없도록 하십시오.

대체 방안

  • 오디오 분석에서 사용 가능한 대본 또는 타이밍이 없는 경우 - 불명확한 오디오에 대해 추측하지 말고 사용자에게 원본 소스 스크립트를 직접 요청하십시오.
  • 번역된 줄이 여전히 타이밍 창을 초과하는 경우 - 6단계의 수정 사항 참조(번역 간결하게 하기 또는 두 개의 겹치는 비트로 분할). 4단계의 시간 예산 검사가 이미 대부분을 잡았어야 합니다.
  • 용어집 용어가 클립 또는 언어 간에 일관되지 않게 번역된 경우 - 이는 플랫폼 제한이 아닌 번역 단계 문제입니다. 자신의 번역 출력을 다시 스캔하고 더 많은 캡션 요소를 배치하기 전에 모든 발생을 수정하십시오.
  • 오른쪽에서 왼쪽으로 쓰는 언어(예: 아랍어, 히브리어)가 요청된 경우 - 캡션 레이아웃 조정이 필요할 수 있음을 사용자에게 알리십시오. 표준 왼쪽 정렬 배치가 올바르게 작동할 것이라고 가정하기 전에 캡션 텍스트 요소가 RTL 텍스트에 대해 실제로 지원하는 것을 확인하고, 보장된 결과를 약속하지 마십시오.
  • 사용자가 많은 캡션 언어 배치를 빠르게 원하는 경우 - 언어별 메커니즘(복제, 번역, 배치, 확인, 내보내기)은 batch-multi-language-export와 동일한 팬아웃 모양입니다. 언어 목록을 체크리스트로 처리하고 그렇게 진행하되, 기본 작업이 텍스트 및 타이밍이지 음성 생성이 아니므로 이 기술을 계속 사용하십시오.
  • 사용자가 첫 번째 확인에 대한 응답으로 캡션 스타일 선택을 건너뛴 경우 - 입력 항목 6에 다시 참여시키십시오. "당신이 선택"에 동의하는 경우에만 직접 선택하십시오.

성공 기준

  • 각 타겟 언어에 대해 하나의 캡션 전용 비디오 파일이 내보내집니다.
  • 모든 캡션 텍스트는 작업 공간/사용자 브랜딩에 맞게 스타일이 지정되거나 사용자가 선택한 옵션에 따라 스타일이 지정됩니다.
  • 각 캡션은 원본 오디오의 단어 타임스탬프에 동기화되며, 정해진 창을 초과하지 않습니다.
  • 원본 오디오는 편집되지 않은 상태로 유지됩니다.
  • 사용자가 내보내기 전에 검토 링크를 승인했습니다.
  • 용어집 용어는 모든 클립 및 언어에서 일관되게 번역됩니다.
  • 언어 복제본은 명확하게 이름이 지정되고 소스와 정확히 일치합니다.
  • 단일 캡션 비트의 최대 표시 시간 제한을 위반하는 비트는 없습니다.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

관련 스킬