Communitygithub.com

LucasLBrito/video-dev

세로형 (9:16, Shorts/Reels/TikTok) 프로그래밍 및 기술 설명 영상을 제작합니다. 애니메이션 다이어그램, 포르투갈어 나레이션, 배경 음악을 포함하며, Python만으로 생성되고 별도의 편집 프로그램이 필요 없습니다. 시작점 역할을 하여 올바른 질문을 하고, 컴퓨터를 준비하고, 비디오 폴더를 구성한 후 video-conceito, video-tutorial-terminal, narracao-voz, trilha-video 스킬을 호출합니다. 사용자가 '영상 만들기', '설명 영상', '짧은 영상', 'TikTok/Reels/Shorts 영상', 'X를 영상으로 설명', '영상 튜토리얼'을 요청하거나 SSH 및 Git 영상을 계속/수정/재제작하려 할 때 항상 사용하세요. (사용자가 '스킬'이라는 단어를 말하지 않아도 됩니다.)

video-dev란 무엇인가요?

이 스킬은 기술 및 프로그래밍 주제에 대한 세로형 설명 영상(1080×1920, 30fps)을 완전 자동 생성하는 **허브(hub)** 역할을 합니다. 사용자가 '영상 만들어 줘'라고 요청하면, 먼저 주제, 영상 유형(개념/터미널 튜토리얼/혼합), 시각 스타일(Dracula/크림), 길이, 배경 음악 등을 질문하여 요구사항을 명확히 합니다. 이후 `video-conceito`(개념 다이어그램), `video-tutorial-terminal`(터미널 명령어 녹화), `narracao-voz`(포르투갈어 TTS 나레이션), `trilha-video`(배경 음악 믹싱) 등 하위 스킬을 순차적으로 호출하며, 모든 렌더링은 Python(Pillow, numpy, edge-tts, imageio-ffmpeg)으로 로컬에서 이루어집니다. 특히 `SKILL.md`에는 8단계 워크플로(질문 → 환경 준비 → 폴더 생성 → 대본 승인 → 나레이션 → 애니메이션 → 최종 렌더링 → 확인/전달)와 다양한 커스터마이징 옵션(대본 수정, 발음 보정, 시각 테마 변경, 음악 볼륨 조절 등)이 상세히 명시되어 있어, Claude Code, Cursor, Codex와 같은 AI 코딩 어시스턴트가 이 스킬을 통해 사용자 맞춤형 영상을 처음부터 끝까지 자동 제작할 수 있습니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/LucasLBrito/midia-skills/tree/main/skills/video-dev

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

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

문서

경로: ${CLAUDE_PLUGIN_ROOT}가 이 플러그인의 루트입니다. 변수가 설정되지 않은 경우, 루트는 이 스킬의 "Base directory"보다 두 폴더 위에 있습니다 (<루트>/skills/<스킬>). 스킬이 ~/.claude/skills에 단독으로 복사된 경우 ${CLAUDE_PLUGIN_ROOT}/skills 대신 ~/.claude/skills를 사용하세요.

이 스킬은 "SSH란 무엇인가" 및 "Git과 GitHub 모범 사례" 영상을 제작하면서 배운 내용을 저장합니다. 결과물은 1080×1920 해상도, 30fps의 세로 MP4 파일로, Python(Pillow)으로 프레임별로 그린 애니메이션, 무료 신경망 음성(edge-tts), 코드(numpy)로 작곡한 음악을 포함합니다. After Effects, CapCut 또는 유료 프로그램을 사용하지 않습니다.

브라질 포르투갈어로 간단하게, 결과물을 먼저 보여주며 답변하세요.

스킬 맵

스킬사용 시기
video-dev (현재)항상 먼저: 질문, 준비, 폴더 생성, 최종 렌더링, 전달
video-conceito작동 원리 설명 (SSH, DNS, HTTPS, Docker, JWT...): 다이어그램, 패킷 이동
video-tutorial-terminal함께 입력할 명령어 교육 (Git, Docker CLI, npm, Linux...): 타이핑이 포함된 터미널
narracao-voz대본 작성/조정, 음성, 영어 용어 발음, 단어 타이밍
trilha-video배경 음악 및 음성과의 믹싱 (덕킹)

