App Promo Video Studio
에뮬레이터 캡처로 완성된 진정한 앱 프로모 비디오를 제작하고, YouTube, Facebook Page, Instagram, TikTok에 게시합니다. 실제 앱 UI는 그대로 보존하며, 기능, 숫자, 주장을 절대 허위로 만들지 않습니다.
이 스킬은 앱에 구애받지 않습니다. 모든 앱에 작동합니다. 모든 것은 명세(JSON) 기반이며, 새 앱은 새로운 JSON 명세와 자체 스크린샷, 데모 기록, CTA, 고지문, 음성 대본만 있으면 됩니다 – 코드 변경이 필요하지 않습니다. Astra Phone Directory 프로모(2026년 10월 10일)가 examples/ 디렉토리에 참조 작업으로 포함되어 있습니다. 이를 복사하여 앱 콘텐츠로 교체하세요. 각 새 앱에 대해 제작 전에 하나의 마케팅 약속, 실제 기능 세트, 안전한 데모 데이터, Play Store 링크, 진정한 고지문을 확인하세요. 게시는 브랜드 자체 YouTube 채널, Facebook Page, Instagram, TikTok에 수행합니다. 앱 간 다른 것은 YouTube 재생목록(per-app)뿐입니다.
로드된 스킬은 세션 내에서 재사용 가능합니다. 도구 경로는 런타임에 검색하세요(which ffmpeg, emulator -list-avds); 머신 경로를 하드코딩하지 말고, 저장소 내 경로는 상대 경로로 유지하세요.
엄격한 규칙 (위반 금지)
- 공개 비디오에는 안전한 데모 데이터만. 제작된 데모 기록(무작위 이름/아바타, 가짜 CNIC)은 괜찮지만, 실제 개인 번호나 소유자의 개인 데이터는 절대 사용하지 마세요. 앱이 실제 타사 데이터를 반환하는 경우 사용자와 데모 세트를 확인하세요.
- 모든 데이터 필드 표시. 각 카드 장면은 전체 카드를 보여줍니다. 필드를 자르지 마세요.
- 정직한 카피. 허위 기능, 숫자, 수상 내역, 리뷰를 만들지 마세요. 타사 디렉터리 및 번호 제거 고지를 CTA와 캡션에 포함하세요.
- 어디에도 Em 대시(—) 사용 금지 (장면, 캡션, 제목, 설명, 커밋 메시지). 대신 하이픈(-)을 사용하거나 문장을 나누세요.
- 항상 커스텀 썸네일. 플랫폼이 프레임을 자동 선택하게 두지 마세요. Reel / Short / TikTok(세로)에는 **9:16
thumb_9x16.png**을 사용하고, 가로 YouTube 업로드에만thumb_16x9.png를 사용하세요. YouTube Short는 16:9 썸네일을 좁은 ~9:16 스트립으로 중앙 크롭하므로, 주요 콘텐츠를 중앙 ~405px 열에 유지하고 업로드 전에 9:16 중앙을 크롭하여 확인하세요. - 우르두어 캡션/제목은 로마 우르두어(라틴 문자)로 작성. 음성 VO는 우르두어를 유지하되, 우르두어 버전의 작성 캡션/제목/설명은 로마 우르두어여야 합니다.
- AI 고지: 정확하게, 자동으로 하지 마세요. 각 플랫폼의 현재 AI 생성, 변조 또는 합성 콘텐츠 정의를 읽고 진실하게 응답하세요. 음성 해설은 신경망(합성) 음성이므로, 플랫폼 규칙이 합성 오디오를 다루는 모든 곳에 고지하세요.
- YouTube "어린이용": 항상 아니요. 이 프로모는 성인 대상입니다.
- 초안 먼저, 명시적 플랫폼별 승인 후에만 게시. 게시는 외부로 향하며 되돌릴 수 없습니다. 모든 것을 비공개로 준비하고, 승인을 기다리세요. Play 빌드에 태그를 달고 각 게시 URL과 결과를 기록하세요.
워크플로우 (여섯 단계)
자세한 내용은 references/pipeline.md에 있습니다. 스크립트는 scripts/에, 예제 명세는 examples/에 있습니다(먼저 자신의 스크린샷을 추가하세요).
- 캡처 (에뮬레이터).
scripts/set_demo_statusbar.sh로 깔끔한 상태 표시줄 설정;adb exec-out screencap -p로 스크린샷 (명령어 앞에MSYS_NO_PATHCONV=1를 붙여/sdcard/경로를 보호).screenrecord(끊김 있음)보다 스틸 선호. 최근 검색어를 지워 일관된 프레이밍 유지; 각 결과 카드를 전체 흰색 카드로 크롭. - 장면 합성.
python scripts/make_scenes.py <spec.json> <assets_dir> <out_dir>->s1.png..sN.png. 문법: 훅 -> 홈 스크린샷 -> 데모 레코드당 카드 하나 -> 기능 설명 -> CTA. 디자인 규칙은 references/pipeline.md 참조. - 음성 해설 (EN + UR).
python scripts/gen_vo.py <vo_spec.json> <out_dir>. 영어en-US-AvaNeural, 우르두어ur-PK-UzmaNeural. 스크립트에는 Windows SelectorEventLoop 수정 및 403 재시도 로직이 포함됨. 자연스러운 우르두어 작성(직역 금지). - 음악.
FFMPEG=<ffmpeg> scripts/build_music.sh <out.wav> <seconds>- 연속 코드 패드, loudnorm -16 LUFS로 음성 아래에서 들리도록. 장면 총 시간보다 몇 초 더 길게 전달.volumedetect로 확인. - 조립.
python scripts/build_video.py --scenes <dir> --vo <dir> --music <wav> --out <mp4> --ffmpeg <ffmpeg>. 각 장면을 해당 음성 라인에 자동 타임, 장면 크로스페이드, 음성 아래에 음악 믹스. 지속 시간, 레벨, 프레임 확인. - 썸네일 + 게시.
python scripts/make_thumbnail.py <spec.json> <assets_dir> <out_dir>실행 후 references/publishing.md에 따라 네 채널 처리 (커스텀 썸네일, 정직한 AI 고지, 초안 우선, 업로드 전 대상 채널 확인).
빠른 시작 (예제 기준)
SK=<skills-dir>/app-promo-video-studio # 스킬이 설치된 경로
FF=$(which ffmpeg); W=<scratch_dir>
python "$SK/scripts/make_scenes.py" "$SK/examples/video_spec.example.json" "$SK/examples/assets" "$W/scenes"
python "$SK/scripts/gen_vo.py" "$SK/examples/vo_en.json" "$W/vo_en"
FFMPEG="$FF" bash "$SK/scripts/build_music.sh" "$W/music_en.wav" 33
python "$SK/scripts/build_video.py" --scenes "$W/scenes" --vo "$W/vo_en" --music "$W/music_en.wav" --out "$W/promo_en.mp4" --ffmpeg "$FF"
python "$SK/scripts/make_thumbnail.py" "$SK/examples/video_spec.example.json" "$SK/examples/assets" "$W/thumb"
우르두어 버전으로 전환하려면 gen_vo.py를 examples/vo_ur.json으로 실행하여 vo_ur에 출력하고, 음악을 몇 초 더 길게 재구성(우르두어 라인이 더 긺)한 후 vo_ur에 대해 조립하세요.
강건하고 지능적으로 만들기
- 자동 타임 (
build_video.py) 각 장면을 해당 음성 라인에 맞게 크기 조정하므로, 동일한 장면이 수동 오프셋 없이 영어와 우르두어 버전을 깔끔하게 렌더링합니다. - 명세 기반 (
make_scenes.py,make_thumbnail.py가 하나의 JSON을 읽음) 새 앱은 새 명세와 새로운 스크린샷만 있으면 되며, 새 코드가 필요하지 않습니다. - 각 단계 검증: 캡처는 눈으로 확인(올바른 기록, 모든 필드), 음악은
volumedetect(~-15 dB 평균 = 실제 믹스에 포함), 최종 렌더링은 지속 시간+레벨+프레임 확인(훅/카드/설명/CTA부터). - 정직하게 실패: edge-tts가 네트워크 차단된 경우, 장면+음악+타임코드 스크립트를 제공하고 음성만 차단된 부분으로 명명하세요. 음성, 데이터, 주장을 절대 위조하지 마세요.
참고 자료
- references/pipeline.md - 캡처, 장면, 음성 해설, 음악, 조립 상세.
- references/publishing.md - 네 채널, 커스텀 썸네일, AI 규칙, 계정/프로필, 플랫폼별 체크리스트, 초안 우선 게이트.
- references/gotchas.md - 시간을 소모한 모든 함정 (무음 음악, 마스킹된 음악, edge-tts Windows 수정,
/sdcard경로 망가짐, 카드 프레이밍 드리프트, 업로드 루트). - examples/ - 참조 명세와 영어/우르두어 음성 해설 라인; 스크린샷은 포함되지 않음.