Communitygithub.com

tranhung91nd/video-editing-skills

9:16 세로형 토킹헤드 비디오를 Hanta AI 스타일로 편집합니다. Anton/Montserrat 골드 텍스트, 그래픽 카드, 인물을 가리지 않는 삽입 장면 및 CTA를 사용하며, 대사를 복사하고 소스 마커에 따라 edit.json을 구성한 후 Remotion으로 MP4를 내보냅니다. 토킹헤드 또는 전문가 동영상 템플릿에 사용되며, 해설이 포함된 몽타주 투어에는 적합하지 않습니다.

video-editing-skills란 무엇인가요?

이 스킬은 9:16 세로형 토킹헤드 비디오를 Hanta AI 스타일로 제작하기 위해 설계된 편집 도구입니다. 사용자는 원본 비디오와 에셋을 입력하면, 스크립트가 자동으로 대사를 분석하고 골드 색상의 Anton/Montserrat 폰트를 적용한 텍스트 오버레이, 그래픽 카드, 인물을 가리지 않는 삽입 장면 및 클릭 유도 문구(CTA)를 배치합니다. 이 스킬은 Claude Code, Cursor, Codex 등 다양한 AI 에이전트 플랫폼에서 사용 가능하며, Python 및 Node.js(Remotion) 환경에서 실행됩니다. 주요 기능으로는 자동 음성 인식(ASR) 전사, 편집 계획(edit.json) 생성, Remotion을 통한 고품질 MP4 렌더링, 그리고 최종 비디오의 프레임 정확성과 오디오 동기화를 검증하는 QA 검사가 포함됩니다. 이 스킬은 미리 정의된 템플릿 구조를 따르며, Hanta AI 샘플 비디오와 유사한 레이아웃과 애니메이션을 유지하지만, 콘텐츠, 화자, 운영체제에 따라 픽셀 단위의 완벽한 일치를 보장하지는 않습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tranhung91nd/video-editing-skills/tree/HEAD/skills/talking-head-reference-editor

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

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

문서

Hanta AI 스타일 토킹헤드 템플릿

이것은 Hanta AI 비디오를 생성하는 talking-head-editor 템플릿의 패키지 버전이며, 이전 League Gothic 버전이 아닙니다. 템플릿의 레이아웃과 모션을 유지하되, 콘텐츠, 화자 또는 운영체제가 다를 경우 픽셀 단위의 동일함을 주장하지 않습니다.

입력

화자 비디오와 허용된 삽입 자료를 입력으로 받습니다. 각 작업은 별도의 디렉토리를 생성합니다:

job/
  media/raw.mp4
  media/assets/...
  edit.json
  analysis/
  out/

컷, 캡션 및 삽입을 위해 원본 비디오 시간을 사용합니다. 계획을 작성할 때 edit.json 구조를 참조하고, style.md는 hero, sub, brand, card, compare, proof, pip, broll 및 CTA를 설명합니다.

사용 가능한 대본이 있으면 재사용하고 고유 명사를 확인합니다. ASR이 필요한 경우, 해당 백엔드가 있는 Python에서 scripts/transcribe.py를 실행하고, --help는 모델이 필요 없습니다. 선택적 백엔드 설치는 runtime.md를 참조하십시오. 인식 모델과 TTS는 패키지에 포함되어 있지 않습니다.

구성

  • Hero는 핵심 내용을 요약하고 골드 키워드를 강조합니다. Sub는 전환 문장용, brand는 프로그램 이름 소개 시, CTA는 끝 부분에 사용합니다. 각 구문은 읽기에 충분한 시간을 가지며, 성과나 증빙 이미지를 자의로 만들지 않습니다.
  • 텍스트는 음성에 맞춰 정렬하며, 추정된 문장 시작 부분에만 맞추지 않습니다. 사라지기 전에 입력 중인 텍스트 부분도 확인합니다.
  • pip 배치 전에 얼굴/사람 위치를 확인합니다. Hanta 샘플 화자의 경우, 삽입 창은 위쪽 빈 공간에 위치하며 머리/얼굴을 가리지 않습니다. 컨텍스트가 베트남 이벤트/기업인 경우 베트남 장면을 유지합니다.
  • 시청자가 소개된 이벤트를 오해하지 않도록 다른 이벤트의 명찰이나 무대를 사용하지 않습니다. 전체 화면 카드는 hero/sub 위에 겹치지 않습니다.
  • 비디오의 실제 음성을 유지하고, 음악 및 SFX는 음성보다 작게 합니다. 단어를 자르거나 묵음을 제거하여 의미를 바꾸지 않습니다.

실행

모든 스크립트 경로는 사용자 디렉토리가 아닌 이 스킬 디렉토리를 기준으로 합니다:

python3 scripts/doctor.py
python3 scripts/render.py /path/to/job --check-only
python3 scripts/render.py /path/to/job --setup-only
python3 scripts/render.py /path/to/job final.mp4
python3 scripts/qa.py /path/to/job/out/final.mp4 /path/to/job/out/qa

첫 번째 설정 시 job의 render-project에 있는 lockfile을 사용하여 npm ci를 실행합니다. 이후에는 동일한 버전을 재사용합니다. Studio, 브라우저 또는 비디오 파일을 직접 열지 않습니다. 기본적으로 단일 렌더 스레드를 사용하며, 시스템이 적합하거나 사용자가 요청할 때만 증가시킵니다. --frames=0-59를 사용하여 짧게 렌더링하여 미리 확인한 후 전체를 렌더링합니다.

Anton 및 Montserrat 폰트는 OFL과 함께 assets/fonts에 있으며, 렌더링 시 폰트를 다운로드하지 않습니다. Pop/whoosh 사운드는 job에 별도 파일이 없을 경우 로컬에서 생성됩니다. render.sh 스크립트는 render.py만 호출하며, 두 번째 템플릿은 없습니다.

인계

QA를 실행하여 전체 비디오를 디코딩하고 프레임 수를 비교하며, 모든 이미지 테이블과 전체 크기 카드를 검사합니다. 실제 재생 가능한 환경에서 대본/타이밍을 다시 확인하고 청취합니다. 메타데이터/ASR만 확인한 경우 듣지 않았다고 말하지 않습니다. 직접 들을 수 없는 경우 이 제한을 명시합니다. job이 생성한 모든 프로세스를 정리하고, 사용자의 다른 프로그램을 종료하지 않습니다.

샘플 hanta-reference.json은 템플릿 버전의 계획을 저장합니다. 개인 비디오/음악은 패키지에 포함되지 않습니다. 예제를 사용하여 재구성하기 전에 reference-inputs.md를 읽으십시오.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

관련 스킬