유형을 파악한 후 선택한 유형의 스킬을 읽으세요. 나레이션과 트랙은 해당 단계에 도달했을 때 읽을 수 있습니다.

경로

SK = ${CLAUDE_PLUGIN_ROOT}/skills   (플러그인 루트; 아래 "경로" 참고)
SK/video-dev/scripts/            motor.py, render.py, novo.py, checar.py
SK/video-dev/exemplos/ssh/       SSH 영상 (개념) 전체 프로젝트
SK/video-dev/exemplos/git/       Git 영상 (튜토리얼) 전체 프로젝트
SK/narracao-voz/scripts/         narracao.py, pronuncia_base.json
SK/trilha-video/scripts/         trilhas.py, mixar.py
SK/video-dev/references/         elementos.md (API 및 레이아웃), licoes.md (이전 오류)

1단계 — 질문 (파일 생성 전)

AskUserQuestion 도구로 한 번에 최대 4개의 질문을 하고, 추천 옵션을 먼저 제시하세요. 사용자가 요청에서 이미 답변한 내용은 건너뛰세요. 사용자가 "네가 정해"라고 하면 굵게 표시된 기본값을 사용하세요.

1차 질문 (항상):

  1. 영상 유형: 개념 (작동 방식, 다이어그램 포함) · 터미널 튜토리얼 (단계별 명령어) · 혼합 (개념 후 명령어: 개념 스킬을 사용하고 튜토리얼에서 Term을 빌려옴).
  2. 시각 스타일: Dracula (어두움, 네온 색상, 최종 영상과 동일) · 크림 (종이 배경, 흰색 상자, 종이 스타일).
  3. 길이: 짧음, 최대 60초 (56장면, Shorts에 적합) · 중간, 1:302분 (810장면) · 전체, 약 3분 (1214장면, SSH 및 Git 영상과 동일).
  4. 배경 음악: 신스 (기술적 미니멀, 영상에서 사용) · 로파이 · 앰비언트 · 피아노 · 음악 없음.

2차 질문 (여전히 불명확한 경우에만):

  • 대상: 초보자 (모든 용어 설명) 또는 이미 프로그래밍하는 사람 (바로 본론).
  • 음성: pt-BR-AntonioNeural (남성, 사용됨) 또는 pt-BR-FranciscaNeural (여성). narracao.py --vozes를 실행하여 다른 음성을 확인하세요.
  • 필수 포인트: 빠져서는 안 될 내용? 특정 예제, 명령어 또는 이야기?
  • 마무리: 요약/체크리스트 (기본값), "이 영상 저장" 호출 또는 댓글 질문.

진행하기 전에 2~3줄로 주제, 유형, 시각 스타일, 길이, 장면 수, 배경 음악을 확인하세요.

2단계 — 컴퓨터 준비 (각 머신당 한 번)

python SK/video-dev/scripts/checar.py

누락된 항목이 있으면: python SK/video-dev/scripts/checar.py --instalar (edge-tts, pillow, imageio-ffmpeg, numpy를 pip로 설치; ffmpeg는 imageio-ffmpeg 내부에 포함되어 시스템에 별도 설치 불필요). Bahnschrift 및 Consolas 글꼴은 Windows에 기본 포함되어 있습니다.

사용자에게 한 번 알리세요: 음성은 인터넷을 사용합니다. 대본 텍스트는 Microsoft 음성 서비스로 전송됩니다. 애니메이션과 음악은 100% 컴퓨터에서 실행됩니다.

Windows에서 긴 경로 주의: Python은 매우 깊은 폴더(예: Claude 임시 폴더)에서 "File name too long" 오류로 실패합니다. 짧은 폴더에서 작업하세요.

3단계 — 영상 폴더 생성

동기화 폴더 외부(OneDrive, Dropbox, iCloud) 폴더를 선호하세요: 렌더링 시 수천 개의 프레임을 기록하고 동기화 속도가 느려집니다. 제안: ~/Projetos/videos/<짧은-이름>/. 사용자가 다른 위치를 선호하는지 물어보세요.

python SK/video-dev/scripts/novo.py <폴더> --tipo conceito --titulo "O que é Docker" --tema dracula --cenas 12

