로고 팝업: 손가락 끝에서 튀어나오는 로고
사용자는 일반적으로 기술에 익숙하지 않습니다. 답변은 짧게 유지하고, 사용자를 위해 작업을 대신 해주며, 명령어를 직접 실행하도록 요청하지 마세요.
모든 경로는 이 스킬의 폴더(SKILL.md가 있는 폴더)를 기준으로 합니다. 명령어에는 절대 경로를 사용하세요. 아래 PY는 이 폴더의 .venv/bin/python을 의미합니다(Windows의 경우 .venv\Scripts\python.exe).
1. 첫 실행: 설정 (한 번만)
bash scripts/setup.sh를 실행하세요. 완료되면 READY가 출력됩니다(처음에는 1~3분 소요).
NEED_FFMPEG: ffmpeg를 설치하세요(Mac:brew install ffmpeg, Windows:winget install ffmpeg). 그런 다음 setup을 다시 실행하세요.NEED_PYTHON: Python 3.12를 설치하세요(Mac:brew install [email protected], Windows:winget install Python.Python.3.12). 그런 다음 setup을 다시 실행하세요.
2. 가리키는 지점과 단어 찾기
사용자의 동영상에 대해 다음 두 가지를 실행하세요:
PY scripts/track.py <video>: 손을 추적하여<video>.hands.json파일을 저장하고 포인팅 윈도우(손가락이 펴진 시간)를 출력합니다.PY scripts/words.py <video>: 각 단어가 발화된 시간을 출력합니다.
각 포인팅 윈도우를 해당 시간에 화자가 언급한 브랜드와 매칭하세요. Whisper는 브랜드 이름을 자주 잘못 인식합니다: "cloud"는 대개 Claude, "codecs"는 Codex, "croc"/"grok"은 Grok, "chat GPT"는 ChatGPT, "Gemini", "cursor"는 Cursor입니다. 사용자가 이미 어떤 로고를 원하는지 알려줬다면, 가리킨 순서대로 그 로고를 사용하세요. 만약 발화에서 브랜드를 언급하지 않았고 사용자가 말하지도 않았다면, "어떤 로고를, 어떤 순서로 넣을까요?"라고 짧게 물어보세요.
3. 계획 작성
동영상 옆에 <video-name>_logos.json 파일로 저장하세요:
{"pops": [
{"logo": "claude", "start": 1.12, "end": 1.85},
{"logo": "codex", "start": 2.10, "end": 3.05},
{"logo": "grok", "start": 3.45, "end": 4.50}
]}
start: 손이 안정된 후 약간의 박자(윈도우 시작) 또는 단어 발화 시점 중 더 늦은 시간.end: 손가락이 내려가거나 다음 포인트가 시작되는 시간. 각 팝은 0.7 ~ 1.2초가 가장 자연스럽습니다. 두 팝이 겹치면 안 됩니다.logo: 사전 설정 이름(아래 참조), lobehub.com/icons의 아이콘 이름(예:notion,figma,vercel;<name>-color를 먼저 시도), 또는 사용자가 제공한 PNG/SVG 파일 경로.
팝별 옵션 (모두 선택 사항):
| 키 | 설명 | 기본값 |
|---|---|---|
label | 아이콘 아래 필라에 표시할 텍스트; ""로 숨김 | 브랜드 이름 |
bg | 타일 배경색 (16진수) | 사전 설정, 없으면 흰색 |
fg | 단색 SVG 로고의 색상 | 어두운 타일은 흰색, 밝은 타일은 검은색 |
accent | 팝업 링의 색상 | 사전 설정, 없으면 로고 색상 |
size | 동영상 너비 대비 타일 너비 비율 | 0.24 |
logo_scale | 타일 내부 로고 크기 비율 | 0.66 |
gap | 손끝에서 아이콘이 떨어진 거리 (타일 크기 단위) | 0.85 |
nudge | 추가 [x, y] 오프셋 (너비 대비 비율) | [0, 0] |
avoid_face | 얼굴을 가리게 될 경우 위로 밀어 올림 | true |
burst | 팝업 시 링과 스파크 효과 | true |
사전 설정: claude, anthropic, codex, openai, chatgpt, grok, gemini, cursor, perplexity, deepseek, copilot, mistral, meta.
4. 확인 후 렌더링
- 먼저 스틸 이미지(빠름):
PY scripts/render.py <plan.json> <video> <folder>/check.png --still 1.5,2.6,4.0각 팝 중간의 한 시점을 지정합니다. PNG를 직접 확인하세요. 얼굴을 가리거나, 화면 가장자리에서 잘리거나, 손가락에서 너무 멀리 떨어진 경우(gap,nudge,size, 타이밍) 수정하세요. - 렌더링:
PY scripts/render.py <plan.json> <video> <video-name>_logos.mp4. 출력: H.264 MP4, 1080 너비, 동일한 프레임 속도, 원본 오디오 유지. - 파일 위치를 알려주고, 게시 전에 시청하도록 안내하세요.
규칙
- 절대 얼굴을 가리지 마세요. 얼굴 회피는 기본적으로 켜져 있지만, 스틸 이미지에서 반드시 확인하세요.
- 한 번 가리킬 때 로고 하나만 표시하세요. 같은 브랜드를 두 번 가리키면 두 번 팝업을 사용하세요.
- 로고는 해당 소유주의 상표입니다. 이 기능은 해설 및 리뷰용입니다. 사용자가 요청하지 않는 한 화자가 언급하지 않은 로고는 추가하지 마세요.