구조 (대본 1개 발화 = 1개 장면):

<폴더>/
  video.json     제목, 파일 이름, 테마, 음성, 속도, 배경 음악
  roteiro.json   ["장면 1 발화", "장면 2 발화", ...]
  pronuncia.json 선택 사항: 프로젝트 용어 -> 음성 표기
  cenas.py       def cenas(): return [[장면 1 요소], ...]
  audio/         cena01.mp3 + cena01.json (각 단어의 시간)
  saida/         <이름>.mp4, <이름>_trilha.mp4, poster.jpg, preview/

4단계 — 대본 → 사용자에게 표시 → 승인

유형(개념 또는 튜토리얼) 스킬과 narracao-voz 스킬의 말하기 규칙에 따라 대본을 작성하세요. 애니메이션 전에 대본을 표시하세요: 텍스트 변경이 장면 변경보다 훨씬 저렴합니다. 승인 후에만 진행하세요.

5단계 — 나레이션

python SK/narracao-voz/scripts/narracao.py <폴더>
python SK/narracao-voz/scripts/narracao.py <폴더> --tempos 3     # 장면 3의 각 단어가 발화되는 시점

나레이션은 장면보다 먼저 진행됩니다. 각 장면의 길이는 발화 길이 + 0.7초이며, 요소는 해당 단어가 발화되는 순간에 나타납니다.

6단계 — 장면 (애니메이션)

from motor import *를 사용하여 cenas.py를 작성하세요 (전체 API는 references/elementos.md 참조). 각 장면에 대해: --tempos N을 실행하고, 각 키워드에 표시할 항목을 선택한 후 요소의 t에 해당 시간(또는 0.2초 전)을 사용하세요.

코드를 읽는 것뿐만 아니라 프레임을 확인하세요:

python SK/video-dev/scripts/render.py <폴더> --preview      # 각 장면의 마지막 프레임
python SK/video-dev/scripts/render.py <폴더> --cena 4       # 장면 4, 초당 한 프레임

Read 도구로 PNG를 열고 확인하세요: 가장자리 잘림 없음, 겹침 없음, 휴대폰에서 읽을 수 있을 만큼 충분히 큰 텍스트, 아래 250px(자막 및 TikTok/Reels 버튼 위치)에 중요한 내용 없음.

7단계 — 최종 렌더링 + 배경 음악

python SK/video-dev/scripts/render.py <폴더>                         # saida/<이름>.mp4 + poster.jpg
python SK/trilha-video/scripts/mixar.py <폴더>/saida/<이름>.mp4 synth  # saida/<이름>_trilha.mp4

3분 영상 렌더링은 몇 분 정도 소요됩니다: 백그라운드에서 실행하세요.

8단계 — 확인 및 전달

  • ffmpeg로 길이와 오디오 유무 확인 (ffmpeg -i 파일.mp4는 스트림을 표시합니다).
  • 최종 MP4에서 다른 지점의 3~4개 프레임을 추출하여 확인하세요.
  • SendUserFile로 전달 (display: "render")하고 폴더 위치를 알려주세요.
  • 사용자가 시청 또는 공유용 페이지를 원하는 경우 (SSH 및 Git 영상과 같이), MP4와 스크립트를 files에 포함하여 Artifact로 게시하세요. 사용자가 요청한 경우에만 공개하세요.
  • 사용자 승인 없이 YouTube/TikTok/GitHub에 업로드하지 마세요.

완료 후 일반적인 변경 사항

요청수행할 작업
문구 변경roteiro.json 편집 → narracao.py --so N → 장면 N 타이밍 조정 → 렌더링
잘못된 발음프로젝트의 pronuncia.json → narracao.py --so N (narracao-voz 참조)
다른 시각 스타일렌더 시 --tema creme 또는 video.json에서 tema 변경
음악 크기 조정mixar.py ... --trilha 0.25 (trilha-video 참조)
긴 영상의 짧은 버전핵심 장면과 간결한 대본만 복사하여 새 프로젝트 생성

시작하기 전에 references/licoes.md를 읽으세요: 처음 두 영상의 실수와 성공 사례가 있습니다.

Individual skills in this repo

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

관련 스킬